Скачать презентацию Информационные технологии n Диаграммы последовательности Sequence diagram Скачать презентацию Информационные технологии n Диаграммы последовательности Sequence diagram

12.ИТ-Sequence.ppt

  • Количество слайдов: 33

Информационные технологии n Диаграммы последовательности (Sequence diagram) Информационные технологии n Диаграммы последовательности (Sequence diagram)

Определение Диаграммы взаимодействия (interaction diagrams) n Диаграмма последовательности (sequence diagram) n Диаграмма кооперации (collaboration Определение Диаграммы взаимодействия (interaction diagrams) n Диаграмма последовательности (sequence diagram) n Диаграмма кооперации (collaboration diagram)

Определение n Диаграмма последовательности – диаграмма, на которой показаны взаимодействия объектов, упорядоченные по времени Определение n Диаграмма последовательности – диаграмма, на которой показаны взаимодействия объектов, упорядоченные по времени их проявления

Семантическая эквивалентность Диаграмма последовательности и кооперации Семантическая эквивалентность Диаграмма последовательности и кооперации

Определение Указывает взаимодействие между объектами в двух измерениях n линия жизни n крайний слева Определение Указывает взаимодействие между объектами в двух измерениях n линия жизни n крайний слева объект инициатор (как правило актер) n взаимодействия между объектами – сообщения

Линия жизни n Линия жизни (object lifeline) существует для обозначения времени, в течении которого Линия жизни n Линия жизни (object lifeline) существует для обозначения времени, в течении которого объект существует в системе

Фокус управления n Фокус управления (focus of control) – указывает период времени, в течение Фокус управления n Фокус управления (focus of control) – указывает период времени, в течение которого объект выполняет некоторое действие, находясь в активном состоянии

Линия жизни Линия жизни

Рефлексивные сообщения n Рефлексивные сообщения – это сообщения, которые посылает объект сам себе (нажатия Рефлексивные сообщения n Рефлексивные сообщения – это сообщения, которые посылает объект сам себе (нажатия клавиш клавиатуры и т. д. )

Рефлексивные сообщения Если в результате рефлексивного сообщения создается новый подпроцесс или нить управления, то Рефлексивные сообщения Если в результате рефлексивного сообщения создается новый подпроцесс или нить управления, то говорят о рекурсивном или вложенном фокусе управления

Рефлексивные сообщения Рефлексивные сообщения

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

Сообщения n Иногда отправителя сообщения называют клиентом, а получателя - сервером Сообщения n Иногда отправителя сообщения называют клиентом, а получателя - сервером

Сообщения n n Вызов процедуры или другого вложенного потока управления. Простой поток управления Асинхронного Сообщения n n Вызов процедуры или другого вложенного потока управления. Простой поток управления Асинхронного потока управления. Возврат из вызова процедуры.

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

Асинхронное сообщение n Клиент передает асинхронное сообщение и продолжает выполнять свою деятельность, не ожидая Асинхронное сообщение n Клиент передает асинхронное сообщение и продолжает выполнять свою деятельность, не ожидая ответа от сервера

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

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

Стереотипы сообщений n n n «call» (вызвать) – сообщение, требующее вызова операции или процедуры Стереотипы сообщений n n n «call» (вызвать) – сообщение, требующее вызова операции или процедуры объекта-получателя. Если сообщение с этим стереотипом рефлексивное, то оно инициирует локальный вызов операции у пославшего это сообщение объекта. «return» (возвратить) – сообщение, возвращающее значение выполненной операции или процедуры вызвавшему ее объекту. Значение результата может инициировать ветвление потока управления. «create» (создать) – сообщение, требующее создания другого объекта для выполнения определенных действий. Созданный объект может стать активным (ему передается поток управления), а может остаться пассивным.

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

Ветвление потока управления n время передачи сообщения достаточно мало по сравнению с процессами выполнения Ветвление потока управления n время передачи сообщения достаточно мало по сравнению с процессами выполнения действий объектами

Ветвление потока управления n Предложение-условие должно быть явно указано для каждой ветви Ветвление потока управления n Предложение-условие должно быть явно указано для каждой ветви

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

Ветвление потока управления Ветвление потока управления

Временные ограничения n n Определяют явно условия их передачи или приема (например: время, в Временные ограничения n n Определяют явно условия их передачи или приема (например: время, в течении которого допускается передача сообщений) Пример: {время_ожидания_ответа < 5 сек. }

Временные ограничения могут записываться рядом с началом стрелки соответствующего сообщения или слева от этой Временные ограничения могут записываться рядом с началом стрелки соответствующего сообщения или слева от этой стрелки на одном уровне с ней Чаще используется для синхронных сообщений

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

Пример Пример

Пример Пример

Пример Пример

Рекомендации по построению Хорошо структурированная диаграмма взаимодействий обладает следующими свойствами: § акцентирует внимание только Рекомендации по построению Хорошо структурированная диаграмма взаимодействий обладает следующими свойствами: § акцентирует внимание только на одном аспекте динамики системы; § содержит только такие прецеденты и актеры, которые важны для понимания этого аспекта; § содержит только такие детали, которые соответствуют данному уровню абстракции, и только те дополнения, которые необходимы для понимания системы; § не настолько лаконична, чтобы ввести читателя в заблуждение относительно важных аспектов семантики.

Рекомендации по построению При изображении диаграммы взаимодействий следует пользоваться нижеприведенными рекомендациями: § дайте ей Рекомендации по построению При изображении диаграммы взаимодействий следует пользоваться нижеприведенными рекомендациями: § дайте ей имя, соответствующее ее назначению; § используйте диаграмму последовательностей, если хотите подчеркнуть временную упорядоченность сообщений, и диаграмму кооперации - если хотите подчеркнуть структурную организацию участвующих во взаимодействии объектов; § расположите элементы так, чтобы свести к минимуму число пересечений;

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