Camunda — что это такое?
Camunda — это BPM-движок для автоматизации бизнес-процессов. Что значат эти слова и какую пользу вы можете получить от использования этого движка читайте в этой статье.
Какое вам дело до Camunda
Camunda может очень сильно, в десятки раз (например если вы устали от «статусов»), снизить затраты на автоматизацию бизнес-процессов и\или оркестрацию микросервисов. Это достигается за счёт:
- Camunda поддерживает BPMN, нотацию описания бизнес-процессов. В BPMN можно нарисовать логику любой сложности, а движок её выполнит. Большинство процессных вещей, которые можно сделать в BPMN, делать в чистом коде дороже в десятки раз. Узнать больше о BPMN можно из моей рассылки.
- Открытые исходники позволяют однозначно понимать как работает софт, а отличная документация (вот описание всех rest методов) позволяет очень быстро врубиться в то, как интегрировать движок в свою инфраструктуру.
- Camunda поддерживает последнюю версию Java, или вообще любой JVM-язык — Kotlin, Scala и т.д.
- Отличная архитектура внутри — движок делает то, что от него ожидается самым очевидным и ожидаемым способом. Нет никаких лишних абстракций, которые необходимо изучать.
- Удобство разработки, тестирования и встраивания в CI\CD за счёт того, что Camunda можно использовать просто как библиотеку в Java-приложении. Camunda не ограничивает разработчика какими-то своими условиями. Используйте любые удобные инструменты — статистические анализаторы, тестовые фрейморвки, средства сборки, средства контроля версий.
Для тех, кто торопится Я разработал бесплатный облачный сервис для рисования и обсуждения BPMN, который поддерживает Camunda, с коллегами. Он очень экономит время и делает обсуждение удобным. Регистрируйтесь!
Компоненты системы
Camunda — это набор приложений Modeler, Task List, BPMN Engine, DMN Engine, Cockpit, Admin,Optimize.
- Modeler (скачать) — это приложение для создания моделей BPMN процессов. Эти модели нужны для других частей системы.
- Task list — это веб-приложение, в котором исполнители выполняют задачи, поставленные на них бизнес-процессом.
- BPMN Engine — это непосредственно движок, которые отвечает за интерпритацию BPMN в объекты JAVA, сохранение объектов в базе и реализацию других вещей (типа листенеров активностей), которые крутятся вокруг процессов.
- DMN Engine — аналогично BPMN Engine, только для DMN.
- Cockpit — это веб-приложение для просмотра состояния процессов. В бесплатной версии он сильно обрезан по функционалу.
- Admin — это веб-приложение для управления правами пользователей и пользователями.
- Optimize — это веб-приложение для анализа бизнес-процессов. Оно платное.
Слабая связность компонентов между собой позволяет их заменять, разрабатывая свои. Например, я написал свой Cockpit, который намного функциональнее бесплатного.
Как попробовать Camunda самому
Движок можно использовать в 2 сценариях:
1. Standalone-сервер — это значит что вы запускаете отдельное приложение Camunda и закидываете в него свои процессные приложение в виде .war-файлов. В этом видео указан полный цикл разработки таких приложений.
2. Библиотека внутрь java-приложения — это значит, что вы указываете зависимости в своем приложении и работаете с camunda через Java API.
В этом видео можно посмотреть как сделать своё первое stand-alone приложение:
Весь движок и часть веб-приложений бесплатны, начать использовать их можно прямо сейчас.
В итоге
За счёт бесплатности и классной архитектуры система может решать кучу ваших проблем и прямо сейчас. Если вы планируете её использовать в своей работе и хотите быстро разобраться, как интегрировать этот BPM-движок в вашу инфраструктуру и как лучше построить архитектуру приложений, то мои консультации могут вам помочь.
Вы уже работаете с системой? Как вам? Расскажите в комментариях и поделитесь этой статьей в соц.сетях.
Комментарии