Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LAB_6_UML_СОСТОЯНИЯ.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
150.02 Кб
Скачать

Дополнение к общей картине

Теперь в общую картину UML можно добавить "поведенческие элементы". На рис. 11 представлена общая картина UML с добавленными к ней элементами диа­граммы состояний.

Рис. 11. Общая картина UML теперь включает поведенческий элемент — диаграмму состояний

6. Резюме

Объекты в системе изменяют свое состояние с течением времени и в ответ на со­бытия. Эти изменения отражает диаграмма состояний UML. На ней изображаются переходы между состояниями одного объекта. Состояние графически представляется прямоугольником с округленными углами, а переход из одного состояния в другое изображается линией со стрелкой.

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

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

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

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

Вопросы и ответы

С чего начинать построение диаграмм состояний?

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

Нужно ли каждую диаграмму состояний завершать конечным состоянием ("глазком")?

Нет. Объект, который никогда "не выключается", не имеет такого состояния.

Существуют ли какие-нибудь рекомендации по построению диаграммы состояний?

Старайтесь располагать состояния и переходы таким образом, чтобы минимизиро­вать пересечение линий. Одной из задач такой диаграммы (и любой другой) является прояснение и структурирование известной информации. Если разработчики не в со­стоянии понять построенную модель, они не будут ее использовать, и все усилия окажутся напрасными.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]