Модуль 3 · Нотации

BPMN и UML: рисуем то, что описывали словами

Схему процесса заказчик и разработчик читают за десять секунд. Текст из восьми шагов с развилкой — нет.

BPMN — как течёт процесс

BPMN (Business Process Model and Notation — нотация моделирования бизнес-процессов). Алфавит маленький, четыре знака:

ЗнакЧто означает
○ Событие (event)кружок: тонкий — старт, толстый — конец процесса
▭ Задача (task)скруглённый прямоугольник — одно действие
◇ Шлюз (gateway)ромб — развилка «если / иначе»
→ Поток (sequence flow)стрелка — порядок шагов
flowchart LR
  s(("Клиент
спросил")):::ev --> A["Вводит данные
в калькулятор"]:::mgr A --> B["Считает реальную
доходность"]:::sys B --> G{"Реальная
доходность < 0?"}:::gw G -->|да| C["Предложить
инвестпродукт"]:::mgr G -->|нет| D["Оформить вклад"]:::mgr C --> e(("Готово")):::ev D --> e classDef mgr fill:#2f6f8f,stroke:#2f6f8f,color:#fff; classDef sys fill:#b1121f,stroke:#b1121f,color:#fff; classDef gw fill:#f4d47a,stroke:#8a6d1d,color:#241f10; classDef ev fill:#e8e8e8,stroke:#666,color:#222;
действие менеджера   действие системы  ·  ромб — развилка
📌 Дорожки (swimlanes) В больших схемах шаги раскладывают по горизонтальным «дорожкам»: своя у менеджера, своя у системы — сразу видно, кто за что отвечает. Здесь я показал это цветом, чтобы не загромождать картинку.

UML — язык моделирования систем

UML (Unified Modeling Language). Берём две диаграммы из него.

Use case — кто и что может делать

Человечек-актор слева, овалы — действия, которые он выполняет с системой. Рамка — граница системы.

flowchart LR
  M(("Менеджер")):::actor
  subgraph S["Калькулятор подбора продукта"]
    direction TB
    U1(["Рассчитать доходность"]):::uc
    U2(["Сравнить с инвестпродуктом"]):::uc
    U3(["Подобрать продукт клиенту"]):::uc
  end
  M --- U1
  M --- U2
  M --- U3
  classDef actor fill:#2f6f8f,stroke:#2f6f8f,color:#fff;
  classDef uc fill:#eef4f7,stroke:#2f6f8f,color:#213;
Одним взглядом виден весь набор возможностей менеджера.

Sequence — кто кому и когда шлёт сообщения

Вертикальные линии — участники, стрелки — сообщения сверху вниз по времени. Тут виден твой рефлекс из модуля 1: калькулятор идёт в базу данных за доходностью инвестпродукта.

sequenceDiagram
  actor M as Менеджер
  participant K as Калькулятор
  participant DB as База данных
  M->>K: вводит данные
  K->>DB: запрос доходности инвестпродукта
  DB-->>K: доходность
  K-->>M: результат сравнения
Сплошная стрелка — запрос, пунктирная — ответ.
💡 Когда что рисовать BPMN — когда важен ход процесса и кто за что отвечает. Use case — когда нужно показать набор возможностей. Sequence — когда важен обмен данными между частями системы (и где всплывают запросы к базе и API).

Ключевые термины

BPMN — схема бизнес-процесса Задача / Событие / Шлюз / Поток Дорожки — кто выполняет шаг UML — язык моделирования Use case — кто что может Sequence — обмен сообщениями по времени Актор — человечек-пользователь