Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
3
Добавлен:
20.04.2023
Размер:
5.57 Mб
Скачать

возможностью сборки программной системы из готовых компонентов, которые можно использовать повторно;

возможностью накопления проектных решений в виде библиотек классов на основе механизмов наследования;

простотой внесения изменений в проекты за счет инкапсуляции данных в объектах;

быстрой адаптацией приложений к изменяющимся условиям за счет использования свойств наследования и полиформизма;

возможностью организации параллельной работы аналитиков, проектировщиков и программистов.

Рассмотренные ранее концепции объектно-ориентированного подхода и распределенных вычислений стали базой для создания консорциума Object Management Group (OMG), членами которой являются более 500 ведущих компьютерных компаний (Sun, DEC, IBM, HP, Motorola и

др.). Основным направлением деятельности консорциума является разработка спецификаций и стандартов для создания распределенных объектных систем в разнородных средах. Базисом стали спецификации под названием Object Management Architecture (ОМА).

ОМА состоит из четырех основных компонентов, представляющих спецификации различных уровней поддержки приложений рисунок 26:

Рисунок 26 – Спецификация OMA

архитектура брокера запросов объектов (CORBA — Common Object Request Broker Architecture) определяет механизмы взаимодействия объектов в разнородной сети;

объектные сервисы (Object Services) являются основными системными сервисами,

используемыми разработчиками для создания приложений;

универсальные средства (Common Facilities) являются высокоуровневыми системными сервисами, ориентированными на поддержку пользовательских приложений (электронная почта, средства печати и др.);

прикладные объекты (Application Object) предназначены для решения конкретных прикладных задач.

Исходя из основных положений объектно-ориентированного подхода рассмотрим концепцию идеального объектно-ориентированного CASE-средства.

Существует несколько объектно-ориентированных методов, авторами наиболее распространенных из них являются Г Буч, Д Рамбо, И Джекобсон. В настоящее время наблюдается процесс сближения объектно-ориентированных методов. В частности, указанные выше авторы создали и выпустили несколько версий унифицированного метода UML (Unified Modeling Language — унифицированный язык моделирования).

Классическая постановка задачи разработки программной системы (инжиниринг)

представляет собой спиральный цикл итеративного чередования этапов объектно-

ориентированного анализа, проектирования и реализации (программирования).

В реальной практике в большинстве случаев имеется предыстория в виде совокупности разработанных и внедренных программ, которые целесообразно использовать при разработке новой системы Процесс проектирования в таком случае основан на реинжиниринге программных кодов, при котором путем анализа текстов программ восстанавливается исходная модель программ ной системы.

Современные CASE-средства поддерживают процессы инжиниринга и автоматизированного реинжиниринга.

Идеальное объектно-ориентированное CASE-средство должно содержать четыре основных блока: анализ, проектирование, разработка и инфраструктура рисунок 27.

Рисунок 27 - Идеальное объектно-ориентированное CASE-средство

Основные требования к блоку анализа:

• возможность выбора выводимой на экран информации из всей совокупности данных,

описывающих модели;

согласованность диаграмм при хранении их в репозитарии;

внесение комментариев в диаграммы и соответствующую документацию для фиксации проектных решений;

возможность динамического моделирования в терминах со бытии;

поддержка нескольких нотаций (хотя бы три нотации - Г Буча, И Джекобсона и ОМТ)

Основные требования к блоку проектирования:

поддержка всего процесса проектирования приложения;

возможность работы с библиотеками, средствами поиска и выбора;

возможность разработки пользовательского интерфейса;

поддержка стандартов OLE, ActiveX и доступ к библиотекам HTML или Java;

поддержка разработки распределенных или двух- и трехзвенных клиент-серверных систем (работа с CORBA, DCOM, Internet).

Основные требования к блоку реализации.

генерация кода полностью из диаграмм;

возможность доработки приложений в клиент-серверных CASE-средствах типа Power

Builder;

реинжиниринг кодов и внесение соответствующих изменений в модель системы;

наличие средств контроля, которые позволяют выявлять несоответствие между диаграммами и генерируемыми кодами и обнаруживать ошибки как на стадии проектирования, так и на стадии реализации

Основные требования к блоку инфраструктур:

наличие репозитория на основе базы данных, отвечающего за генерацию кода, реинжиниринг, отображение кода на диаграммах, а также обеспечивающего соответствие между моделями и программными кодами,

обеспечение командной работы (многопользовательской работы и управление версиями) и реинжиниринга.

В таблице 3 приведен обзор наиболее распространенных объектно-ориентированных

CASE средств.

Таблица № 3

N

Продукт, фирма

Поддержив

Используем

Генера

Описание

п/п

разработчик

аемые

ые коды

ция

 

 

 

платформы

 

кода

 

 

 

 

 

 

 

1

BridgcPoint

Unix, SIG

Шлеер/

C/C++

Поддержка полного жизненного

 

(версия 3.2.1),

Irix

Меллор

 

цикла в рамках методики «Шлеер/

 

Project Tehnology

 

 

 

Меллор», генерация кода

 

 

 

 

 

 

2

Grapical Designer

Unix,Windo

Г. Буч, И.

C/C++

Генерация кода и реинжиниринг

 

(версия 2.0),

ws

Джекобсон,

 

для каждого из поддерживаемых

 

Advanced Software

 

ОМТ, Шлеер/

 

языков и методологий. Командная

 

Technologies

 

Мсллор,

 

работа Возможность создания

 

 

 

UML.08 и

 

собственной нотации

 

 

 

структурная

 

 

 

 

 

 

 

 

3

LifeModcl for ООО

Unix,

Мартин/

С

Средство является верхним

 

IE (версия 1),

Windows

Оделл (OOIE)

 

уровнем фирменного продукта

 

InteliCorp

NT

 

 

искусственного интеллекта Карра.

 

 

 

 

 

Прототипирование В режиме

 

 

 

 

 

интерпретатора, генерация кода,

 

 

 

 

 

создание экранов и т.д.

 

 

 

 

 

Возможность программирования на

 

 

 

 

 

С или на внутреннем scriptязыке

 

 

 

 

 

типа Prolog

 

 

 

 

 

 

N

Продукт, фирма

Поддержив

Используем

Генера

Описание

п/п

разработчик

аемые

ые коды

ция

 

 

 

платформы

 

кода

 

 

 

 

 

 

 

4

ObjectTimc,

Unix

ROOM

C++

Создание и визуализация

 

ObjectTimc Ltd

 

 

 

исполняемых моделей систем

 

 

 

 

 

реального времени на основе ОО-

 

 

 

 

 

метолологии реального времени

 

 

 

 

 

(ROOM). Внутренний script язык —

 

 

 

 

 

подмножество «Smalltalk*

5

Object ory (версия

Unix, OS/2,

И. Джскоб-

C++,

Два варианта: Analysis Workbench

 

3 7). Rational

DOS5,

сон

Small

для ОО-ана- лиза и Design

 

Software

Windows

 

talk

Workbench для проектирования.

 

 

 

 

 

Связь с VisualWorks и C++

 

 

 

 

 

Softbench. BPR на основе метода

 

 

 

 

 

Джекобсона. Так как Objcctory

 

 

 

 

 

перешло к Rational, то неизвестно,

 

 

 

 

 

как долго еще продута будет

 

 

 

 

 

поддерживаться

 

 

 

 

 

 

6

ObjectPartner

Unix

ОМТ

C++

Распространяет Verelog, а также

 

(версия 2 0),

 

 

 

Logiscope и Object - Geode

 

Verilog

 

 

 

 

7

ObjectTea mEntc r-

Unix

ОМТ

C++

Cayenne объединяет Cadre и

 

prise (версия 1)

 

 

 

Bachman technology Пользователям

 

Cayenne Software

 

 

 

Object Team (метод Шлеер/Меллор)

 

 

 

 

 

преллагается обратиться к

 

 

 

 

 

продуктам BridgePoint

 

 

 

 

 

 

8

Object Maker

Unix,

15 нотаций, в

Ada 83.

Общий репозиторий в сети,

 

(версия 4 2, 1995)

Windows

частности: Г

’95,

командная работа. Есть локальный

 

Mark V

 

Буч,

C/C++.

продукт Object Maker Consulant

 

 

 

ОМТ, Шле-

Smalltal

 

 

 

 

ер/Мсллор,

k

 

 

 

 

Код/Йор дон

 

 

 

 

 

и др.

 

 

 

 

 

 

 

 

9

Paradigm Plus

Unix, OS/2,

8 нотаций, в

Ada.

Генерация SQL, ОО и реляционные

 

(версия 3 0)

Windows

частности.

C/C++,

БД. Реинжиниринг для Forte.

 

Platinum

 

Г. Буч,

Smalltal

PowerBuilder, VisualWorks. Visual

 

Technology

 

ОМТ, Шле

k.

Smalltalk Enterprise. VisualAge,

 

(formerly Protosofi)

 

ер/Меллор,

Java

Object Pro ObjectStore. OO DВ в

 

 

 

Fusion и т.д.

 

качестве репозитория

 

 

 

 

 

 

10

Piech (версия 4.0),

Windows,

Мартин/Одел

C++,

Интегрирован с Object Store,

 

Ptech Inc

Unix

л (OOIЕ)

Forte

Objectivity, ONTOS. Генерация кода

 

 

 

 

2.0

для библиотека классов Tools h++,

 

 

 

 

 

USL

 

 

 

 

 

 

11

Rational Rose

Windows,

Г Буч, ОМТ

Ada,C+

Конвертация Буч/ОМТ Поддержка

 

(версия 3.0),

UNIX

 

+,Small

Java. COBRA Реинжиниринг кода

 

Rational Software

(Solaris, HP

 

talk,

из Forte SQLWindows. Power

 

 

UX, AIX)

 

Visual

Builder и ОО - языков Объявлено о

 

 

 

 

Basic,Ja

выпуске нового средства работы с

 

 

 

 

va,

COBRA

 

 

 

 

Forte

 

 

 

 

 

 

 

N

Продукт, фирма

Поддержив

Используем

Генера

Описание

п/п

разработчик

аемые

ые коды

ция

 

 

 

платформы

 

кода

 

 

 

 

 

 

 

12

System Architect

Windows

Г. Буч, ОМТ,

C++,

Поддержка структурных

 

Object (версия 3

 

Шлеер/

Smalltal

методологий. BPR на основе IDEF

 

1), Popkin Software

 

Меллор.

k, Java

диаграмм Связь с PowerBuilder

 

and System

 

Код/Йордон,

 

 

 

 

 

CRC. И

 

 

 

 

 

Джекобсон

 

 

 

 

 

 

 

 

13

Software through

Unix

ОМТ или Г.

C++,

Есть продукты для структурных

 

Pictures/OMT and

 

Буч, И

Smalltal

методологий. CASE для BPR Под-

 

BUCH (версия

 

Джекобсон

k, Java

держка, Java, HTML. Netscape

 

3.2), Interactive

 

 

и

Navigator, COBRA, связь Net Links

 

Development

 

 

OMGI

Orbitaze, SNiFF+. Реинжиниринг

 

Environments

 

 

DL

 

 

 

 

 

 

 

14

SES/Objectbench

Unix

ООА

C/C++

Объектно-ориентированный анализ

 

(версия 2 2),

 

 

 

 

 

Scientific and

 

 

 

 

 

Engineering

 

 

 

 

 

Software

 

 

 

 

 

 

 

 

 

 

15

Togcther/C+ + ,

Windows

Код/Йордон

C+ +

Версия для командной работы,

 

Object

 

 

 

работающая и под W'indows

 

International

 

 

 

 

 

 

 

 

 

 

Сравнительный анализ CASE-систем показывает, что на сегодняшний день одним из наиболее приближенных к идеальному варианту CASE-средств является семейство Rational Rose фирмы Rational Software Corporation. Следует отметить, что именно здесь работают авторы унифицированного языка моделирования Г Буч, Д Рамбо и И. Джекобсон, под руководством которых ведется разработка нового СASЕ-средства поддерживающего UML.

Выделим основные критерии оценки и выбора CASE-средств. 1 Функциональные характеристики:

среда функционирования проектная среда, программное обеспечение/технические средства, технологическая среда;

функции, ориентированные на фазы жизненного цикла: моделирование, реализация,

тестирование;

• общие функции - документирование, управление конфигурацией, управление проектом;

2Надежность;

3Простота использования;

4Эффективность;

5Сопровождаемость;

6Переносимость;

7Общие критерии (стоимость, затраты, эффект внедрения, характеристики поставщика)

Данные критерии подробно изложены в стандартах IEEE Std 1348—1995. IEEE recommended Practice for the Adoption of Computer — Aided Software Engineering (CASE) Tools и IEEE Std 1209—1992 Recommended Practice for the Evaluation and Selection of CASE Tools.

Телекоммуникационные технологии

По мере эволюции вычислительных систем сформировались следующие разновидности архитектуры компьютерных сетей:

одноранговая архитектура;

классическая архитектура «клиент—сервер»;

архитектура «клиентсервер» на основе Web-технологии.

При одноранговой архитектуре (рисунок 28) все ресурсы вычислительной системы,

включая информацию, сконцентрированы в центральной ЭВМ, называемой еще мэйнфреймом

(main frame — центральный блок ЭВМ). В качестве основных средств доступа к информационным ресурсам использовались однотипные алфавитно-цифровые терминалы,

соединяемые с центральной ЭВМ кабелем. При этом не требовалось никаких специальных действий со стороны пользователя по настройке и конфигурированию программного обеспечения.

Рисунок 28 - Одноранговая архитектура компьютерных сетей

Явные недостатки, свойственные одноранговой архитектуре и развитие инструментальных средств привели к появлению вычислительных систем с архитектурой

«клиент—сервер». Особенность данного класса систем состоит в децентрализации архитектуры автономных вычислительных систем и их объединении в глобальные компьютерные сети.

Создание данного класса систем связано с появлением персональных компьютеров, взявших на себя часть функций центральных ЭВМ. В результате появилась возможность создания глобальных и локальных вычислительных сетей, объединяющих персональные компьютеры

(клиенты или рабочие станции), использующие ресурсы, и компьютеры (серверы),

предоставляющие те или иные ресурсы для общего использования. На рисунке 29 представлена типовая архитектура «клиент—сервер», однако различают несколько моделей, отличающихся распределением компонентов программного обеспечения между компьютерами сети.

Рисунок 29 - Типовая архитектура «клиент—сервер'

Любое программное приложение можно представить в виде структуры из трех компонентов:

компонент представления, реализующий интерфейс с пользователем;

прикладной компонент, обеспечивающий выполнение прикладных функций;

компонент доступа к информационным ресурсам, или менеджер ресурсов,

выполняющий накопление информации и управление данными.

На основе распределения перечисленных компонентов между рабочей станцией и сервером сети выделяют следующие модели архитектуры «клиент—сервер»:

модель доступа к удаленным данным;

модель сервера управления данными;

модель комплексного сервера;

трехзвенная архитектура «клиент—сервер».

Модель доступа к удаленным данным (рисунок 30) при которой на сервере расположены только данные, имеет следующие особенности:

Рисунок 30 - Модель доступа к удаленным данным

невысокая производительность, так как вся информация обрабатывается на рабочих станциях;

снижение общей скорости обмена при передаче больших объемов информации для обработки с сервера на рабочие станции.

При использовании модели сервера управления данными (рисунок 31) кроме самой

информации на сервере располагается менеджер информационных ресурсов (например, система

управления базами данных) Компонент представления и прикладной компонент совмещены и выполняются на компьютере-клиенте, который поддерживает как функции ввода и отображения данных, так и чисто прикладные функции Доступ к информационным ресурсам обеспечивается либо операторами специального языка (например, SQL в случае использования базы данных), либо вызовами функции специализированных программных библиотек. Запросы к информационным ресурсам направляются по сети менеджеру ресурсов (например, серверу базы данных), который обрабатывает запросы и возвращает клиенту блоки данных.

Рисунок 31 - Модель сервера управления данными

Наиболее существенные особенности данной модели:

уменьшение объемов информации, передаваемых по сети, так как выборка необходимых информационных элементов осуществляется на сервере, а не на рабочих станциях;

унификация и широкий выбор средств создания приложений;

отсутствие четкого разграничения между компонентом представления и прикладным компонентом, что затрудняет совершенствование вычислительной системы.

Модель сервера управления данными целесообразно использовать в случае обработки умеренных, не увеличивающихся со временем объемов информации. При этом сложность прикладного компонента должна быть невысокой.

Модель комплексного сервера (рисунок 32) строится в предположении, что процесс,

выполняемый на компьютере-клиенте, ограничивается функциями представления, а собственно прикладные функции и функции доступа к данным выполняются сервером.

Рисунок 32 - Модель комплексного сервера

Преимущества модели комплексного сервера:

высокая производительность,

централизованное администрирование;

экономия ресурсов сети.

Модель комплексного сервера является оптимальной для крупных сетей,

ориентированных на обработку больших и увеличивающихся со временем объемов информации.

Архитектура «клиент—сервер», при которой прикладной компонент расположен на рабочей станции вместе с компонентом представления (модели доступа к удаленным данным и сервера управления данными) или на сервере вместе с менеджером ресурсов и данными

(модель комплексного сервера), называют двухзвенной архитектурой.

При существенном усложнении и увеличении ресурсоемкости прикладного компонента для него может быть выделен отдельный сервер, называемый сервером приложений. В этом случае говорят о трехзвенной архитектуре «клиент—сервер» (рисунок 34).

Рисунок 34 - Трехзвенная архитектура «клиент—сервер»

Первое звено — компьютер—клиент, второе — сервер приложений, третье — сервер управления данными. В рамках сервера приложений могут быть реализованы несколько прикладных функций, каждая из которых оформляется как отдельная служба, предоставляющая некоторые услуги всем программам. Серверов приложения может быть несколько, каждый из них ориентирован на предоставление некоторого набора услуг.

Наиболее ярко современные тенденции телекоммуникационных технологий проявились в Интернете. Архитектура «клиент—сервер», основанная на Web-технологии представлена на рисунке 35.

Соседние файлы в папке из электронной библиотеки