← Все гайды

Диаграмма вариантов использования (use case) в PlantUML

· 1 мин чтения

PlantUML

Как нарисовать use case диаграмму: актёры, варианты использования, граница системы, include и extend, обобщение актёров — с примером для интернет-магазина.

Диаграмма вариантов использования отвечает на вопрос «кто и что делает с системой». Её рисуют на старте проекта, чтобы договориться о границах системы и ролях пользователей.

Пример

@startuml
left to right direction
actor Покупатель
actor Менеджер
actor "Платёжный шлюз" as Pay

rectangle "Интернет-магазин" {
  usecase "Оформить заказ" as UC1
  usecase "Оплатить заказ" as UC2
  usecase "Применить промокод" as UC3
  usecase "Обработать заказ" as UC4
}

Покупатель --> UC1
UC1 ..> UC2 : <<include>>
UC3 ..> UC1 : <<extend>>
UC2 --> Pay
Менеджер --> UC4
@enduml

Вставьте в песочницу PlantUML или откройте Файл → Примеры → Диаграмма вариантов использования.

Диаграмма вариантов использования интернет-магазина
Актёры, варианты использования и граница системы

Элементы

  • Актёр — actor: роль пользователя или внешняя система.
  • Вариант использования — usecase или текст в скобках (Оформить заказ).
  • Граница системы — rectangle "Название" { … }.
  • include — обязательная часть другого сценария (оформление всегда включает оплату).
  • extend — необязательное расширение (промокод может быть, а может не быть). Стрелка идёт от расширения к базовому сценарию.
  • Обобщение актёров: Менеджер <|-- "Старший менеджер".

Советы

  • Называйте варианты глаголом с объектом: «Оформить заказ», а не «Заказы».
  • Не превращайте диаграмму в схему процесса — шаги описываются в сценариях или на диаграмме активности.
  • left to right direction обычно делает диаграмму компактнее.

Вопросы и ответы

Сколько вариантов использования показывать на одной диаграмме? Обычно 5–15. Если больше — разбейте по подсистемам или ролям.

Нужно ли показывать «Войти в систему»? Как правило, нет: это предусловие почти всех сценариев, а не цель пользователя.

Как описать сам сценарий? Текстом (основной поток, альтернативы, исключения) в Markdown-документе рядом с диаграммой; блок ```plantuml с диаграммой можно вставить прямо в этот документ.