Семейство решений на основе jBPM
Данный класс решений основывается на общей технологической базе – Jboss – семейство легких, облачных продуктов корпоративного уровня компании RedHat.
Базовый продукт jBoss workflow version 1.0 был создан в 2003 году (см. рисунок ниже). В 2011 году один из разработчиков jBPM Tom Baeyens перешёл в компанию Alfresco и используя спецификации и кодовую базу jBPM совместно с компанией Camunda создал BPMS Activiti.
В период 2003-2013 года на основе jBPM версии 3 подразделение консалтинговой группы РУНА создает BPMS runaWFE с поддержкой интеграции с Alfrecso.
Версии jBoss workflow и решения на их основе представлены на рисунке:
jBPM
Помимо основного ядра, обеспечивающего поддержку бизнес-процессов на протяжении всего жизненного цикла jBPM поддерживает множество дополнительных функций и инструментов:
- Редактор Eclipse и веб-редактор для поддержки механизма графического создания бизнес-процессов (drag & drop).
- Поддержка подключаемых «ручных» задач и служб на основе WS-HumanTask для включения задач, выполняемых сотрудниками.
- Консоль управления, поддерживающая управление экземплярами процесса, списки задач и управление формой задачи, формирование отчетности.
- Дополнительный git-репозиторий моделей процессов для версионирования моделей и запуска необходимой версии процесса.
- Запись истории (для запросов / мониторинга / анализа).
- Интеграция с Seam, Spring, OSGi и т.д..
Начиная с версии 6.0 совместно с jBPM в рамках компании RedHat стали развиваться и другие интеграционные продукты:
- Drools Rule Engine – система управления бизнес-процессами на основе процессора правил.
- KIE (Knowledge Is Everything) – интеграционная система, включающая в себя кроме jBPM и Drools продукты:
- OptaPlanner – система, обеспечивающая оптимизацию вариантов использования бизнес-ресурсов, таких как маршрутизация транспортных средств, составление расписаний, оптимизация облачных ресурсов, планирование заданий, оптимальной упаковки и т.п.
- UberFire – веб-фреймворк для создания расширяемых рабочих столов и консольных приложений.
- Dashbuilder – полнофункциональное веб-приложение, которое позволяет неспециалистам визуально создавать информационные интерфейсы (dashboard) для отображения и мониторинга бизнес-информации.
Применение данных решений значительно расширяет гибкость создаваемых бизнес-решений и упрощает механизм создания конечного продукта.
Достоинства jBPM
- Высокая гибкость и простота динамической модификации создаваемых решений.
- Встроенная поддержка версионности моделей бизнес-процессов.
- Богатый набор инструментария по созданию качественного продукта с поддержкой аналитики и мониторинга бизнес-процессов.
- Широкие возможности по интеграции с внешними системами и приложениями.
- Возможность моделирования сложных процессов.
- Поддержка docker-контейнеризации.
Недостатки jBPM
- Высокие требования к аппаратному обеспечению сервера.
Activiti
Функциональные возможности Activiti в целом совпадают с функциональными возможностями jBPM, так как оба проекта в процессе своего развития обменивались идеями.
В рамках Activiti существует проект Camunda, в котором была реализована концепция механизма совместного использования процессов и встроенного механизма их обработки. Однако в настоящее время эти функциональные возможности также внедрены и в Activiti.
В настоящее время оба проекта разделяют общую кодовую базу. Activiti более ориентирована на разработчиков ПО, Camunda – на потребителей.
Достоинства Activiti
- Широкие возможности по интеграции с внешними системами и приложениями.
- Поддержка механизма совместного использования процессов и встроенного механизма их обработки.
- Возможность моделирования сложных процессов.
- Поддержка системы управления документооборотом Alfresco.
Недостатки Activiti
- Тяжеловесность создаваемых решений.
- Ограниченный список поддерживаемых баз данных.
RunaWFE
RunaWFE – свободная система управления бизнес-процессами и административными регламентами с открытым кодом. Распространяется под свободной лицензией LGPL. RunaWFE использует как собственные решения, так и некоторые идеи проектов JBoss jBPM и Activiti, содержит большое количество компонентов, задача которых – обеспечить удобную работу конечного пользователя.
Достоинства RunaWFE
- Возможность интеграции существующих разнородных приложений предприятия.
- Простая интеграция с реляционными базами данных.
- Боты для выполнения автоматических заданий.
- Система безопасности, позволяющая интеграцию с LDAP/MS Active Directory.
- Интеграция с Alfresco.
- Локализация на русский язык.
Недостатки RunaWFE
- Ориентация на довольно старую кодовую базу jBPM.