EPC
EPC (Event-driven Process Chain) — нотация моделирования бизнес-процессов с фокусом на чередование событий и функций. Основные элементы (событие, функция, организационная единица, информационный объект, логические операторы AND/OR/XOR), правила чтения диаграмм, сравнение с BPMN (когда выбирать EPC, а когда BPMN), примеры и инструменты (ARIS, SAP Signavio, Draw.io).
Введение: Немецкая точность в мире процессов
Представьте, что вам нужно описать сложный бизнес-процесс, например, как компания принимает и обрабатывает заказ от клиента. BPMN вы уже знаете. Но есть еще один язык, который десятилетиями использовали крупнейшие компании мира, особенно немецкие, для описания своих процессов. Он называется EPC.
EPC (Event-driven Process Chain) – это язык моделирования бизнес-процессов, который фокусируется на событиях и функциях, соединенных в логические цепочки.
Разработали EPC в начале 1990-х годов в Университете Саарланда (Германия) как часть методологии ARIS (Architecture of Integrated Information Systems). ARIS до сих пор является стандартом де-факто для описания процессов в крупных корпорациях, особенно на проектах внедрения SAP.
SAP – аббревиатура, которая означает «системы, приложения и продукты для обработки данных». Так называется компания, разрабатывающая программное обеспечение для управления бизнесом, и линейка программных продуктов для автоматизации работы предприятия.
Основной продукт компании – SAP ERP (Enterprise Resource Planning) – модульное решение для автоматизации управления предприятием.
EPC старше BPMN и во многом проще. Но у него есть свои преимущества, и его знание открывает двери в мир больших корпоративных проектов.
Что такое EPC
EPC – это язык, который показывает, как события и функции чередуются в процессе. Всегда идет чередование: событие -> функция -> событие -> функция -> событие.
Простая логика:
- Произошло какое-то событие (например, “Поступил заказ”).
- Это событие запускает функцию (работу), которую нужно выполнить (например, “Проверить наличие товара”).
- После выполнения функции возникает новое событие (например, “Наличие проверено”).
- И так далее, пока процесс не завершится.
В EPC нет сложных элементов вроде пулов и дорожек (хотя их можно добавить через организационную структуру), нет параллельных шлюзов в том виде, как в BPMN. EPC проще, но именно эта простота часто помогает быстрее договориться с бизнесом.
Главное правило EPC: события и функции всегда чередуются. Нельзя поставить две функции подряд без события между ними. Нельзя поставить два события подряд без функции между ними.
Основные элементы EPC
Событие (Event)
Событие описывает состояние, которое имеет значение для процесса. Формулируется в прошедшем времени.
Обозначение: Шестиугольник (или прямоугольник с закругленными углами, в зависимости от нотации).
Примеры:
- “Заказ поступил”
- “Наличие проверено”
- “Оплата получена”
- “Товар отгружен”
Функция (Function)
Функция – это работа, задача, действие, которое нужно выполнить. Формулируется отглагольным существительным или инфинитивом.
Обозначение: Прямоугольник со скругленными углами (или просто прямоугольник).
Примеры:
- “Проверить наличие товара”
- “Сформировать счет”
- “Отгрузить товар”
- “Отправить уведомление”
Организационная единица (Organizational Unit)
Кто отвечает за выполнение функции? Организационная единица – это роль, отдел, должность.
Обозначение: Овал (или прямоугольник с закругленными углами, стоящий вертикально).
Примеры:
- “Отдел продаж”
- “Склад”
- “Бухгалтерия”
- “Менеджер”
Информационный объект (Information Object)
Какие данные используются или создаются в процессе? Документы, файлы, записи в базе данных.
Обозначение: Прямоугольник с волнистой линией снизу (или просто прямоугольник с пометкой).
Примеры:
- “Счет на оплату”
- “Накладная”
- “Заказ клиента”
- “Акт выполненных работ”
Логические операторы (Connectors)
Это то, что в BPMN называются шлюзами. В EPC их три:
| Оператор | Обозначение | Что означает | Пример |
|---|---|---|---|
| И (AND) | Круг с символом & или “AND” | Выполняются все ветви | “Одновременно уведомить менеджера и клиента” |
| ИЛИ (OR) | Круг с символом >=1 или “OR” | Выполняется одна или несколько ветвей | “Если товар есть на складе и если нужно заказать у поставщика – сделать и то, и другое” |
| Исключающее ИЛИ (XOR) | Круг с символом X или “XOR” | Выполняется только одна ветвь | “Если товар есть – отгрузить. Если нет – заказать у поставщика” |
Как читать EPC-диаграмму
EPC читается сверху вниз, слева направо. Всегда чередование: событие -> функция -> событие -> функция.
EPC vs BPMN: Что выбрать
| Характеристика | EPC | BPMN |
|---|---|---|
| Сложность | Простой, мало элементов | Более сложный, много элементов |
| Чередование | Строгое (событие-функция) | Не строгое |
| Дорожки (роли) | Через организационные единицы | Пулы и дорожки (lane) |
| Параллелизм | Через операторы AND/OR/XOR | Через шлюзы |
| Исполняемость | Не исполняемый (только для описания) | Может быть исполняемым (BPMN 2.0) |
| Экосистема | ARIS, SAP | Множество инструментов |
| Где чаще используется | Крупные корпорации, ERP-проекты | Современные IT-проекты, интеграции, автоматизация |
Когда выбирать EPC
- Проект связан с внедрением SAP или использованием ARIS.
- В компании принят стандарт EPC/ARIS.
- Процесс нужно описать быстро и просто, без излишней технической детализации.
- Аудитория – бизнес-пользователи, которым BPMN кажется сложным.
Когда выбирать BPMN
- Проект предполагает автоматизацию процессов (BPMN 2.0 поддерживает исполняемые процессы).
- Команда разработки привыкла к BPMN.
- Нужны более сложные конструкции (таймеры, сообщения, компенсации).
- Проект не связан с экосистемой SAP/ARIS.
Примеры EPC-диаграммы
Процесс выбора поставщика:
Одно из основных требований в нотации – наличие события (красные элементы на схеме) после любого действия (зелёные элементы на схеме). Исполнитель действия в нотации выражен в виде отдельного элемента (желтые элементы на схеме). Часто в нотации EPC указываются различные документы в виде входящего или исходящего артефакта действия (белые элементы на схеме).
Окончание тендера по таймеру:
На схеме мы показываем, что от действия проведения тендера к действию выбора лучшего предложения можно перейти при наступлении одного из двух событий (обратите внимание, что на схеме используется логический оператор XOR — исключающее ИЛИ, то есть может произойти либо одного событие, либо другое, но не оба):
- Тендер проведен
- Прошло 10 рабочих дней с начала тендера
Инструменты для EPC
| Инструмент | Описание |
|---|---|
| ARIS Architect / ARIS Express | Родной инструмент для EPC. ARIS Express – бесплатная версия для базового моделирования. |
| SAP Signavio | Современное облачное решение для моделирования процессов, поддерживает EPC и BPMN. |
| Draw.io | Есть библиотека с элементами EPC. Можно рисовать, но нужно знать нотацию. |
| Visio | Классика, есть шаблоны для EPC. |
| PlantUML | Можно рисовать EPC, но нет встроенных элементов, придется описывать кастомно. |