Вы находитесь на странице: 1из 30

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

техника BABoK, как инструмент выяснения требований


Бизнес анализ
Планирование и
моделирование

Анализ Требований
Анализ Стратегии и Определение
Дизайна

Уточнение и
моделирование
требований
Управление
Выяснение и
Жизненным Циклом
Взаимодействие Требований

Оценка Решения
Цель

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


моделирования логики сценариев использования,
показывая информацию, передаваемую между
объектами в системе через выполнение сценария.
BABoK_v3
Описание

На диаграмме
последовательности
показано, как
процессы или объекты
взаимодействуют во
время выполнения
сценария.
Внимание

На схеме последовательностей

⚠ показано, как взаимодействуют


объекты, но не как они связаны
друг с другом.
Использование

Часто используются
для отображения
взаимодействия
компонентов
пользовательского
интерфейса или
программного
обеспечения.
Выравнивание
Нотация

Стандартная нотация для диаграмм


последовательностей определяется как часть
спецификации Unified Modeling Language (UML®).
Элементы

Линия жизни
продолжительность жизни объекта
во время сценария

Сообщение
взаимодействие между двумя
объектами

Окно активации
период, в течение которого
выполняется операция
Типы сообщений

Синхронный вызов Асинхронный вызов


(сигнал)
Внимание

Не спешите делать предположения о

⚠ синхронности по виду стрелок до тех


пор, пока не убедитесь, что автор
умышленно на︎рисовал их разными.
Сильные стороны

Показывает взаимодействие между объектами системы


в хронологическом порядке, в котором происходят
взаимодействия.

Показывает взаимодействие между объектами


визуально, что позволяет заинтересованным сторонам
проверить логику с относительной легкостью.

Варианты использования могут быть прояснены в


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

Время и усилия могут быть потрачены впустую на


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

Исторически использовались для моделирования


системных потоков и могут считаться слишком
техническими в других обстоятельствах.
Простой сценарий

Мы собираемся вызвать команду для


определения его стоимости. При этом
объекту заказа (Order) необ︎ходимо
просмотреть все позиции заказа
(Line Items) и определить их цены,
основанные на правилах построения
цены продукции в строке заказа
(Order Line)
Проделав это для всех позиций
заказа, объект за︎каза должен
вычислить общую скидку, которая
определяется индиви︎дуально для
каждого клиента.
Более полный синтаксис

Синтаксис: имя : Класс, где и имя, и класс не обязательны, но


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

sd Диаграмма последовательности (sequence diagram); используется


для обрамления всей диаграммы последовательности, если это
необходимо.
Операторы

ref
Ссылка (reference); ссылается на
взаимодействие, определенное на другой
диаграмме.
Операторы

Для отображения цикла


применяется оператор loop с
единственным фрагментом, а тело
итерации помещается в защиту.

loop
Цикл (loop); фрагмент может выполняться
несколько раз, а защита обозначает тело
итерации.
Операторы

Для условной логики можно


использовать оператор alt и
помещать условие в каждый
фрагмент. Будет выполнен только
тот фрагмент, защита которого
имеет истинное значение.

alt
Несколько альтернативных фрагментов
(Alternative);
Выполняется только тот фрагмент, условия
которого истинно
Операторы

opt Необязательный параметр (optional)


фрагмент; выполняется, только если условие
истинно. Эквивалентно alt с одной веткой.
Операторы

par Параллельный (parallel); все фрагменты

⚠ neg
выполняются параллельно

Отрицательный (negative) фрагмент;


обозначает неверное взаимодействие.

region Критическая область (critical region);


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

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


когда требуется посмотреть на поведение нескольких
объектов в рамках одного прецедента.

Хороши для представления взаимодействия объектов, но


не очень подходят для точного определения поведения.
А если не следует использовать…

Если вы хотите посмотреть


на поведение одного
объекта в нескольких
прецедентах, то примените
диаграмму состояния.
А если не следует использовать…

Если же надо изучить поведение


нескольких объектов в
нескольких прецедентах или
потоках, не забудьте о
диаграмме деятельности.
А если не следует использовать…

Если требуется быстро исследовать несколько вариантов


взаимодействия, лучше использовать CRC︎ карточки, поскольку это
позволяет из︎ бежать непрерывного рисования и стирания.

Сначала:
По︎работать с CRC︎ карточками
для просмотра вариантов
взаимодействия.

Затем:
С помощью диаграмм
взаимодействий фиксировать те
взаимодействия, которые будут
применяться позже.
Полезный вид диаграмм взаимодействий

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


являются коммуникационные диаграммы, которые
показывают соединения, и временные диаграммы,
показывающие временные интервалы.
Литература
Спасибо за внимание

Лев Гришин / ТК «Центр» / Москва / 2019г.

Вам также может понравиться