Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

пр_ИС_Тем12-13

.pdf
Скачиваний:
10
Добавлен:
09.05.2015
Размер:
492.36 Кб
Скачать

ТЕМА 12 АВТОМАТИЗИРОВАННОЕ ПРОЕКТИРОВАНИЕ ИС (CASEТЕХНОЛОГИЯ) (продолжение)

12.5 Объектно-ориентированное проектирование ИС

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

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

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

Внастоящее время для объектно-ориентированного моделирования проблемной области широко используется унифицированный язык моделирования UML (Unified Modeling Language), который разработан группой ведущих компьютерных фирм мира OMG (Object Management Group)

ифактически является стандартом по объектно-ориентированным технологиям.

Язык UML реализован многими фирмами - производителями программного обеспечения в рамках CASE-технологий, например

Rational Rose (Rational),

Natural Engineering Workbench (Software AG), ARIS Toolset (IDS prof. Scheer) .

Система объектно-ориентированных моделей в соответствии с нотациями UML включает в себя следующие диаграммы:

1)диаграмму вариантов или вариантов использования (Use-case diagram), которая отображает функциональность ИС в виде совокупности выполняющихся последовательностей транзакций;

2)диаграмму классов объектов (Class diagram), которая отображает структуру совокупности взаимосвязанных классов объектов аналогично ER-диаграмме функционально-ориентированного подхода;

3)диаграммы состояний (Statechart diagram), каждая из которых отображает динамику состояний объектов одного класса и связанных с ними событий;

4)диаграммы взаимодействия объектов (Interaction diagram), каждая из которых отображает динамическое взаимодействие объектов в рамках одного варианта (варианта использования);

5)диаграммы деятельностей (Activity diagram), которые отображают потоки работ во взаимосвязанных вариантах (вариантах использования) (могут декомпозироваться на более детальные диаграммы);

6)диаграммы пакетов (Package diagram), которые отображают распределение объектов по функциональным или обеспечивающим подсистемам (могут декомпозироваться на более детальные диаграммы);

7)диаграмму компонентов (Component diagram), которая отображает физические модули программного кода;

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

1

12.5.1. Диаграмма вариантов использования (Use-case diagram)

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

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

Актер — это множество логически связанных ролей, исполняемых в вариантах использования.

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

Рис. 12.12. Диаграмма вариантов использования

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

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

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

Основной и альтернативный потоки событий в модели вариантов использования описываются в виде неформальных текстовых комментариев.

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

2

(uses). С другой стороны, некоторые варианты использования могут быть расширены деталями. В таком случае создается дополнительный вариант использования, с которым устанавливаются отношения расширения (extends). Пример применения такого рода отношений показан на рис. 12.13.

Рис. 12.13. Пример применения отношений использования и расширения

12.5.2. Диаграммы классов объектов (Class diagram)

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

Диаграмма классов — это диаграмма, на которой представлено множество классов, интерфейсов и отношений между ними.

Классы объектов могут иметь различные стереотипы поведения: объекты-сущности, управляющие объекты, интерфейсные объекты:

Интерфейсный объект (Interface Object) — это активный объект, форма взаимодействия информационной системы с пользователем (экранная форма, меню, командная строка, кнопка)

Управляющий объект (Control Object) — это активный объект, координирующий выполнение функций

Сущность (Entity Object) — это пассивный объект, над которым выполняются операции обработки процесса

Объекты, отражаемые в диаграмме классов объектов, связываются статическими отношениями, которые отражают постоянные связи между объектами независимо от выполнения конкретного бизнес-процесса. К статическим отношениям относятся обобщение, агрегация, ассоциация объектов:

3

Пример использования статических отношений представлен на рис.12.14.

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

Рис. 12.14.Фрагмент диаграммы классов объектов

12.5.3. Диаграммы состояний (Statechart diagram)

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

какие типичные состояния проходит объект;

какие события ведут к изменению состояния объекта;

какие действия объект выполняет, когда он получает сообщение об изменении состояния;

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

последовательностью состояний, через которое проходит объект на протяжении своего жизненного цикла.

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

4

Входная точка определяет событие, которое образует начальное состояние объекта. В точку входа нельзя перейти из состояния объекта.

Выходная точка определяет завершение существования объекта. Из точки выхода нет перехода состояния.

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

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

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

Переход состояний описывается следующими атрибутами.

Назначение - состояние объекта, в которое перейдет объект после перехода состояния. Вызов - имя события, которое вызывает переход состояний. Имена событий должны быть

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

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

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

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

Пример модели перехода состояний представлен на рис. 12.15.

5

Состояние приемного акта

Начало

Созданкладовшщикоипри получениитовара

do/ Создан в двух экземплярах

2-ойэкзпереданснабженцу

1-ыйэкзпереданбухгалтеру

У бухгалтера

У снабженца

Конец(1-ойэкз)

Конец(2 -ойэкз)

Рис. 12.15. Пример диаграммы состояний для объекта «приемный акт»

12.5.4. Диаграмма взаимодействия объектов (interaction diagram)

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

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

вформе диаграммы последовательностей (sequence diagram), показывающей последовательность взаимодействий на графе;

вформе кооперативной диаграммы (collaboration diagram), показывающей взаимодействие объектов в табличной форме.

Диаграмма последовательностей Диаграмма последовательностей — это диаграмма взаимодействия, на котором основной

акцент сделан на временном упорядочении сообщений.

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

6

Рис. 12.16. Диаграмма последовательностей для варианта «Регистрирует товар в картотеке»

Диаграмма кооперативного поведения Диаграмма кооперативного поведения — это диаграмма взаимодействий, в которой

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

Диаграмма кооперативного поведения представляется в табличном виде по следующим правилам.

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

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

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

Пример кооперативной диаграммы представлен на рис. 12.17.

7

Рис. 12.17 Диаграмма кооперативного поведения для основного потока событий варианта использования ««Регистрирует товар в картотеке»»

12.5.5. Диаграмма деятельностей (Activity diagram)

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

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

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

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

Основные элементы Деятельность Поток

8

Решение

Выход Вспомогательные элементы Разделение потока Синхронизация Итерация

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

Пример диаграммы деятельностей представлен на рис. 12.18.

9

Документы

Действия

Подразделения

Сотрудники

Заявление отдела

Технология покупки товара

 

 

снабжения о

Начало

 

 

возможности

 

 

 

получения товара (вх)

 

 

 

 

Выписать

Бухгалтерия

Бухгалтер

 

доверенность

Доверенность на

 

 

 

товар (вх)

 

 

 

Доверенность на

Едет к

Склад

Снабженец

товар (вых)

продавцу

 

 

 

Доверенность на

Получает

 

 

товар (вых)

 

 

товар

Организация

Снабженец

 

Накладная (вх)

 

продавца

 

 

 

 

Счет-фактура

 

 

 

(вх)

Привозит товар

Склад

 

 

Кладовщик

 

на склад

Накладня (вх)

Действия кладовщика

 

 

 

 

 

 

при несовпадении ...

 

 

Счет-фактура

 

 

 

(вх)

Нет

 

 

 

Совпадает по

 

 

 

количеству и качеству

 

 

Накладная (вх)

 

 

 

 

Да

 

 

Приемный акт

 

 

 

(вых)

Выписывает приемный

 

 

 

акт в двух экземплярах

Склад

Кладовщик

Накладная (вх)

 

 

 

Карточка товара

Регистрирует товар

Склад

Кладовщик

в картотеке

(вых)

 

 

 

Приемный акт

Передает один экз приемного

 

 

(вых)

Склад

Снабженец

акта снабженцу

 

 

 

Приемный акт

Передает второй экз приемного

Склад

Кладовщик

(вых)

акта в бухгалтнрию

Приемный акт

Получает

 

 

(вых)

Бухгалтерия

Бухгалтер

приемный акт

 

 

 

 

Конец

 

 

Рис. 12.18. Диаграмма деятельностей процесса покупки товара

10