Диаграмма последовательности — sequence diagram — это наглядное представление совокупности разных элементов модели системы, изображение того, как и в каком порядке они взаимодействуют.
Диаграммы подробно описывают, как выполняются разные операции. При этом — исходя из слова «последовательность» — такие диаграммы показывают временной порядок или хронологию: то, когда, как и в какой очереди передаются сообщения.
Основные элементы:
Основные элементы:
- Объекты (акторы):
- Представлены в виде прямоугольников с именами в верхней части диаграммы.
- Выравниваются по горизонтали.
- Линии жизни (Lifelines):
- Вертикальные пунктирные линии, исходящие от объектов, показывают период их активности.
- Сообщения:
- Горизонтальные стрелки между линиями жизни:
- Синхронное сообщение (с ожиданием ответа): стрелка с заполненным наконечником.
- Асинхронное сообщение (без ожидания): стрелка с пустым наконечником.
- Ответ: пунктирная стрелка.
- Горизонтальные стрелки между линиями жизни:
- Активность (Activation):
- Узкие прямоугольники на линиях жизни, показывающие выполнение объекта.
- Создание/уничтожение объектов:
- Новый объект появляется с линии жизни.
- Уничтожение объекта обозначается крестиком.

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

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

