tutorial español java architecture workflow jbpm bpm

java - español - ¿Qué motor de flujo de trabajo elegir?



jbpm windows (4)

Actualmente estamos en el proceso de evaluar un motor de BPM y realmente apreciaría la contribución de la comunidad. Estoy haciendo mi propia diligencia debida, pero también me gustaría escuchar sobre la sugerencia basada en historias de implementación.

Mis principales criterios de evaluación están debajo

  1. fuente abierta y licencia amigable OEM
  2. instalaciones de producción (las historias de éxito son de gran ayuda)
  3. soporte comercial disponible
  4. Soporte de estándares abiertos - BPMN
  5. creación / montaje dinámico del flujo de trabajo basado en la entrada
  6. incrustable

Actualmente estoy evaluando Activiti y JBPM. Bonita open BPM parece ser un buen candidato pero nunca lo usó. ¿Ustedes tienen alguna implementación exitosa en Bonita?


Acabo de hacer una evaluación de Activiti vs jBPM.

De hecho, parece haber muy poco entre las dos soluciones.

  1. Activiti es Apache V2, jBPM 5.0 es también Apache V2.
  2. Actualmente estamos usando Activiti, pero el proyecto todavía está en desarrollo, por lo que no puedo comentar sobre su robustez en la producción.
  3. jBPM está comenzando el proceso de productización, por lo que el soporte para 5.x estará disponible en el primer trimestre de 2012, consulte la diapositiva 32: demostración de jBPM . jBPM 4 no era compatible con Redhat.
  4. jBPM 4.x no era compatible con BPMN 2.0, pero sí 5.x, Activiti también. Acaba de lanzar jBPM 5.0, que incluye soporte para BPMN 2.0. Entonces, ahora ambas soluciones son compatibles con BPMN 2.0.
  5. No estoy muy seguro de lo que quiere decir con esto, pero puede hacer mucho a través de ambas API
  6. Una vez más, no estoy seguro de lo que quiere decir con esto, ¿quiere decir integrado como parte de un servidor de aplicaciones, en cuyo caso, sí para ambas soluciones.

Uno de nuestros criterios para jBPM fue la interacción con Guvnor, y cuando descargué y ejecuté la instalación de demostración para jBPM (28/03/2011) y todavía parecía haber algunos errores importantes ( GUVNOR-1274 ), así que personalmente probaría mucho más antes de elegir esta solución.

De hecho, recomendaremos una de las dos soluciones anteriores, pero aún no estamos seguros de cuál será, la veremos más de cerca más adelante este año.


Aunque tengo poca experiencia práctica, realicé un pico de investigación en las opciones de BPM de Java recientemente. Lo reduje a 3:

La comunidad de Drools parece más activa, las herramientas son mejores, el motor de reglas era muy sofisticado (ya que esta era la base de drools) pero el proceso de negocios circundante estaba bien integrado. Sin embargo, jBPM se centró más en los procesos de negocio y en la astucia también. Ambos son administrados por JBoss

Otras comparaciones entre Drools y JBPM se pueden encontrar aquí:

Drools v jBPM

Si tiene un equipo de desarrollo seguro y los requisitos no son demasiado complejos, siempre vale la pena considerar rodar el suyo. Los BPM pueden conducir a modelos de dominio anémicos (como se describe en esta publicación Pros y contras de Rules Engine sobre motores de reglas) mientras intenta adoptar sus modelos de dominio para que se ajusten a dichos sistemas, también los sistemas bien diseñados personalizados para su negocio siempre serán más efectivos .

En lo que respecta a su criterio:

Licencia de código abierto y OEM amigable : Drools utiliza una licencia liberal ''ASL / BSD / MIT-esque'', la comunidad está activa. jBPM usa las licencias de apache, eclipse y MIT

Instalaciones de producción . Entiendo que drools es utilizado por muchas compañías de seguros y comprobadores de crédito, no estoy seguro de que un jBPM

Soporte comercial disponible para ambos

Soporte de Estándares Abiertos - BPMN - Ambos implementan BPMN y debido a la naturaleza de los proyectos de código abierto están muy orientados a estándares.

Creación / ensamblaje dinámico del flujo de trabajo basado en la entrada. Ambos, aunque generalmente se implementan fácilmente de forma manual.

Eembeddable : ambos ofrecen sistemas completos, pero están modulados, por lo que deben integrarse en los sistemas existentes.


Mi no uso una pila de MS? WWF 4.0 para el motor, diseñador de re-hostable. WCF para la comunicación. MS Sql Server para BI. Una gran cantidad de desarrolladores de .NET para ayudar a construir y personalizar. Aparte de un objetivo de Windows, no hay dependencia de un proveedor externo.


Bonita es también un excelente motor de flujo de trabajo de código abierto escrito en Java