Компания Haulmont представляет новый продукт для разработки процессных приложений — OpenBPM.
Что это — очередная BPMS-платформа? Чем OpenBPM отличается от других решений на рынке? Что входит в её состав? Когда ожидается релиз? Ответы на эти и другие вопросы вы найдёте в данной статье.
Что такое OpenBPM?
OpenBPM — это модульная платформа для создания процессных приложений с использованием BPMN 2.0 (Business Process Management and Notation). Ключевая особенность платформы в покрытии всех аспектов разработки процессных приложений. Платформа включает движок бизнес-процессов OpenBPM Engine и набор инструментов, которые значительно упрощают взаимодействие с этим движком и делают разработку на open-source стеке эффективнее по сравнению с BPMS.
Предпосылки создания платформы
Haulmont — продуктовая компания с богатым опытом в разработке профессиональных инструментов для создания программного обеспечения. Одним из ключевых продуктов компании является Jmix (ранее известная как CUBA Platform) — платформа для RAD-разработки на Java.

Jmix предоставляет расширение — Jmix BPM Add-on, предназначенное для создания процессных приложений. В рамках дополнения был реализован веб-редактор для встроенного движка бизнес-процессов Flowable, а также его альтернативная версия, встроенная в среду разработки IntelliJ IDEA.
В сочетании с базовыми инструментами для создания модели данных и генерации экранов от плагина Jmix, платформа стала альтернативой BPMS. Подход создания процессных приложений “от кода”, полюбился пользователям Jmix и аддон стал самым популярным из платной линейки дополнений.

А встроенный редактор от компании bpmn.io, был положительно оценен самой компанией у себя в блоге.

Но чтобы воспользоваться этими инструментами, необходимо создать своё приложение на базе Jmix. Помимо этого, в аддоне реализована работа с движком только во встроенном формате. Это отличный вариант для небольших приложений, но не такой гибкий для создания микросервисных приложений и оркестрации систем. Мысль о том, что наши наработки могут принести пользу сообществу разработчиков за пределами Jmix натолкнула нас на создание нового продукта OpenBPM. Однако выделить из платформы редакторы и движок в отдельный сервис не очень похоже на новый продукт. Мы решили пойти дальше и обратились к экспертам из процессной разработки с вопросами, а какие проблемы есть в BPMS.
Проблемы современных BPMS
Мы провели серию встреч не только с разработчиками, но и с аналитиками, архитекторами, в общем со всеми участниками процессных команд. У опрашиваемых был опыт автоматизации не только с помощью BPMS, но и с помощью open-source движков.
В ходе анализа выяснилось, что ключевым решением для многих выступает движок бизнес-процессов Camunda 7. Эта технология доказала свою эффективность в создании сложных систем для автоматизации процессов на крупных предприятиях.
Также мы выявили, что, несмотря на широкое применение BPM, многие компании сталкиваются с рядом типичных проблем. Эти сложности часто связаны как с ограничениями самих платформ, так и с особенностями их внедрения и эксплуатации. Ниже мы рассмотрим ключевые проблемы, которые были выделены на основе обратной связи:
Неудобство BPM инструментов
Для автоматизации процесса нужно использовать несколько приложений и постоянно между ними переключаться.
Проблема коммуникации
Отсутствие общего стандартизированного подхода к взаимодействию аналитиков и разработчиков при разработке бизнес-процессов.
Ограничения BPMS
Многие системы управления бизнес-процессами имеют жесткие архитектурные ограничения и сложность кастомизации.
Сложность open-source движков
Несмотря на гибкость и доступность, open-source решенияй, такие системы как Camunda, требуют глубоких технических знаний для настройки и поддержки.
Camunda 7 EOL
Завершение жизненного цикла Camunda 7 поднимает вопрос: как обеспечить безопасность и стабильность дальнейшем работы системы в условиях отсутствия официальной поддержки.
Основными участниками процессных команд, являются именно аналитики и разработчики, поэтому мы уделили им особое внимание и выяснили следующие моменты:
Разработчики
У разработчиков нет глобальных проблем с BPM, кроме одной — они не хотят использовать BPM, а тем более BPMS. Они в состоянии взять State Machine и реализовать хорошее производительное приложение. Да, это будет долго, но это точно не проблема разработчика. Все эти страшные буквы заставляет их использовать бизнес. А BPMS вообще навязывают большой слой абстракции, который ограничивает в создании уникальных решений. Но эту проблему решила Camunda 7, предложив технический подход к созданию процессных приложений, с обширной документацией, а также неплохой производительностью (но это тема совсем другой статьи).
Аналитики
С аналитиками обратная история. Им нравится BPM и Low Code подход в разработке — нарисовал, запустил и проверил. Многие хорошо знакомы с нотацией BPMN 2.0, а некоторые даже жаждут создавать прототипы бизнес-процессов, но упираются в сложность инструментов. Например, чтобы создать прототип процессного приложения, аналитику необходимо либо углубиться в проприетарную технологию, либо начать писать код. А это затрудняет и замедляет процесс разработки прототипа системы.
Компоненты платформы
Проанализировав полученную информацию, мы пришли к выводу, что разнообразие задач и потребностей участников процессных команд требует создание целого семейства продуктов. Основная их цель — сделать работу каждого участника процесса проще и эффективнее. Мы понимаем, что современные инструменты должны не только решать текущие задачи, но и быть гибкими. Именно поэтому мы поставили перед собой дополнительное условие: платформа должна быть построена исключительно на open-source технологиях.
Мы выбрали подход создания именно инструментов для разработки, которые ускоряют классический подход разработки процессных приложений, а также не подсаживают пользователей на проприетарные технологии.
В итоге у нас получился следующий набор компонентов:

OpenBPM Studio
OpenBPM Studio — это плагин для среды разработки программного обеспечения на базе IntelliJ IDEA. В плагине реализована навигация по элементам процессного приложения, а также интегрированы визуальные редакторы для создания бизнес-процессов, пользовательских форм и таблиц принятия решений.


В основе OpenBPM Studio лежат визуальные редакторы от bpmn.io, которые представляют собой JavaScript-библиотеки. Для их интеграции в IntelliJ IDEA мы использовали встроенный браузер JCEF (Java Chromium Embedded Framework). Это решение позволило нам совместить мощь веб-технологий с нативными возможностями IDE.
Мы значительно переработали панель конфигурации для пользовательских форм и бизнес-процессов, сделав её более удобной и интуитивно понятной. Кроме того, мы добавили возможность автоматической генерации шаблонного кода, что помогает разработчикам избавиться от рутинных задач и сосредоточиться на решении более сложных проблем.
OpenBPM Studio также предлагает дополнительную функцию — удобную навигацию между основными компонентами приложения.
Ключевые функции:
Встроенный редактор бизнес-процессов
Встроенный редактор пользовательских форм
Встроенный редактор DMN-таблиц
Улучшенная навигация по между элементами процесса и связанным кодом
Просмотр структуры процессного приложения
Расширенная кодогенерация
OpenBPM Workspace
OpenBPM Workspace — это веб-приложение, разработанное специально для аналитиков. В нём мы реализовали многие возможности, которые предоставляет студия. Используя Workspace, аналитик может создавать бизнес-процессы, пользовательские формы и многое другое, используя такие же редакторы от BPMN.IO, как в профессиональной среде разработки.


Одной из ключевых возможностей OpenBPM Workspace является возможность сборки готового прототипа бизнес-процесса. Аналитик может загрузить созданный прототип на подготовленный движок, чтобы протестировать его логику и корректность работы. На текущий момент аналитик может реализовать бизнес-логику с помощью скриптов, а в будущем мы планируем улучшить взаимодействие с приложением с помощью AI-агентов.
Результатом работы в OpenBPM Workspace становятся те же артефакты, которые создаются разработчиками в профессиональной среде OpenBPM Studio. Кроме того, Workspace поддерживает интеграцию с GitLab, позволяя аналитикам загружать результаты своей работы напрямую в репозиторий.

Это упрощает взаимодействие между командами и обеспечивает прозрачность процесса разработки.

Ключевые функции:
Встроенный редактор бизнес-процессов
Встроенный редактор пользовательских форм
Встроенный редактор DMN-таблиц
Возможность работы с несколькими движками
Работа с внешним движком бизнес-процессов
Интеграция с системой контроля версий GitLab
OpenBPM Control
OpenBPM Control — это веб-приложение, разработанное для администраторов систем, которые управляют удаленными движками бизнес-процессов. Построенное на базе фреймворка Jmix, приложение предоставляет удобный интерфейс для мониторинга и управления бизнес-процессами. Оно позволяет администраторам запускать, останавливать и отслеживать выполнение процессов, а также проверять их корректность.


По своей функциональности OpenBPM Control сопоставим с Camunda Cockpit, но выделяется возможностью подключения нескольких движков и легко кастомизируется благодаря Jmix.
Ключевые функции:
Мониторинг бизнес-процессов
Управления шаблонами и экземплярами бизнес-процессов
Возможность подключения нескольких движков
Управление инцидентами
Настройка уровней доступа
Возможность самостоятельной кастомизации
OpenBPM Engine
OpenBPM Engine — это движок бизнес-процессов на базе Camunda 7. Данный сервис является ключевым в линейке OpenBPM. После нескольких встреч с экспертами удалось выяснить что у Camunda 7 всего две основные проблемы. Это проблема с завершением официальной поддержки и проблема производительности.
Первую проблему мы стремимся решить, взяв на себя ответственность по дальнейшей поддержке, в которую будут входить консультации, обновление версий и исправление уязвимостей (Common Vulnerabilities and Exposures).
Вторая проблема с производительностью зачастую связана именно с некорректным использованием движка. Чаще всего она встречается у молодых команд, которые ранее не имели опыта работы с Camunda. Данную проблемы решаем с помощью внедрения в платформу лучших практик разработки на Camunda. Одной из таких практик является отделение бизнес-информации от контекста бизнес-процесса.
Дополнительные функции:
Совместимость с суверенным стеком
Поддержка от российского вендора
Реестр отечественного ПО
OpenBPM TaskList
OpenBPM TaskList — это простое кастомизируемое веб-приложение, которое является агрегатором пользовательских задач со всех движков бизнес-процессов. Мы понимаем, что в продакшене чаще всего реализуют свой собственный интерфейс или внедряют пользовательские формы в существующие приложения. Поэтому задача нашего сервиса — предоставить простой визуальный интерфейс для этапа проектирования и тестирования бизнес-процессов. Этот функционал будет особенно полезен тем, кто только начинает знакомство с Camunda или задумался о кастомизации UI под требования заказчика.


Особенности функции:
Функциональный интерфейс для прототипирования
Агрегирование пользовательских задач из разных движков
Возможность самостоятельной кастомизации
Планы
Сейчас мы планомерно выпускаем компоненты нашей большой платформы. Основной упор мы делаем на фичи, которые помогут участникам процессных команд разрабатывать приложения быстрее и эффективнее. Вот некоторые задачи, которые мы хотим реализовать в ближайшее время:
Поддержать валидацию диаграмм бизнес-процессов в визуальных редакторах
Реализовать гибкую настройку модели данных в OpenBPM Workspace
Интегрировать AI-агенты для проектирования бизнес-процессов
Поддержать автоматическое масштабирование движков бизнес-процессов с помощью OpenBPM Control
Добавить удобный отладочный механизм диаграмм бизнес-процессов
Как попробовать?
Надеемся, мы подогрели интерес к продукту OpenBPM. Некоторые компоненты платформы уже сейчас доступны для использования.
Вы можете установить плагин OpenBPM Studio для IntelliJ IDEA и запустить OpenBPM Control для вашей Camunda 7. Чтобы облегчить ваше знакомство с платформой, мы подготовили раздел "Быстрый старт" на нашем сайте, где вы найдете подробные инструкции по началу работы с OpenBPM.
Для вашего удобства мы также развернули демо-стенд с OpenBPM Control, где вы можете ознакомиться с интерфейсом приложения и запустить тестовый процесс.

Если у вас появились вопросы или предложения, вы можете написать на info@openbpm.io или в наш telegram канал.