UML Activity Diagrams
Диаграммы деятельности UML для моделирования потоков управления и данных с поддержкой параллелизма, секций и потоков объектов.
История
Диаграммы деятельности появились в составе стандарта UML 1.0 в 1997 году. В UML 2.0 (2005) нотация была значительно переработана: семантика приведена в соответствие с сетями Петри, добавлены концепции токенов, потоков объектов, секций ответственности. Современная редакция UML 2.5 включает богатый набор средств для моделирования поведения программных систем.
Применимость
UML Activity Diagrams лучше всего подходят для:
- Моделирования бизнес-процессов в ИТ-контексте
- Описания алгоритмов и use-cases
- Спецификации API-сценариев
- Моделирования параллельных и асинхронных взаимодействий
Ключевые элементы
| Элемент | Назначение |
|---|---|
| Action | Атомарное действие |
| Activity | Составное поведение |
| Decision / Merge | Точки ветвления и объединения (по аналогии с XOR) |
| Fork / Join | Параллельное разделение и синхронизация |
| Object Node | Узел данных в потоке |
| Swimlane / Partition | Зона ответственности |
Сравнение с BPMN
Часто возникает вопрос: чем UML AD отличается от BPMN. Оба стандарта поддерживают почти одинаковый набор концепций, но позиционируются по-разному:
- UML AD изначально создан для разработчиков ПО — сильна в ИТ-проектах, слабее в коммуникации с бизнесом
- BPMN изначально создан для бизнес-аналитиков — лучше воспринимается нетехнической аудиторией
В крупных проектах часто используются оба: UML AD — для технической документации модулей, BPMN — для процессных карт.
Сильные стороны
- Глубокая интеграция с другими диаграммами UML (классы, состояния, последовательности)
- Зрелая инструментальная поддержка в IDE
- Прямая связь с реализацией в объектно-ориентированном коде
Ограничения
- Слабая воспринимаемость бизнес-аудиторией
- Меньшее распространение в чисто BPM-проектах (BPMN доминирует)
- Меньше специализированных средств для процессной аналитики