Erfolgreiche Einführung von Business Process Management (BPM)

Seite 3: Fazit

Inhaltsverzeichnis

Ein BPM-Produkt kann bei der Integration der Systeme eingesetzt werden. Beispielsweise existiert im BPMN-Standard ein Service-Task für SOAP-Webservices. Damit lässt sich jede denkbare Technik direkt aus dem Prozess heraus aufrufen. Darüber hinaus sind Skript-Service-Tasks beispielsweise für Groovy oder JavaScript, ein Java-Service-Task (als Extension) und andere nützliche Features verfügbar. Letztlich ließe sich die gesamte Anwendungslogik im Geschäftsprozess gleich mit implementieren.

Dennoch bleibt die Frage, ob ein BPM-Produkt wirklich für die Systemintegration eingesetzt werden sollte? Falls nur ein oder zwei Services zu integrieren sind, ist das sicherlich in Ordnung. In allen anderen Situationen sollte aber gemäß dem Motto "Separation of Concerns" eine saubere Trennung zwischen Geschäftsprozess- und Integrationslogik durchgeführt werden. Ansonsten drohen unübersichtlicher "Spaghetti-Code", hohe Komplexität und hohe Wartungskosten, wodurch die Vorteile einer SOA wieder vernichtet wären.

Ein BPM-Produkt ist eben kein Integrationstool, sondern eine Prozess-Engine. BPM sollte nicht zum Selbstzweck eingesetzt werden, sondern nur dann, wenn es echten Mehrwert bietet. Es soll nicht Funktionen aufwendig nachbilden, die andere Tools und Patterns bereits erledigen. Für die Systemintegration existieren die sogenannten Enterprise Integration Patterns, die sich mit leichtgewichtigen Integrationsframeworks wie Apache Camel oder Spring Integration oder mächtigen ESB-Produkten (Enterprise Service Bus) wie WebSphere Message Broker (proprietär) oder Talend ESB (Open Source) umsetzen lassen. Wolfgang Pleus hat einen kurzen, aber guten Blog-Eintrag über die Kombination von BPM Engine und Integrationsframework sowie deren Überlappungen geschrieben.

Der Kreditantrag ruft ein paar Skripte und Services auf, wobei technisches Wissen für Routing, Transformationen und Schnittstellen benötigt wird. Daher sollte man die Integrations- unbedingt von der Prozesslogik trennen, um den Entwicklungs- und Wartungsaufwand so gering wie möglich zu halten. Da der Geschäftsprozess nur die Schnittstellen zu den Services enthält, löst ein entsprechendes Framework oder Tool die Integrationslogik.

Regel 8: Um BPM erfolgreich zu gestalten, darf es nicht für die Systemintegration zweckentfremdet werden.

BPM lässt sich in Projekten erfolgreich einführen und einsetzen. Allerdings entscheidet die Einhaltung der abgeleiteten Regeln über Erfolg oder Misserfolg eines BPM-Projekts. Klare Zielsetzungen, die Betrachtung des ganzen BPM-Lebenszyklus von Beginn an sowie eine sinnvolle Auswahl geeigneter Tools sind die wichtigsten Faktoren für den Erfolg.

Kai Wähner
ist als IT-Consultant bei der MaibornWolff et al GmbH tätig. Seine Schwerpunkte liegen in den Bereichen Java EE, SOA, Cloud Computing und Enterprise Architecture Management. Außerdem ist er Autor von Fachartikeln und hält Vorträge auf internationalen IT-Konferenzen.
(ane)