История

Диаграммы деятельности появились в составе стандарта 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 доминирует)
  • Меньше специализированных средств для процессной аналитики