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 — обмен сообщениями по времени
Актор — человечек-пользователь