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

4.2.4.2. Пакет «Элементы поведения»

Этот пакет является самостоятельной компонентой языка UML и, как следует из его названия, специфицирует динамику поведения в нотации UML. Пакет Элементы поведения состоит из четырех подпакетов: Общее поведение, Кооперации, Варианты использования и Автоматы (рисунок 4.2.7). Ниже дается краткая характеристика каждого из этих подпакетов.

Рисунок 4.2.7. Подпакеты пакета Элементы поведения языка UML.

Подпакет Общее поведение.

Подпакет Общее поведение определяет базовые понятия ядра для всех элементов поведения. В нем дана семантика для динамических элементов, включаемых в другие подпакеты элементов поведения. В Общее поведение входят такие элементы, как действие (Action), последовательность действий (ActionSequence), аргумент (Argument), связь атрибутов (AttributeLink), действие вызова (CallAction), действие создания (CreateAction), значение данных (DataValue), действие уничтожения (DestroyAction), исключение (Exception), сущность (Instance), связь (Link), объект (Object), сигнал (Signal).

Объект - важнейшее понятие этого подпакета Под объектом в UML понимают отдельный экземпляр или пример класса, структура и поведение которого полностью определены классом, порождающим объект. У всех объектов одного класса одинаковая структуру и поведение, хотя каждый из них имеет свое множество связей атрибутов, а каждая связь атрибута относится к некоторому экземпляру (обычно к значению данных). Это множество модифицируется по спецификации отдельного атрибута в описании класса.

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

Подпакет Кооперации.

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

В подпакет Кооперации входят элементы: роль конца ассоциации (AssociationEndRole), роль ассоциации (AssociationRole), роль классификатора (ClassifierRole), кооперация (Collaboration), взаимодействие (Interaction), сообщение (Message), и его элементы непосредственно используют в диаграммах кооперации.

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

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

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

В подпакет Варианты использования входят элементы: актер (Actor), расширение (Extension), точка расширения (ExtensionPoint), включение (Include), вариант использования (UseCase) и экземпляр варианта использования (UseCaselnstance).

Подпакет Автоматы.

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

В Автоматы входят: составное состояние (CompositeState), событие (Event), конечное состояние (FinalState), псевдосостояние (PseudoState), простое состояние (SimpleState), состояние (State), автомат (StateMachine), переход (Transition) и др.

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