jBPM, Activiti, Camunda

Wir beschreiben drei Business Process Management Suites mit ähnlichen Features und Eigenschaften. Die drei sind über Forks entstanden und haben sich seither weiterentwickelt:

jBPM --> Activiti --> Camunda

Alle sind light-weight, open-source und in Java geschrieben. Sie erlauben die Modellierung in BPMN 2.0, Ausführung, Überwachung und Auswertung von Geschäftsprozessen über ihren Life Cycle.

BPM Tools spielen eine wichtige Rolle, wo es um die Orchestrierung mehrerer Systeme / Web Services geht. Alle drei eignen sich sowohl für Automatisierungs-, als auch Human Tasks (inkl. persönliche Task Listen und Web Forms Dialoge).
Alle drei haben ein mehr oder weniger aufwendig gestaltetes Rechtesystem (Gruppen, Rollen, ACLs) und unterstützen LDAP.
Sie sind (mit Aufwand) austauschbar; die Prozeßdefinitionen werden in XML Files abgelegt.
Es gibt verschiedene Einsatzszenarien: Embedded als Java Library, bis hin zu hoch skalierbaren Cluster Lösungen für die Workflow Runtime und Datenbank.

Bewertung 8: Prozessdefinitionen werden in XML Files bzw. Repositories abgelegt.
Prozeßlaufzeitdaten werden in relationalen DB gehalten; bei Activiti zB:

  • DB2
  • H2
  • Oracle
  • MySQL
  • MS SQL
  • PostgreSQL

Alle drei unterstützen LDAP für Single Sign On.

Vitalität hoch: jBPM ist Teil der JBOSS Middleware Suite, und als solche tausendfach in Verwendung.
Activiti wird u.a. als Workflow Komponente von Alfresco eingesetzt.
Camunda wird u.a. verwendet von Allianz, Lufthansa Technik, zalando.

Technologie: Java EE 

Lizenz: jBPM: Apache v2.0
Activiti: Apache v2.0
Camunda: Apache v2.0 

Support: Bei allen: Open Source Communities
Für Activiti gibt es professionellen Support (Alfresco Activiti).
Für Camunda ist professioneller Support erhältlich (camunda BPM Enterprise).

Quellen:

http://www.jbpm.org/
http://www.activiti.org/
http://www.camunda.org/

https://de.wikipedia.org/wiki/JBPM
http://docs.jboss.org/jbpm/v6.2/userguide/

https://de.wikipedia.org/wiki/Activiti
http://www.activiti.org/userguide/index.html#_getting_started_10_minute_tutorial

https://de.wikipedia.org/wiki/Camunda_BPM
http://camunda.org/features/

Weitere Kandidaten (nicht evaluiert):
Bonita BPM: http://de.bonitasoft.com/
RunaWFE: http://www.runawfe.org
IMIXS: http://www.imixs.org/

Für BPM Prozessmodellierung gibt es eine Vielzahl an Tools, auch Open Source, siehe:
https://en.wikipedia.org/wiki/Comparison_of_Business_Process_Modeling_Notation_tools

Anmerkung: Eine Entscheidung zwischen diesen BPM Tools könnte erst erfolgen, wenn Architektur und genauere Requirements vorliegen. Fragestellungen und ein Excel Scorecard File zum Vergleich findet man hier: https://www.holisticon.de/wp-content/uploads/2013/07/Whitepaper-BPM-Toolauswahl.pdf