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

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

Диаграммы последовательности ( sequence diagram ) являются видом диаграмм взаимодействия языка UML, которые описывают отношения объектов в различных условиях. Условия взаимодействия задаются сценарием, полученным на этапе разработки диаграмм вариантов использования [1]. Существуют различные взгляды на применение этого вида диаграмм:

Рассмотрим этот вид диаграмм на примере главной последовательности сценария добавления ученика в систему:

Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательностиПример: диаграмма последовательности сценария добавления ученика в систему тестирования

По приведенной диаграмме можно проследить следующие правила построения:

Кроме того, на ней показаны три основных вида стрелок (сообщений):

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

В нашем случае на диаграмме был оставлен контроллер, т.е. введен новый управляющий объект отображения уведомления о том, что студент был добавлен в базу. Мы, конечно, могли бы добавить этот функционал в виджет главного меню (наиболее простое решение), введение дополнительного объекта не только является более гибким решением, но и позволит снять с меню лишние обязанности, т.е. сделать код более чистым с точки зрения принципа единой обязанности — SRP [6].

Видно, что приведенная диаграмма очень хорошо отражает взаимодействие объектов, однако прецеденты могут содержать предусловия (требования, которые должны быть выполнены для начала выполнения действий прецедента) — они могут быть показаны при помощи механизма использования взаимодействий. Этот механизм позволяет указать что повторно используется какое-либо взаимодействие, определенное в другом месте, изображается с помощью метки ref. Так, можно показать, что до выполнения прецедента учитель должен войти в систему (выполнить прецедент login) и открыть окно главного меню:

Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательностиМеханизм использования взаимодействий диаграмм последовательности (метка ref)

Фреймы взаимодействия могут использоваться для изображения параллельных секций, при этом часть сообщений рисуются внутри фрейма par, так например, мы могли бы показать, что база данных уведомляет параллельно всех трех подписчиков и все они параллельно и независимо друг от друга начинают работать:

Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательностиПример использования фрейма взаимодействия par

Существуют также фреймы для изображения условных конструкций (alt, opt), циклов (loop) и критических секций (critical). Ветвление при этом использовать не рекомендуется, т.к. для изображения деталей алгоритмов в языке UML есть диаграммы деятельности, а Фаулер в таких случаях даже считает также обоснованным использование псевдокода.

Фаулер рекомендует строить диаграммы последовательностей не только при проектировании, но и на этапе рефакторинга если требуется заменить централизованную обработку децентрализованной (более гибкой), т.к. этот вид диаграмм является лучшим способом распределения обязанностей. Также, они часто используются при объяснении каких-либо деталей проекта другим участникам, т.к. этот вид диаграмм быстро строится с нужной степенью детализации на маркерной доске. На следующем примере показан фрейм взаимодействия loop:

Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательностиПример использования фрейма loop

На приведенной диаграмме показано взаимодействие процессов — главный процесс (go) после запуска создает дочерний (loop), затем в цикле посылает ему свой идентификатор (self())и некоторое сообщение (Msg). Дочерний процесс отправляет назад сообщение, но уже со своим идентификатором. Внутри части фрейма loop подписывается условие выхода из цикла — в данном случае пересылка сообщений продолжается до тех пор, пока Msg не станет равно «stop». После цикла главный процесс отправляет дочернему сообщение stop, которое является сигналом завершения процесса.

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

Таким образом, диаграммы вариантов использования могут очень широко применяться при разработке программного обеспечения:

Источник

Учебное пособие по диаграммам последовательностей: полное руководство с примерами

Updated on: 22 January 2021

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

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

В этом учебном пособии по последовательной диаграмме вы узнаете об этом;

Что такое диаграмма последовательности?

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

Проще говоря, диаграмма последовательности показывает различные части работы системы в “последовательности”, чтобы что-то сделать.

Обозначения диаграмм последовательности

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

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

Нотация линии жизни
Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательностипоследовательность состоит из нескольких таких обозначений линии жизнеобеспечения, которые должны быть расположены горизонтально в верхней части диаграммы. Никакие две нотации страховочной линии не должны перекрывать друг друга. Они представляют собой различные объекты или части, которые взаимодействуют друг с другом в системе во время последовательности.

Нотация жизненной линии с символом элемента агента используется в том случае, если конкретная диаграмма последовательности принадлежит случаю использования. Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

Линия жизни с элементом-субъектом представляет системные данные. Например, в приложении “Обслуживание клиентов” организация-заказчик будет управлять всеми данными, относящимися к клиенту. Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

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

Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

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

Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

Бары активации

Активационная планка – это коробка, расположенная на страховочной линии. Используется для указания на то, что объект активен (или инстанцирован) во время взаимодействия между двумя объектами. Длина прямоугольника указывает на продолжительность пребывания объектов в активном состоянии.

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

Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

Стрелки сообщений

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

Стрелка сообщения содержит описание, известное как подпись сообщения. Формат подписи этого сообщения приведен ниже. Все части, кроме имени_сообщения, являются необязательными.

Атрибут = имя_сообщения (аргументы): return_type

Как показано в примере полосок активации, синхронное сообщение используется, когда отправитель ждет, пока приемник обработает сообщение и вернется, прежде чем продолжить с другим сообщением. Заголовок стрелки, используемый для обозначения этого типа сообщения, является сплошным, как показано ниже. Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

Асинхронное сообщение используется, когда вызывающая сторона не ждет, пока приемник обработает сообщение и вернется, прежде чем отправить другие сообщения другим объектам в системе. Заголовок стрелки, используемый для отображения этого типа сообщения, представляет собой стрелку в виде строки, как показано в примере ниже. Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

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

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

Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

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

Удаленную нотацию ящика участника можно использовать, когда нужно показать, что конкретного участника не существовало до тех пор, пока не был отправлен вызов на создание. Если созданный участник делает что-то сразу после создания, необходимо добавить окно активации прямо под окном участника. Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

Аналогичным образом, участники, которые больше не нужны, могут быть удалены из схемы последовательности. Это делается путем добавления буквы “Х” в конце спасательной линии указанного участника.

Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

Когда объект посылает сообщение самому себе, он называется рефлексивным сообщением. Она обозначается стрелкой сообщения, которая начинается и заканчивается на одной и той же спасательной линии, как показано в примере ниже. Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

Комментарий

UML-диаграммы допускают аннотацию комментариев во всех типах UML-диаграммы. Объект-комментарий представляет собой прямоугольник со сложенным углом, как показано ниже. Комментарий можно связать со связанным объектом с помощью пунктирной линии.Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

Примечание: Просмотрите “Лучшие методы работы с диаграммой последовательностей”, чтобы узнать о фрагментах последовательностей.

Диаграмма последовательностей Лучшие практики

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

Он используется для более структурированного отображения сложных взаимодействий, таких как альтернативные потоки и циклы. В верхнем левом углу фрагмента расположен оператор. Этот оператор – оператор фрагмента – указывает, что это за фрагмент.

Фрагмент альтернативной комбинации используется, когда необходимо сделать выбор между двумя или более последовательностями сообщений. Он моделирует логику “если, то еще”.

Альтернативный фрагмент представляет собой большой прямоугольник или кадр, который задается упоминанием ‘alt’ в окошке с названием кадра (так называемый оператор фрагмента).

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

Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

Фрагмент комбинации опций используется для указания последовательности, которая будет происходить только при определенном условии, в противном случае последовательность не будет происходить. Оно моделирует утверждение “если тогда”.

Как и альтернативный фрагмент, фрагмент опции также представлен прямоугольной рамкой, в которой в окошке с названием помещается ‘opt’.

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

(Найдите пример диаграммы последовательности с фрагментом опции в разделе Шаблоны и примеры последовательностей).

Loop фрагмент используется для представления повторяющейся последовательности. Поместите слова “петля” в поле с названием и состояние защиты в верхнем левом углу рамы.

В дополнение к Булеву тесту, защитный кожух в фрагменте петли может иметь два других специальных условия, с которыми он тестируется. Это минимальные (записанные как minint = [число] и максимальные (записанные как maxint = [число])).

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

(Пример фрагмента цикла приведен ниже в шаблонах последовательных диаграмм и разделе с примерами)

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

Для указания ссылочного фрагмента необходимо в окошке с названием кадра указать ‘ref’, а внутри кадра – название диаграммы последовательности, на которую делается ссылка.

Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

Для получения дополнительных фрагментов последовательностей обратитесь к Основам диаграмм последовательностей: Часть 1, Часть 2 и Часть 3.

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

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

Как нарисовать схему последовательности

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

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

Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

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

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

После того, как вы идентифицировали объекты, важно написать подробное описание того, что делает случай использования. Из этого описания можно легко вычислить взаимодействия (которые должны идти на диаграмме последовательности), которые будут происходить между объектами, указанными выше, после того, как будет выполнен сценарий использования.

Вот шаги, которые происходят в случае использования под названием “Создать новую учетную запись пользователя библиотеки”.

На каждом из этих этапов можно легко указать, какие сообщения должны обмениваться между объектами на схеме последовательности. Как только все станет ясно, можно приступать к построению диаграммы последовательности.

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

Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

Распространенные ошибки в диаграммах последовательностей

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

См. подробное объяснение этих распространенных ошибок в Руководстве по последовательным диаграммам: Обычные ошибки, которых следует избегать при рисовании диаграмм последовательностей.

Примеры и шаблоны схем последовательностей

Ниже приведены несколько примеров схем последовательностей и шаблонов, которые нарисованы с использованием Creately. Создавайте диаграммы последовательности онлайн с помощью онлайн-инструмента Creately. Щелкните по шаблону, чтобы открыть его в редакторе.

Система онлайн-экзаменов – Схема последовательности

Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

Щелкните по изображению, чтобы отредактировать его в режиме онлайн

Схема последовательности Пример системы управления школой

Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

Пример фрагмента комбинации опций

Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

Пример последовательности циклов

Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательностиВот еще несколько шаблонов и примеров диаграмм последовательности, которые вы можете редактировать прямо сейчас.

Учебное пособие по диаграммам последовательности – презентация SlideShare

Обратная связь по учебному пособию “Схема последовательности”

Данное учебное пособие по последовательным схемам охватывает все, что необходимо знать на последовательных схемах и их построении. Если у Вас есть какие-либо предложения или вопросы касательно учебного пособия “Схема последовательности”, Вы можете оставить свой комментарий.

Источник

Теория и практика UML. Диаграмма последовательности

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

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

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

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

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

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

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

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

Одним из основных принципов ООП является способ информационного обмена между элементами Системы, выражающийся в отправке и получении сообщений друг от друга. Таким образом, основные понятия диаграммы последовательности связаны с понятием Объект и Сообщение.
Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности
На диаграмме последовательности объекты в основном представляю экземпляры класса или сущности, обладающие поведением. В качестве объектов могут выступать пользователи, инициирующие взаимодействие, классы, обладающие поведением в Системе или программные компоненты, а иногда и Системы в целом.

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

На диаграммах последовательности допустимо использование стандартных стереотипов класса:

Также одним из основных понятий, связанных с диаграммой последовательности, является Сообщение.
Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

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

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

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

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

Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

В UML различают следующие виды сообщений:

Для сообщений также доступен ряд предопределенных стереотипов. Наиболее часто используемые стереотипы это create и destroy.

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

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

При отображении работы с сообщениями иногда возникает необходимость указать некоторые временные ограничения. Например, длительность передачи сообщения или ожидание ответа от объекта не должно превышать определенный временной интервал. Можно указать следующие временные параметры:

Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

Форма заказа передает данные Менеджеру заказа, при этом передача данных не должна длиться больше 30 сек. – данное ограничение может понадобиться при выявлении требований к быстродействию Системы. Далее получение данных с формы инициирует запуск метода для создания экземпляра класса Заказ. Между получением данных от Формы заказа и инициализацией создания объекта должно пройти не более 30 сек., в противном случае пользователю может быть предоставлено сообщение об ошибке или недоступности сервера. Длительность передачи сообщения о создании объекта может быть зафиксирована в переменной d.

Данное значение может понадобиться при установке временного ограничения на получение ответного сообщения клиентом. В момент передачи сообщения фиксируется временное значение и заносится в переменную t. Таким образом, можно установить ограничение на стороне приемника, указав переменную t в качестве минимального значения и t+ в качестве максимального значения.

До появления UML 2.0 диаграмма последовательности рассматривалась только в рамках моделирования последовательности обмена сообщениями. Расширение сценария отображались с помощью ветвления линий сообщений, что не давало полной картины взаимодействия объектов. Таким образом, для целей моделирования расширения сценария, параллельности процессов или цикличности использовались диаграммы деятельности. Для решения данных задач в UML 2.0 было введено понятие фрейма взаимодействия и операторов взаимодействия.

Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности

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

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

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

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

Цикличность потока взаимодействия может быть представлена на диаграмме последовательности с помощью операнда loop. При использовании оператора цикла можно указать минимальное и максимальное число итераций. Также фрейм должен содержать условие, при наступлении которого взаимодействие повторяется.
Что такое диаграмма последовательности. Смотреть фото Что такое диаграмма последовательности. Смотреть картинку Что такое диаграмма последовательности. Картинка про Что такое диаграмма последовательности. Фото Что такое диаграмма последовательности
Диаграммы последовательности предназначены для моделирования взаимодействия между несколькими объектами. Зачастую диаграммы последовательности создаются для моделирования взаимодействия в рамках одного прецедента.

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

Также диаграммы последовательности подойдут для моделирования взаимодействия пользователя и Системы в целом.

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

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

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *