© Excellent backgrounds/Shutterstock.com
Java Magazin
Business Process Management

Kann mehr, als man denkt

Auf Konferenzen höre ich oft: „BPM macht ihr? Oh ja, das habe ich auch mal ausprobiert. Das hat nicht funktioniert. Es war viel zu komplex, zu teuer und auch einfach ätzend“. Das ist schade, denn es ist ein total veraltetes Bild. BPM ist für fast jede betriebliche Software relevant, moderne Tools sind Open Source, leichtgewichtig und funktionieren sehr gut. Und letztendlich ist BPM auch wirklich sexy - im Ernst!

Bernd Rücker


Ein Wort der Warnung vorweg: Als Gründer der Camunda, Hersteller der gleichnamigen Open-Source-BPM-Plattform, bin ich natürlich nicht neutral. Als BPM-Enthusiast nehme ich aber gerne eine möglichst neutrale Sichtweise ein, um zu verstehen, wie BPM wirklich helfen kann. Letzteres versuche ich auch in diesem Artikel. Konkrete Beispiele basieren aber auf meiner Praxiserfahrung mit der Camunda-Plattform, da diese meine tägliche Arbeit bestimmt.

Das BPM von gestern: schwergewichtig, komplex, proprietär – und teuer

„Business Process Management“ (BPM) meint die ganzheitliche Betrachtung von Geschäftsprozessen. Das umfasst viele organisatorische Aspekte, heutzutage aber auch die technische Umsetzung. Hier kommen wir als Entwickler ins Spiel, zum Beispiel wenn „Workflow Engines“ grafisch beschriebene Geschäftsprozesse direkt ausführen.

Hierbei wurden in der Vergangenheit viele Fehler gemacht, zum Beispiel waren Engines schwergewichtig, komplex und teuer. Eine „Process Engine“, die etwas auf sich gehalten hat, kam als eigener abgeschotteter Server daher, der am besten noch dediziert Blech unter der Haube haben musste. Es gab Modellierungsstandards wie BPEL (Business Process Execution Language), die technisch ausgerichtet waren und nicht von Fachbereichen verstanden werden konnten. Außerdem zwang BPEL den Entwickler zur Kommunikation mit Web Services, was in der Praxis eigentlich immer SOAP (Simple Object Access Protocol) bedeutete. Nicht selten wurde dann ein Workflow innerhalb einer Java-Anwendung dank SOAP-Remote-Kommunikation zum Fremdkörper, und Transaktionalität rückte ohne Not in weite Ferne.

Das BPM von heute: neue Standards, offene Engines, agile Nutzer

Die Situation hat sich glücklicherweise in den letzten Jahren vollständig gedreht. Auch wenn das leider noch nicht überall angekommen ist. Zum einen gibt es mit BPMN (Business Process Model and Notation), CMMN (Case Management Model and Notation) und DMN (Decision Model and Notation) Standards, die dem Anspruch gerecht werden, sowohl fachlich lesbar als auch technisch ausführbar zu sein. Zum anderen gibt es eine neue Generation von einbettbaren BPM Engines, die nur eine Java Library sind. Sie benutzen unter der Haube relationale Datenbanken. Diese Architektur erlaubt es, die Engine auch In-Memory in einem JUnit-Test hochzufahren, über Spring Boot oder Dropwizard einzubinden oder in seine eigene Java-Anwendung zu integrieren. Tabelle 1 zeigt bekannte Open Source BPM Engines dieser Gattung.

ActivitiBonita BPMCam...

Java Magazin
Business Process Management

Kann mehr, als man denkt

Auf Konferenzen höre ich oft: „BPM macht ihr? Oh ja, das habe ich auch mal ausprobiert. Das hat nicht funktioniert. Es war viel zu komplex, zu teuer und auch einfach ätzend“. Das ist schade, denn es ist ein total veraltetes Bild. BPM ist für fast jede betriebliche Software relevant, moderne Tools sind Open Source, leichtgewichtig und funktionieren sehr gut. Und letztendlich ist BPM auch wirklich sexy - im Ernst!

Bernd Rücker


Ein Wort der Warnung vorweg: Als Gründer der Camunda, Hersteller der gleichnamigen Open-Source-BPM-Plattform, bin ich natürlich nicht neutral. Als BPM-Enthusiast nehme ich aber gerne eine möglichst neutrale Sichtweise ein, um zu verstehen, wie BPM wirklich helfen kann. Letzteres versuche ich auch in diesem Artikel. Konkrete Beispiele basieren aber auf meiner Praxiserfahrung mit der Camunda-Plattform, da diese meine tägliche Arbeit bestimmt.

Das BPM von gestern: schwergewichtig, komplex, proprietär – und teuer

„Business Process Management“ (BPM) meint die ganzheitliche Betrachtung von Geschäftsprozessen. Das umfasst viele organisatorische Aspekte, heutzutage aber auch die technische Umsetzung. Hier kommen wir als Entwickler ins Spiel, zum Beispiel wenn „Workflow Engines“ grafisch beschriebene Geschäftsprozesse direkt ausführen.

Hierbei wurden in der Vergangenheit viele Fehler gemacht, zum Beispiel waren Engines schwergewichtig, komplex und teuer. Eine „Process Engine“, die etwas auf sich gehalten hat, kam als eigener abgeschotteter Server daher, der am besten noch dediziert Blech unter der Haube haben musste. Es gab Modellierungsstandards wie BPEL (Business Process Execution Language), die technisch ausgerichtet waren und nicht von Fachbereichen verstanden werden konnten. Außerdem zwang BPEL den Entwickler zur Kommunikation mit Web Services, was in der Praxis eigentlich immer SOAP (Simple Object Access Protocol) bedeutete. Nicht selten wurde dann ein Workflow innerhalb einer Java-Anwendung dank SOAP-Remote-Kommunikation zum Fremdkörper, und Transaktionalität rückte ohne Not in weite Ferne.

Das BPM von heute: neue Standards, offene Engines, agile Nutzer

Die Situation hat sich glücklicherweise in den letzten Jahren vollständig gedreht. Auch wenn das leider noch nicht überall angekommen ist. Zum einen gibt es mit BPMN (Business Process Model and Notation), CMMN (Case Management Model and Notation) und DMN (Decision Model and Notation) Standards, die dem Anspruch gerecht werden, sowohl fachlich lesbar als auch technisch ausführbar zu sein. Zum anderen gibt es eine neue Generation von einbettbaren BPM Engines, die nur eine Java Library sind. Sie benutzen unter der Haube relationale Datenbanken. Diese Architektur erlaubt es, die Engine auch In-Memory in einem JUnit-Test hochzufahren, über Spring Boot oder Dropwizard einzubinden oder in seine eigene Java-Anwendung zu integrieren. Tabelle 1 zeigt bekannte Open Source BPM Engines dieser Gattung.

ActivitiBonita BPMCam...

Neugierig geworden?


    
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang