Диаграммы последовательности. Отличие от диаграмм кооперации.

Июль 26, 2011

Если перефразировать пословицу — моя дача – моя крепость. Дачные участки незаменимы если вы живете в мегаполисе. Провести выходные на даче – одно удовольствие, свежий воздух, свои овощи – наслаждение. А в гамаке поваляться – ммммм…

_____________________________________________

Продолжаем курс по CASE средствам, а точнее по языку нотаций UML. Рассмотрим следующие виды диаграмм:

Диаграммы последовательности — один из двух типов диаграмм взаимодействия. Представляет динамику взаимодействия объектов во времени. Иллюстрирует выполнение каждого сценария варианта использования. По оси Х размещаются взаимодействующие объекты (прямоугольник на вершине вертикальной пунктирной линии), по оси Y — сообщения, передаваемые от объекта к объекту во времени. Вертикальная пунктирная линия — линия жизни объекта-ЖЦ объекта в процессе взаимодействия. Сообщение -стрелка м/у линиями жизни двух объектов.

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

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

Управляющая информация может быть представлена в виде условия : [условие]имя сообщения(). Сообщения могут быть нескольких типов:

1. простые -> выполняются в одном потоке;

2. синхронные -х-> клиент имеет сообщение и ждет ответа пользователя;

3. асинхронные — половина стрелки на конце — такое сообщение не блокирует вызывающий объект, клиент шлет сообщение серверу и продолжает дальше работу;

возможны рекурсивные вызовы — сообщения, которые объект посылает сам себе (стрелка указывает на те же самую линию жизни). Удаление объекта изображается большой буквой Х.

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