Модель и нотация бизнес-процессов (BPMN) — это стандартизированная графическая нотация для моделирования бизнес-процессов. События BPMN являются важной частью этой нотации, представляя собой события, происходящие в ходе процесса. Это руководство предоставляет подробный обзор нотации событий BPMN, включая множество примеров.

События BPMN: структурированный обзор
События в BPMN (модель и нотация бизнес-процессов) обозначаются окружностями и обозначают события, влияющие на процесс. Они определяют, как процесс реагирует на внутренние или внешние триггеры, тип триггера указывается иконкой внутри окружности. Ниже приведен подробный разбор событий BPMN, их типов и использования:
Ключевые характеристики событий BPMN
- Поведение, инициированное событием
- События инициируют действия на основе конкретных триггеров (например, сообщение, таймер или ошибка).
- Иерархия событий
- Уровень 1: Основные события (Нет, Сообщение, События запуска по таймеру; Нет, Сообщение, События завершения по завершению).
- Уровень 2: Расширенные события (Промежуточные события, Ошибка, Эскалация, Условные, Сигнал, Ссылка).
- Визуальные индикаторы
- Промежуточные события: Двойные окружности.
- Границы событий: Привязаны к действиям для обработки исключений или параллельных действий.
Типы событий и их функции
1. События запуска
Указывают, где начинается процесс.
- Событие запуска «Нет»
- Триггер: Нет (неуказанный или ручной запуск).
- Сценарий использования: Подпроцессы (обязательные) или процессы верхнего уровня с неопределенными триггерами.
- Событие запуска сообщением (✉️)
- Триггер: Внешнее сообщение.
- Сценарий использования: Процесс начинается при получении сообщения (например, запрос клиента).
- Событие запуска по таймеру (⏰)
- Событие-триггер: Запланированное время/дата.
- Сценарий использования: Повторяющиеся процессы (например, генерация ежемесячного отчета).
- Событие запуска с несколькими триггерами
- Событие-триггер: Любое из нескольких триггеров.
- Сценарий использования: Процессы с гибкими точками запуска.
2. События завершения
Указывают, где процесс завершается.
- Событие завершения без сигнала
- Результат: Сигнал не отправляется.
- Сценарий использования: Завершение процесса по умолчанию.
- Событие завершения с отправкой сообщения (✉️)
- Результат: Отправляет сообщение при завершении.
- Сценарий использования: Уведомление внешних систем/пользователей (например, подтверждение заказа).
- Событие завершения с прерыванием (⛔)
- Результат: Прерывает все параллельные потоки.
- Сценарий использования: Обработка критических исключений (например, сбой системы).
3. Промежуточные события
Происходят между событиями начала и окончания.
- Событие-ловушка таймера (⏰)
- Действие: Задерживает процесс до указанного времени/продолжительности.
- Сценарий использования: Ожидание срока (например, окно оплаты).
- Событие отправки сообщения (✉️)
- Действие: Отправляет сообщение и продолжает поток.
- Сценарий использования: Эквивалентно задаче «Отправка» (например, уведомить поставщика).
4. События границы
Привязаны к действиям для обработки исключений или параллельных действий.
- Прерывающее событие границы
- Поведение: Останавливает действие и запускает поток исключения.
- Сценарий использования: Обработка ошибок (например, сбой оплаты).
- Непрерывающее событие границы
- Поведение: Работает параллельно с действием.
- Сценарий использования: Мониторинг (например, напоминания о ходе выполнения задачи).
- Событие таймера границы (⏰)
- Действие: Срабатывает, если активность превышает временной лимит.
- Сценарий использования: Применение SLA (например, передача просроченных задач).
Специализированные типы событий
- Событие ошибки (❌)
- Сценарий использования: Прерывающие исключения (например, сбой системы).
- Событие повышения (📈)
- Сценарий использования: Непрерывающие исключения (например, требуется утверждение менеджера).
- Событие сигнала (⚡)
- Поведение: Рассылает сигнал всем слушающим процессам.
- Сценарий использования: Координация между процессами (например, системные оповещения).
- Событие связи (🔗)
- Поведение: Соединяет две части процесса.
- Сценарий использования: Упрощение сложных диаграмм (например, многостраничные рабочие процессы).
Ключевые моменты
- Сообщение против сигнала
- Сообщение: Направлено конкретному процессу/экземпляру.
- Сигнал: Рассылается всем процессам (без конкретного получателя).
- Подпроцессы событий
- Введено в BPMN 2.0 для обработки исключений или повторяющихся действий (например, ведение журнала ошибок).
- Ошибка против повышения
- Используйте Ошибка для прерывающих исключений; Повышение для непрерывающих.
Лучшие практики
- Используйте События запуска таймера для запланированных процессов, чтобы прояснить смысл экземпляра.
- Избегайте чрезмерного использования События завершения завершения; зарезервируйте их для критических исключений.
- Предпочитайте Непрерывающие граничные события для мониторинга, чтобы избежать нарушения рабочих процессов.
Овладев этими типами событий и их триггерами, моделисты могут создавать точные, эффективные диаграммы BPMN, отражающие поведение реальных процессов.