Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
К госам 2.doc
Скачиваний:
114
Добавлен:
17.03.2016
Размер:
2.67 Mб
Скачать

20. Диаграммы взаимодействия. Диаграмма состояний (переходов)

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

Диаграммой последовательностей (Sequence diagram) называется диаграмма взаимодействия, на которой изображаются участвующие во взаимодействии объекты и последовательность сообщений, которыми они обмениваются. Одно из основных назначений данной диаграммы – отобразить последовательность действий для части или целого варианта использования (use case). На диаграмме последовательности объект изображается в виде прямоугольника на вершине пунктирной вертикальной линии. Эта линия называется "линией жизни" (life line) объекта. Сообщения появляются в том порядке, как они показаны на стрелке - сверху вниз.

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

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

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

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

На переходе указывается имя события. Обозначения - в таблице.