Когда использовать диаграмму деятельности?
Разработчики используют диаграммы деятельности для понимания высокого уровня потока программы. Это также позволяет им выявлять ограничения и условия, которые запускают конкретные события.
- Представлять бизнес-процессы
- Выявлять кандидатов на случаи использования, путем анализа бизнес-процессов
- Выявлять пред- и постусловия (контекст) для случаев использования
- Моделировать рабочие процессы между/в рамках случаев использования
- Моделировать сложные рабочие процессы в операциях над объектами
- Детально моделировать сложные действия в диаграмме деятельности высокого уровня
Основные компоненты диаграммы деятельности
Диаграмма деятельности — это в основном диаграмма потока, которая представляет поток от одной деятельности к другой. Деятельность можно описать как операцию системы. Основная цель диаграммы деятельности — захватить динамическое поведение системы. Ее также называют объектно-ориентированной диаграммой потока.
Нотация диаграммы деятельности также очень похожа на нотацию диаграммы состояний. Фактически, согласно спецификации UML, диаграмма деятельности является вариантом диаграммы состояний.
Действия
Действие — это именованный элемент, который представляет собой единичный атомарный шаг в рамках деятельности, то есть не подлежащий дальнейшему разбиению внутри деятельности.
![]()
Деятельность
Деятельность представляет собой поведение, состоящее из отдельных элементов, которые являются узлами деятельности, которые могут быть:
- действие
- объект
- поток управления
Поток управления
Поток управления представляет передачу управления выполнением от одного действия к другому действию.
Он изображается сплошной линией с стрелкой на одном конце, указывающей на следующее действие.
ПримерКогда действие Заполнить заказ завершено, управление выполнением передается действию Отправить заказ действие.
![]()
Начало и конец
Они представляют начальную и конечную точки последовательности выполнения действий в рамках действия. Обозначение начала и обозначение конца также называют обозначением начального состояния и обозначением конечного состояния.
- Элемент начала изображается в виде маленького сплошного круга.
- Элемент окончания изображается в виде маленького сплошного круга, заключенного в внешний круг.
Пример
![]()
Решение
Он представляет действие принятия решения, которое оценивает определенные условия и определяет, какой путь выполнения действия продолжить.
Обозначение решения изображается в виде маленького ромбовидного символа с одним входящим потоком управления и несколькими исходящими потоками управления.
Каждый исходящий поток управления должен быть помечен условием, которое приводит к этому потоку.
Пример
Действие принятия решения, выполненное после Получить заказдействие проверки наличия товара может быть изображено на диаграмме, как показано ниже:

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

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

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

Объект
Он представляет объект, который может быть входным и/или выходным для действия. В данном случае объект рассматривается как экземпляр класса в определенном состоянии.
Он изображается в виде прямоугольника с названием, помещенным внутри.
Он также может быть определен состоянием, написанным в скобках под названием.
Пример
Заказ [Заполнен] объект, созданный из Заполнить заказ действие будет использовано Отгрузить заказ действие. Этот объект может быть изображен как обозначение объекта на диаграмме деятельности UML, как показано ниже:
Разные обозначения с одинаковой семантикой:
![]()
Сигнал и событие
Он представляет действие сигнала, которое отправляет сигнал за пределы деятельности. Действие отправки сигнала не ожидает никаких ответов от получателя сигнала. Оно завершается само и передает управление следующему действию.
Он изображается в виде выпуклого пятиугольника с названием, помещенным внутри.
Пример
The Уведомить клиента действие отправки сигнала в деятельности по обработке заказа может быть изображено как обозначение отправки сигнала в диаграмме деятельности UML, как показано ниже:
![]()
Полосы и разделы
- Раздел представляет собой группу действий и объектов, которые имеют некоторые общие свойства.
- Он изображается двумя параллельными линиями, причем имя раздела находится на одном конце.
- Все действия и объекты, расположенные между двумя линиями, считаются принадлежащими к группе.
- Если действие или объект может находиться на границе нескольких разделов, он считается принадлежащим нескольким группам.
- Разделы могут быть вложенными, образуя иерархию разделов.
Пример
Действия и объекты в деятельности по обработке заказа могут быть разделены на 3 группы:
- Группа действий отдела заказов
- Группа действий бухгалтерского отдела
- Группа действий клиента, основанная на владении действиями
Эти группы могут быть изображены как обозначения разделов на диаграмме деятельности UML, как показано ниже:

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

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

Пример: Диаграмма деятельности – Нотации

Пример: Диаграмма деятельности – Порядок процесса

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

Пример: Диаграмма деятельности – Полосы

Ресурсы
- Как нарисовать диаграмму деятельности в UML? – Visual Paradigm
- Visual Paradigm. (б.г.). Как нарисовать диаграмму деятельности в UML? – Visual Paradigm .
- Visual Paradigm Online – Маркетплейс Google Workspace
- Маркетплейс Google Workspace. (б.г.). Visual Paradigm Online – Маркетплейс Google Workspace .
- Введение в диаграммы UML в Visual Paradigm – ArchiMetric
- ArchiMetric. (2024, 23 августа). Введение в диаграммы UML в Visual Paradigm – ArchiMetric .
- Иконка поддиаграммы деятельности Visual Paradigm – Stack Overflow
- Stack Overflow. (б.г.). Иконка поддиаграммы деятельности Visual Paradigm – Stack Overflow .
- Онлайн-инструмент для диаграмм UML
- Visual Paradigm. (б.г.). Онлайн-инструмент для диаграмм UML.
- Диаграммы деятельности – Единый язык моделирования (UML) – GeeksforGeeks
- GeeksforGeeks. (2017, 27 октября). Диаграммы деятельности – Единый язык моделирования (UML) – GeeksforGeeks.
- Создание диаграммы действий UML – Поддержка Microsoft
- Поддержка Microsoft. (б.г.). Создание диаграммы действий UML – Поддержка Microsoft.
- Учебник по диаграмме классов UML
- Visual Paradigm. (б.г.). Учебник по диаграмме классов UML .
- Разница между моделью домена и диаграммой действий – Stack Overflow
- Stack Overflow. (б.г.). Разница между моделью домена и диаграммой действий – Stack Overflow .