Документация / BPMN
Действия и задачи
Действие (activity) — работа, которую выполняет участник процесса. Действия бывают атомарными — это задачи (task) — и составными — подпроцессы, о которых рассказано на отдельной странице. На диаграмме действие — прямоугольник со скруглёнными углами, внутри — название в форме глагола: «Проверить заказ», «Согласовать договор».
Типы задач
Тип задачи показывает, кто и как её выполняет. Значок типа рисуется в левом верхнем углу.
| Тип | Элемент XML | Значение |
|---|---|---|
| Абстрактная | task | Тип не уточнён — обычен для описательных моделей |
| Пользовательская | userTask | Человек выполняет работу в информационной системе (форма, список задач) |
| Ручная | manualTask | Работа без участия системы: позвонить, упаковать посылку |
| Сервисная | serviceTask | Автоматический вызов сервиса или приложения |
| Скриптовая | scriptTask | Скрипт, который выполняет сам движок процессов |
| Бизнес-правило | businessRuleTask | Вычисление по правилам (например, по таблице решений DMN) |
| Отправка | sendTask | Отправка сообщения другому участнику |
| Получение | receiveTask | Ожидание сообщения от другого участника |
<bpmn:userTask id="Approve" name="Согласовать заявку" />
<bpmn:serviceTask id="Reserve" name="Зарезервировать товар" />
<bpmn:sendTask id="Notify" name="Отправить уведомление" messageRef="Msg_Notice" />
<bpmn:receiveTask id="WaitPayment" name="Дождаться оплаты" messageRef="Msg_Payment" />
Маркеры повторения
Маркер внизу по центру показывает, что действие выполняется несколько раз:
- Цикл (круговая стрелка,
standardLoopCharacteristics) — действие повторяется, пока выполняется условие. - Параллельный многоэкземплярный (три вертикальные черты) — несколько экземпляров действия выполняются одновременно: например, запросить предложения у всех поставщиков из списка.
- Последовательный многоэкземплярный (три горизонтальные черты) — экземпляры выполняются по очереди.
<bpmn:userTask id="Review" name="Проверить документ">
<bpmn:standardLoopCharacteristics />
</bpmn:userTask>
<bpmn:sendTask id="RequestQuotes" name="Запросить предложение">
<bpmn:multiInstanceLoopCharacteristics isSequential="false" />
</bpmn:sendTask>
Задача компенсации
Задача с маркером компенсации (перемотка назад, isForCompensation="true") не участвует в обычном ходе процесса.
Она выполняется, только когда нужно «откатить» уже выполненную работу — например, отменить бронирование, если
оплата не прошла. Такую задачу связывают ассоциацией с граничным событием компенсации (см. «События»).
Правила хорошего тона
- Название — глагол в неопределённой форме и объект: «Выставить счёт», а не «Счёт» или «Выставление счёта».
- Одна задача — одна работа одного исполнителя. Если внутри несколько шагов — это подпроцесс.
- У задачи обычно один входящий и один исходящий поток управления. Ветвление и слияние показывают шлюзами, а не несколькими стрелками из задачи.
Похожие инструменты
Обновлено: 30 сентября 2026 г.
