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

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

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

Основные элементы:

Основные элементы:

  1. Объекты (акторы):
    • Представлены в виде прямоугольников с именами в верхней части диаграммы.
    • Выравниваются по горизонтали.
  2. Линии жизни (Lifelines):
    • Вертикальные пунктирные линии, исходящие от объектов, показывают период их активности.
  3. Сообщения:
    • Горизонтальные стрелки между линиями жизни:
      • Синхронное сообщение (с ожиданием ответа): стрелка с заполненным наконечником.
      • Асинхронное сообщение (без ожидания): стрелка с пустым наконечником.
      • Ответ: пунктирная стрелка.
  4. Активность (Activation):
    • Узкие прямоугольники на линиях жизни, показывающие выполнение объекта.
  5. Создание/уничтожение объектов:
    • Новый объект появляется с линии жизни.
    • Уничтожение объекта обозначается крестиком.

Синхронный/Асинхронный

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

Асинхронный вызов — взаимодействие, при котором один объект шлет запрос другому, но ответ не получает. Как пример, работа очередей или топиков: один объект положил данные в топик, а второй объект забрал эти данные, но никакой отбивки первому объекту при этом не пришло.

UML содержит следующие операнды:

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

Источники:

  1. habr.com
  2. it-gost.ru
  3. practicum.yandex.ru
  4. creately.com
  5. youtube.com