Pregunta

Estoy buscando un motor de flujo de trabajo sencillo Java que:

  • puede manejar ambos pasos automatizados y manuales (basado en GUI) dentro de un flujo de trabajo
  • apoya larga ejecución, las tareas asíncronas
  • proporciona soporte para reiniciar los flujos de trabajo en caso de un fallo del servidor
  • almacena un historial de auditoría completa de los flujos de trabajo ejecutados previamente
  • proporciona un fácil acceso a estos datos historial de auditoría

Los posibles candidatos incluyen el nuevo motor de procesos de flujo en Drools Drools 5, y OSWorkflow de OpenSymphony. Desde mi comprensión actual, OSWorkflow parece ofrecer más de lo que quiero (Drools Flujo no parece guardar mucho en la forma de un historial de auditoría); Sin embargo, la versión más reciente de OSWorkflow estaba de nuevo a principios de 2006. ¿Es un error usar ahora OSWorkflow cuando ya no está bajo desarrollo activo?

¿Alguien tiene mucha experiencia con cualquiera / ambos de estos marcos? ¿Hay otros motores de flujo de trabajo que debería estar mirando? Todas las recomendaciones son bienvenidos -. Gracias

¿Fue útil?

Solución

Solo para aclarar cómo Drools flujo es compatible con los requisitos que usted está describiendo (refiriéndose a la Drools Flow documentación ):

  • puede manejar ambos pasos automatizados y manuales (basado en GUI) dentro de un flujo de trabajo

Los usos Drools de flujo (de dominio específico) elementos de trabajo (capítulo 8) para interactuar con sistemas externos. Estos podrían ser automatizados servicios, o un componente de gestión de tareas humanas (Capítulo 9) para las tareas manuales. Este componente de tarea es totalmente conectable pero Drools Flujo soporta una implementación de WS-HumanTask fuera de la caja. Babea 5.1 incluirá listas de tareas basadas en la Web, incluyendo formas de trabajo personalizado.

  • apoya larga ejecución, las tareas asíncronas

El motor le permite iniciar procesos que pueden vivir durante mucho tiempo. El proceso es compatible con diferentes tipos de estados de espera (nodos de elemento de trabajo, nodos, Event esperar linfáticos, sub-proceso, etc.) para modelar procesos de larga duración. tareas externas pueden integrarse sincrónica o asincrónica.

  • proporciona soporte para reiniciar los flujos de trabajo en caso de un fallo del servidor

El estado de tiempo de ejecución de todas las instancias de proceso puede ser fácilmente almacenado en una fuente de datos mediante la activación de persistencia (capítulo 5.1). Por lo tanto, todos los procesos, simplemente se pueden restaurar en el estado que tenían después de una caída del servidor.

  • almacena un historial de auditoría completa de los flujos de trabajo ejecutados previamente

Drools flujo genera eventos acerca de lo que está sucediendo durante la ejecución de los procesos. Al activar el registro de auditoría (capítulo 5.3), estos eventos pueden ser almacenados en una base de datos, proporcionando un historial de auditoría completa de lo sucedido durante la ejecución.

  • proporciona un fácil acceso a estos datos historial de auditoría

Los datos de la historia se almacena utilizando un par de tablas de bases simples. Estas tablas se pueden consultar directamente, o se puede utilizar para la generación de informes personalizados (Capítulo 12.1) que muestran los indicadores de rendimiento clave que son relevantes para su aplicación.

Además, creemos que un enfoque orientado al conocimiento, que le permite combinar a la perfección con las normas y procesos de procesamiento de eventos siempre que sea necesario, le ofrece más potencia y flexibilidad en comparación con los motores orientados a los procesos antes mencionados.

Kris Verlaenen
Drools flujo de plomo

Otros consejos

No he tenido ninguna experiencia con los candidatos que usted ha mencionado, pero a juzgar por los proyectos que he trabajado en las que podría ser digno de mirar jBPM . Un buen número de desarrolladores que he trabajado confían en él y creo que se ajusta a sus criterios bastante bien.

Drools flujo es en mucho más sofisticado y poderoso que tanto jBPM y OSWorkflow y el desarrollo se está moviendo a un ritmo más rápido que cualquiera de los dos. Ofrecemos una gran cantidad de detalles y capturas de pantalla aquí: http://www.jboss.org/drools/drools-flow.html

Sin embargo, en resumen. Se obtiene la depuración interactiva a través de reglas, flujo de trabajo y procesamiento de eventos. Tiene un conjunto más amplio de construido en los nodos, lo que mejora el número de problemas se puede modelar directamente de forma declarativa. Correlacionada (a través de normas, procesos y eventos) el registro de auditoría y presentación de informes. Proporcionamos un mecanismo muy simple y potente para la creación de flujo de trabajo específico de dominio, a través de nuestros elementos de trabajo enchufables.

Drools 5.0 acaba de ser puesto en libertad y 5.1 va a seguir en los próximos 4 a 6 semanas. Estamos añadiendo la simulación y prueba de esto, el uso de un DSL MVEL, que creemos que va a ser un gran éxito. Esto también incluirá un trabajo más extenso para interfaces gráficas de usuario de administración remota para los procesos, todo ello integrado en Guvnor.

El equipo Drools también se enorgullece de ser más accesible que cualquiera de esos otros proyectos mencionados. No dude en hacer estallar en IRC para charlar.

Marcar

Tengo experiencia con ambos .. También yo estaba involucrado en una herramienta para la migración de los procesos existentes en OSWorkflow a Drools 5.0. Usted puede leer un artículo sobre esto en: http: / /blog.athico.com/2009/01/drools-flow-and-osworkflow-migration.html. Es importante mencionar que esta herramienta de migración / traductor fue creado para permitir viejos proyectos que están utilizando OSWorkflow actualizar a Drools 5.0 y aprovechar las ventajas de todas las Drools 5.0 Negocios Plataforma de Integración.

Saludos

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top