Как создать диаграмму активности в PlantUML

Прочитайте это руководство, чтобы узнать, как легко создать диаграмму активности в PlantUML.

Поделиться в соцсетях:
banner-product
В этой статье
  1. Что такое диаграмма активности?
  2. Что такое PlantUML? (Простое объяснение)
  3. Основной синтаксис PlantUML для диаграмм вариантов использования
  4. Шаги по созданию диаграммы вариантов использования с PlantUML
  5. Практические примеры
  6. Когда рассматривать альтернативы
  7. Объединяем все вместе

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

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

Чтобы научиться создавать диаграмму активности в PlantUML, важно понять, почему они полезны. Эти диаграммы являются ключевыми в планировании, проектировании систем и иллюстрации процессов команды.

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

Вы можете использовать их для:

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

Основные части включают:

  • Узлы для начала или конца
  • Действия или активности
  • Стрелки, показывающие поток управления
  • Узлы для принятия решений или слияния путей
  • Разветвления и соединения для параллельных действий
  • Дорожки для разделения секций

Что такое PlantUML? (Простое объяснение)

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

Ключевые особенности

Широкая поддержка диаграмм

  • Диаграммы классов, активности и последовательности
  • Блок-схемы и карты процессов
  • Ментальные карты и каркасы интерфейса
  • Диаграммы сетевой архитектуры
  • Проектные временные шкалы (Gantt)

Диаграммы на основе кода

Используйте простые текстовые строки для объяснения диаграмм, например A -> B: Hello, и PlantUML создаст визуализацию. Вам не нужно кликать, перетаскивать или организовывать фигуры самостоятельно.

Синтаксис, удобный для начинающих

Вам не нужно быть высококвалифицированным. Синтаксис остается кратким, ясным и простым для понимания.

@startuml User -> System: Login System --> User: Success @enduml

Основной синтаксис PlantUML для диаграмм вариантов использования

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

Действия/Активности

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

Синтаксис:

:;

Пример:

:start;:User fills login form;:System checks credentials;
action activities

Начальный узел

Первый узел отмечает начало активности. Вы определяете его в PlantUML всего одним ключевым словом.

Синтаксис:

start

Пример:

@startuml start :User opens the app; @enduml
starting node

Конечный узел

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

Синтаксис:

end

Пример:

@startuml start :User logs out; end @enduml
end node

Поток управления/Переходы

Поток управления показывает порядок активностей шаг за шагом. Он связывает одну задачу с другой и объясняет, как происходит прогресс. В PlantUML стрелки (->) делают эти переходы легкими для понимания и отслеживания.

Синтаксис:

Activity1 -> Activity2

Пример:

@startuml start :Enter email; -> :Enter password; -> :Click Login; end @enduml
control flow

Решение/Слияние

Узлы решений управляют принятием выборов. Для отображения различных результатов можно использовать блоки if-then-else. PlantUML позволяет создавать параллельные пути, используя fork и end fork.

Синтаксис:

if (...) then (...) else (...) endiffork ... else ... end fork

Пример:

@startuml start :Submit order; if (Payment successful?) then (yes) :Send confirmation; else :Show error; endif end @enduml
decision merge

Условия-охранники

Условия-охранники решают, какой маршрут выбрать в зависимости от правила. Поместите условие в квадратные скобки на стрелке, соединяющей активности.

Синтаксис:

-> [condition] ->

Пример:

@startuml start :Check stock; ->[items available] -> :Confirm order; ->[out of stock] -> :Notify customer; end @enduml
guard conditions

Разветвление/Соединение (Параллельные активности)

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

Синтаксис:

fork :Activity1;fork again :Activity2;end fork

Пример:

@startuml start :Start sync; fork :Upload files; fork again :Update database; fork again :Send status alert; end fork :Sync complete; end @enduml
fork join

Разделы/Дорожки

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

Синтаксис:

partition "Label" { :Activity;}

Пример:

@startuml start partition "User" { :Submit request; } partition "Admin" { :Approve request; :Send response; } end @enduml
partition swimlanes

Отправка и получение сигналов

Используйте сигналы для уведомления части системы, когда другой требуется внимание. Команда send отправляет сигнал, а receive обрабатывает его где-то еще в процессе.

Синтаксис:

send receive 

Пример:

@startumlstart:Update profile;:send update_signal;stopstart:receive update_signal;:Log update;end@enduml
send and receive

Поток объектов

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

Синтаксис:

:Activity1 object -> :Activity2;

Пример:

@startumlstart:User selects item order -> :Validate item;:Validate item item -> :Generate invoice;:Generate invoice invoice -> :Send invoice to user;end@enduml
object flow

Шаги по созданию диаграммы активности с PlantUML

Шаг 1: Определите активности и точки принятия решений в процессе
  • Начните с записи каждого действия в процессе, даже самых маленьких.
  • Затем определите, где решения или условия меняются.
  • Эти шаги и выборы создают базовую структуру, которую ваша диаграмма будет использовать позже.
activities decision
Шаг 2: Опишите эти элементы и их поток
  • Используйте двоеточия для отображения активностей, стрелки для указания потока и условия для представления решений.
  • Убедитесь, что все остается ясным и стабильным, чтобы диаграмма соответствовала реальному процессу.
describe elements
Шаг 3: Визуализируйте и просмотрите диаграмму
  • Чтобы просмотреть вашу диаграмму, скопируйте полный код и поместите его в онлайн-редактор PlantUML.
  • Если вы работаете на своем компьютере, вы можете установить расширение PlantUML в таких инструментах, как VS Code или IntelliJ.
  • Эти инструменты позволяют получать мгновенный предпросмотр, поэтому вам не нужно выходить из вашего пространства кодирования.
render and view

Практические примеры

Пример простой диаграммы активности

@startumlstart:Enter email;-> :Enter password;-> :Click login;if (Valid credentials?) then (yes) -> :Redirect to dashboard;else -> :Show error;endifend@enduml

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

simple activity

Диаграмма активности с решениями и слияниями

@startumlstart:Receive order;-> :Check stock;if (In stock?) then (yes) -> :Process payment; if (Payment approved?) then (yes) -> :Prepare shipment; else -> :Cancel order; endifelse -> :Notify out of stock;endif-> :Update records;end@enduml

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

decision merge example

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

@startumlstart:Start backup;fork :Backup files;fork again :Export database;fork again :Generate logs;end fork:Notify completion;end@enduml

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

fork join example

Диаграмма деятельности для обработки онлайн-заказов

@startumltitle Processing an Online Orderstart:Customer Browses Products;:Customer Adds Items to Cart;if (Customer proceeds to checkout?) then (yes) :Customer Enters Shipping Information; :Customer Enters Payment Information; :System Validates Payment; if (Payment Successful?) then (yes) :System Creates Order; fork :Update Inventory; fork again :Send Order Confirmation Email to Customer; end fork :Order Shipped; else (no) :Inform Customer of Payment Failure; endifelse (no) :Customer Continues Browsing;endifend@enduml

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

online orders

Когда рассматривать альтернативы

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

Ограничения PlantUML

  • Управление большими диаграммами затруднено: Ваш код становится менее читаемым и сложнее в обслуживании по мере расширения диаграммы.
  • Нет контроля над автоматической компоновкой: Вы не можете изменить расположение элементов.
  • Мало вариантов стилизации: Вам будет сложно настраивать шрифты, интервалы или формы.

Более простой способ создания диаграмм активности

edrawmax online

Некоторые люди предпочитают не создавать диаграммы путем кодирования. При работе с блок-схемами с ветвлениями, выборами или дорожками набор каждой детали может занять дополнительное время. EdrawMax Online делает это проще. Вы не имеете дело с синтаксисом или проблемами форматирования. Вместо этого вы можете создавать диаграммы несколькими щелчками мыши. Изменять и делиться становится быстрее по мере усложнения дизайна.

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

Почему вам это понравится

  • Настраиваемые соединители: Вы можете настраивать изгибы линий, менять дизайн стрелок и выбирать точки соединения без необходимости кодирования.
  • Шаблоны диаграмм деятельности: Редактируйте предварительно разработанные шаблоны для отображения шагов входа в систему, заказов или задач, выполняемых одновременно.
  • Экспорт в нескольких форматах: Сохраняйте диаграммы как PDF, SVG, Word, PowerPoint или Visio всего за один шаг.

Объединяем все вместе

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

Хорошая диаграмма деятельности PlantUML позволяет разбить процессы, найти важные задачи и спроектировать системы. Написание строк занимает много времени и не всегда полезно. Здесь на помощь приходит EdrawMax. Вы можете настроить свою диаграмму во время мозгового штурма. Редактируйте без необходимости касаться кода. Он быстр в использовании, хорошо выглядит и даже приносит удовольствие.

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

edrawmax v15 онлайн