Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие 3000259.doc
Скачиваний:
27
Добавлен:
30.04.2022
Размер:
1.27 Mб
Скачать

4.5.4. Объектно-ориентированные модели

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

Общая характеристика UML. UML представляет собой единый язык моделирования, предназначенный для спецификации, визуализации, конструирования и документирования материалов программных систем, а также для моделирования бизнеса и других непрограммных систем. В основу создания UML положены три наиболее распространенные модели:

- Booch, получившая название по фамилии автора Гради Буча (Grady Booch);

- ОМТ (Object Modeling Technique – метод моделирования объектов);

- OOSE (Object-Oriented Software Engineering – объектно-ориентированное проектирование программного обеспечения).

UML можно определить так же, как промышленный объектно-ориентированный стандарт моделирования. Он включает в себя в унифицированном виде лучшие методы визуального (графического) моделирования. В настоящее время имеется целый ряд инструментальных средств, производители которых заявляют о поддержке UML, среди них можно выделить: Rational Rose, Select Enterprise, Platinum, Visual Modeler.

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

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

Диаграммы прецедентов использования описывают функциональность ИС, видимую пользователями системы. Каждая функциональность изображается в виде прецедентов использования. Прецедент – это типичное взаимодействие пользователя с системой, которое выполняет следующее: описывает видимую пользователем функцию; представляет различные уровни детализации; обеспечивает достижение конкретной цели.

Прецедент изображается как овал, связанный с типичными пользователями, называемыми «актерами» (actors). Актером является любая сущность, взаимодействующая с системой извне, например человек, оборудование, другая система. Прецедент описывает, что система предоставляет актеру – определяет набор транзакций, выполняемый актером при диалоге с информационной системой. На диаграмме изображается один актер, но пользователей, выступающих в роли актера, может быть много. Диаграмма прецедентов использования имеет высокий уровень абстракции и позволяет определить функциональные требования к ИС.

Диаграммы классов описывают статическую структуру классов. В состав диаграмм классов входят следующие элементы: классы, объекты и отношения между ними. Класс представляется прямоугольником, включающим три раздела: имя класса, атрибуты и операции. Аналогичное обозначение применяется и для объектов, но к имени класса добавляется имя объекта и вся надпись подчеркивается.

Диаграммы состояний описывают поведение объекта во времени, моделируют все возможные изменения в состоянии объекта, вызванные внешними воздействиями со стороны других объектов или извне. Этот тип диаграмм описывает изменение состояния одного класса или объекта. Каждое состояние объекта представляется в виде прямоугольника с закругленными углами, содержащего имя состояния и, возможно, значение атрибутов объекта в данный момент времени. Переход осуществляется при наступлении некоторого события (например, получения объектом сообщения или приема сигнала) и изображается в виде стрелки, соединяющей два соседних сообщения. Имя события указывается на переходе. На переходе могут указываться также действия, производимые объектом в ответ на внешние события.

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

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

Диаграммы сотрудничества описывают взаимодействие объектов системы, выполняемого ими для получения некоторого результата. Под получением результата подразумевается выполнение законченного действия.

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

Диаграмма компонентов служит для определения архитектуры разрабатываемой системы путем установления зависимости между программными компонентами: исходным, бинарным и/или исполняемым кодом.

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

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

Пример диаграммы прецедентов использования приведен на рис. 4.17.

На диаграмме приведен ряд выделенных при анализе и реализуемых информационной системой функций: администрирование пользователей; учет книг; составление отчетов и поиск издания.

Пользователь

Администрирование пользователей Поиск книги

Составление Учет книг

отчета

Администратор

Рис. 4.17. Диаграмма прецедентов использования