La tecnología detrás de nuestro BPM Engine: Camunda

Header Decision Model and Notation

Si recordáis, hace no mucho hablamos por aquí del estándar Decision Model and Notation  enfoque para describir y modelar decisiones repetibles dentro de las organizaciones, y del que hacemos uso en la Onesait Platform.

Este DMN lo tenemos integrado, como decíamos, con Camunda, que es una plataforma BPM que surge como fork de Activiti, y a lo largo de estos años ha ido consiguiendo un nombre en el mundo de los BPMs, tanto es así que ahora mismo, como veremos, es una opción a considerar por lo que ofrece.

https://unpocodejava.files.wordpress.com/2018/09/image005.jpg

Pero, ¿de qué componentes se conforma Camunda? Veámoslo.

BPMN WorkFlow Engine

  • Incluye soporte para orquestación de microservicios y gestión de tareas humanas.
  • Puede funcionar embebido en una aplicación Java (tiene un starter Spring Boot).
  • Soporta la mayoría del estándar BPMN 2.0.
  • Ofrece un API REST para arrancar procesos, completar tareas, etc.
  • Ofrece un API Java para simplificar su manejo.
  • Es un motor de alto rendimiento con funcionalidad muy interesantes como cacheo, gestión de la concurrencia, savepoints, etc.
  • Soporta persistencia en diferentes bases de datos relacionales.
  • Ofrece funcionamiento en clústering con balanceo de carga.
  • Diferencia entre modo «runtime» (lo necesario para ejecutar) e «histórico» (para informes, auditoría, etc.).

Motor de Reglas DMN

  • Soporta el estándar 1.1 de Decision Model and Notation (DMN), que es el estándar en BPM para toma de decisiones de negocio.
  • Soporta Tablas de Decisiones.
  • Ofrece un API REST para consultar reglas:
  • También soporta el lenguaje Friendly Enough Expression Language (DMN FEEL).

Modeler

  • Se trata de una aplicación de escritorio muy sencilla de usar que permite crear diagramas de proceso BPMN y tablas de decisión DMN.
  • Soporta BPMN 2.0, CMMN 1.1 y DMN 1.1.
  • Permite crear los modelos ejecutables en el BPM Engine.
  • Permite la extensión vía Templates (para por ejemplo crear un Mail Task que veríamos en la paleta).
  • Soporta el concepto de plugins para extender la funcionalidad.

Lista de tareas

  • Se trata de una aplicación web lista para usar que permite a los usuarios finales trabajar en las tareas que se les asignan.
  • El Engine crea tareas basadas en el modelo BPMN, y asigna estas a los usuarios definidos en el modelo.
  • El Engine crea tareas basadas en el modelo BPMN, y asigna estas a los usuarios definidos en el modelo.

Cockpit

  • Permite monitorizar flujos de trabajo y decisiones en producción para descubrir, analizar y resolver problemas técnicos.
  • Es una herramienta muy interesante para las operaciones de procesos técnicos.

Administración

  • Permite administrar la aplicación web y los usuarios de la API REST, asignando grupos, permisos, integrando con un LDAP para la administración de usuarios, etc.

Optimize

  • Permite crear informes y organizarlos en un cuadro de mando.
  • Permite configurar alertas y mapas de calor, identificar cuellos de botella, etc.

Camunda tiene licencia Apache 2.0 y ofrece una versión Community (sin Cockpit ni Optimize), y un modelo de suscripción para la versión Enterprise y sus más de 100 clientes, entre los que se encuentran AT&T, T-Mobile, Universal Music, Zalando y muchos más.

Si os interesa conocer un poco más sobre este software, echadle un ojo a este white paper comparando Camunda con otras soluciones BPM.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *