Диаграмма последовательности

Содержание

Слайд 2

Слайд 3

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

Диаграмма последовательности

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

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

Диаграмма последовательности Диаграмма последовательности — показывает взаимодействие объектов (обмен между ними

Диаграмма последовательности

Диаграмма последовательности — показывает взаимодействие объектов (обмен между ними сигналами

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

Диаграмма последовательности Линия жизни показывает время, в течение которого объект существует

Диаграмма последовательности
Линия жизни показывает время, в течение которого объект существует в

Системе.
Периоды активности объекта в момент взаимодействия показываются с помощью фокуса управления.
Временная шкала на диаграмме направлена сверху вниз.
Слайд 6

Нотации UML Actor – экземпляр участника процесса Boundary – Класс-Разграничитель -

Нотации UML

Actor – экземпляр участника процесса
Boundary – Класс-Разграничитель -  используется для

классов, отделяющих внутреннюю структуру системы от внешней среды (экранная форма, пользовательский интерфейс, устройство ввода-вывода)
Control – Класс-контроллер - активный элемент, который используется для выполнения некоторых операций над объектами (программный компонент, модуль, обработчик)
Entity – Класс-сущность - обычно применяется для обозначения классов, которые хранят некую информацию о бизнес-объектах (соответствует таблице или элементу БД)
Слайд 7

Сообщения на диаграмме последовательности На диаграмме деятельности выделяются сообщения, инициирующие ту

Сообщения на диаграмме последовательности

На диаграмме деятельности выделяются сообщения, инициирующие ту или

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

Виды сообщений Синхронное сообщение (synchCall) - соответствует синхронному вызову операции и

Виды сообщений

Синхронное сообщение (synchCall) - соответствует синхронному вызову операции и подразумевает

ожидание ответа от объекта получателя. Пока ответ не поступит, никаких действий в Системе не производится.
Асинхронное сообщение (asynchCall) - которое соответствует асинхронному вызову операции и подразумевает, что объект может продолжать работу, не ожидая ответа.
Ответное сообщение (reply) – ответное сообщение от вызванного метода. Данный вид сообщения показывается на диаграмме по мере необходимости или, когда возвращаемые им данные несут смысловую нагрузку.   
Потерянное сообщение (lost) – сообщение, не имеющее адресата сообщения, т.е. для него существует событие передачи и отсутствует событие приема.
Найденное сообщение (found) – сообщение, не имеющее инициатора сообщения, т.е. для него  существует событие приема и отсутствует событие передачи
Слайд 9

Для сообщений также доступен ряд предопределенных стереотипов. Сообщение со стереотипом create,

Для сообщений также доступен ряд предопределенных стереотипов.
Сообщение со стереотипом create,

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

При отображении работы с сообщениями можно указать следующие временные параметры: ограничение

При отображении работы с сообщениями можно указать следующие временные параметры:
ограничение продолжительности

(Duration Constraint) – минимальное и максимальное значение продолжительности передачи сообщения
ограничение продолжительности ожидания между передачей и получением сообщения (Duration Constraint Between Messages)
перехват продолжительности сообщения (Duration Observation)
временное ограничение (Timing Constraint) – временной интервал, в течение которого сообщение должно прийти к цели (устанавливается на стороне получателя)
перехват времени, когда сообщение было отправлено (Timing Observation)
Слайд 11

Отдельные фрагменты диаграммы взаимодействия можно выделить с помощью фрейма. Фрейм должен

Отдельные фрагменты диаграммы взаимодействия можно выделить с помощью фрейма.
Фрейм должен

содержать метку оператора взаимодействия. UML содержит следующие операнды:
Alt -  Несколько альтернативных фрагментов (alternative); выполняется только тот фрагмент, условие которого истинно
Opt - Необязательный (optional) фрагмент; выполняется, только если условие истинно. Эквивалентно alt с одной веткой
Par - Параллельный (parallel); все фрагменты выполняются параллельно
loop - Цикл (loop); фрагмент может выполняться несколько раз
region - Критическая область (critical region); фрагмент может иметь только один поток, выполняющийся за один прием
Neg - Отрицательный (negative) фрагмент; обозначает неверное взаимодействие
ref - Ссылка (reference); ссылается на взаимодействие, определенное на другой диаграмме.
Sd - Диаграмма последовательности (sequence diagram); используется для очерчивания всей диаграммы последовательности, если это необходимо.
Слайд 12

При использовании условного или параллельного операнда фрейм делится на регионы взаимодействия

При использовании условного или параллельного операнда фрейм делится на регионы взаимодействия

с помощью разделителя операторов взаимодействия.
Операнд alt используется при моделировании расширения сценария, т.е. при наличии альтернативного потока взаимодействия. Оператор opt используется, если сообщение должно быть передано, только при истинности какого-то условия. Данный фрейм используется без разделения на регионы.
Слайд 13

Цикличность потока взаимодействия может быть представлена на диаграмме последовательности с помощью

Цикличность потока взаимодействия может быть представлена на диаграмме последовательности с

помощью операнда loop. При  использовании оператора цикла можно указать минимальное и максимальное число итераций.
Также фрейм должен содержать условие, при наступлении которого взаимодействие повторяется.
Слайд 14

У первого сообщения нет участника, пославшего его, поскольку оно приходит из

 У первого сообщения нет участника, пославшего его, поскольку оно приходит из

неизвестного источника. Оно называется найденным сообщением
Слайд 15

Слайд 16

Слайд 17

Слайд 18

Слайд 19

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

Диаграммы последовательности

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

Д
Диаграммы последовательности создаются для моделирования взаимодействия в рамках одного прецедента.
Также диаграммы последовательности подойдут для моделирования взаимодействия пользователя и Системы в целом.
На уровне детальной спецификации требований диаграммы последовательности используются для моделирования взаимодействия компонентов Системы и пользовательских классов в рамках выбранного прецедента.
На уровне реализации с помощью диаграммы последовательности моделируется взаимодействие между отдельными компонентами Системы. На данном уровне детализации лучше подойдет диаграмма коммуникации.
Слайд 20

Поведенческие диаграммы Диаграммы коммуникаций (кооперации)– это особый вид диаграмм взаимодействия, акцентированных

Поведенческие диаграммы

Диаграммы коммуникаций (кооперации)– это особый вид диаграмм взаимодействия, акцентированных на

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

На диаграмме коммуникации отображаются связи: связей, которые представляют собой экземпляры ассоциаций

На диаграмме коммуникации отображаются связи:
связей, которые представляют собой экземпляры ассоциаций
можно

также показать временные связи, возникающие только в контексте взаимодействия:
связь «local» (локальная) от объекта Order (Заказ) к объекту Product (Продукт) – это локальная переменная,
«parameter» (параметр)
«global» (глобальная)
Стиль простой нумерации в языке UML не разрешен.
В соответствии с правилами UML необходимо придерживаться вложенной десятичной нумерации.
Слайд 22

Слайд 23

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

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


Метод getDiscountInfo вызывается из метода calculateDiscount.