Реализация бизнес-процессов через Camunda¶
Бизнес-процессы в системе реализованы на базе движка бизнес-процессов Camunda.
Моделирование¶
Моделирование процессов выполняется через модуль MetaModelService.
Модель бизнес-процессов состоит из:
Process definitions - описания процессов (отображаемое имя, описание, назначения).
BPMN-схемы - диаграммы бизнес-процессов.
Обработчиков - пользовательских расширений, которые могут быть использованы при моделировании процессов (слушатели задач, слушатели исполнения и сервисные задачи).
При публикации модели бизнес-процессов выполняется деплой bpmn-схем в Camunda, после чего процессы становятся доступными для запуска.
Работа с процессами¶
Между основными сервисами модуля и Camunda реализована "прослойка" Unidata Workflow Engine.
Unidata Workflow Engine состоит из трех основных компонентов:
UnidataProcessEngine - компонент, который переадресовывает вызовы по работе с процессами в Camunda (деплой диаграмм, запуск БП, назначение/выполнение задач и др.)
UnidataBpmnParser - кастомизированный парсер bpmn-диаграмм. Camunda использует этот парсер во время исполнения процессов.
WorkflowListenerPlugin - плагин для Camunda, который регистрирует системные слушатели задач и процессов (используется для индексации задач и процессов в Opensearch)
Все сервисы модуля взаимодействуют с Camunda через UnidataProcessEngine.
Во время исполнения процессы и задачи из Camunda индексируются в Opensearch (Elasticsearch). Дальнейшее взаимодействие с ними выполняется через поисковый сервис системы SearchService.
Рисунок 1 – Схема взаимодействия