Business Process Engine

Business Process Engine

Der Begriff Business Process Engine bezeichnet eine Anwendung, die sich auf die (reine) Ausführung (execution) von Prozessen konzentriert. Die auszuführenden Prozesse - also die vorstrukturierte Abfolge von einzelnen Aktivitäten - müssen vorher entsprechend definiert werden (in einer Prozess Definition oder einem Prozess Template); beim eigentlichen Ausführen des so definierten Prozesses arbeitet die Business Process Engine einfach alle Aktivitäten und ihre "Verbindungen" (also die Übergänge von einer Aktivität zur nächsten) ab. Die gerade in Ausführung befindlichen Prozesse nennt man dabei im Unterschied zur Prozess Definition Prozess Instanzen.

Bei den Aktivitäten unterscheidet man typischerweise Humanaktivitäten (oft auch Tasks genannt) und Maschinenaktivitäten, letztere sind also Aktivitäten, die wieder von einem (anderen) Programm, Programmteil oder Modul einer anderen Applikation ausgeführt werden. Im Rahmen einer service-orientierten Architektur werden oft SOA Services als Maschinenaktivität aufgerufen bzw. ausgeführt.

Durch die Fähigkeit der Business Process Engine, die Ausführung von Humanaktivitäten und Maschinenaktivitäten in bzw. zu einem ganzen Prozess zu verknüpfen, werden derartige Anwendungen gerne (und sinnvollerweise) im Rahmen der Integration von Prozessen oder auch der Enterprise Application Integration eingesetzt.

Verwandte Themen

Verwandte Begriffe sind Workflow Management System (WfMS) und Business Process Management System (BPMS). Während sich eine Business Process Engine nur um die Ausführung von (irgendwo anders definierten) Prozess Definitionen kümmert, beinhalten WfMS oder BPMS Systeme die notwendigen zusätzliche Funktionen, um auch derartige Prozesse definieren zu können (typischerweise in Form eines Prozess Designers) und die in der Business Process Engine ablaufenden Prozessinstanzen überwachen und steuern zu können (heute als Business Activity Monitoring, BAM geläufig).

In diesem Sinne ist eine Business Process Engine notwendiger Bestandteil eines WfMS (man könnte dann auch von einer Workflow Engine sprechen) bzw. eines BPMS.

Viele Programme im Bereich des Enterprise Application Integration haben sich heute in Richtung eines Enterprise Service Buses (ESB) weiterentwickelt, wobei ein ESB typischerweise ebenfalls in der Lage ist, einzelne (atomare) Services miteinander zu höherwertigen (zusammengesetzten) Services zu verknüpfen. Da jede derartige Verknüpfung (technisch nennt man das Service-Orchestrierung) ebenfalls so etwas wie eine Orchestration Engine benötigt, bezeichnen manche Hersteller (fälschlicherweise) ihren ESB ebenfalls als Business Process Engine (oder WfMS oder BPMS). Die Nagelprobe für derartige Bezeichnungen ist immer die Frage, ob die Engine (der ESB) in der Lage ist, neben Maschinenaktivitäten auch Humanaktivitäten auszuführen; dann und nur dann verdient die Orchestration Engine des ESBs die Charakterisierung als Business Process Engine.

Nebenbemerkung: Viele Orchestration Engines setzen heute den WS-BPEL (Web Services - Business Process Execution Language) Standard ein, um ausführbare Prozesse zu definieren. Derartige Engines sind also im Wesentlichen WS-BPEL Interpreter. Beachtenswert in diesem Zusammenhang ist die Tatsache, dass der reine WS-BPEL 2.0 Standard nicht in der Lage ist, Humanaktivitäten in die Definition einzubinden und auszuführen. Die Hersteller erweitern daher den Standard um proprietäre Elemente, um sich trotz WS-BPEL "Konformität" auch die notwendigen Funktionen einer Business Process Engine zur Verfügung zu stellen.

Einsatzgebiete

Ein wesentliches Einsatzgebiet für eine Business Process Engine ist die Prozessautomatisation und das Business Prozess Management. Aber auch in einer (vollen) SOA haben Business Process Engines zur Ausführung von (Human) Prozessen einen festen Platz.

Beispiele für Business Process Engines

Bei den kommerziellen Anbietern kann unterscheiden zwischen Anbietern, die

  • von einer integrationszentrischen (SOA-zentrischen) Perspektive [INT], oder
  • von einer humanzentrischen Perspektive [HUM]

kommen (zufällige Reihenfolge):

  • IBM WebSphere Process Manager [INT]
  • Software AG webMethods BPMS [INT]
  • Tibco Rendezvous [INT]
  • Tibco iProcess [HUM]
  • Oracle Business Process Manager [INT]
  • SAP NetWeaver Process Engine [INT]
  • Pegasystems [HUM]
  • Fuege [HUM]
  • Appian [HUM]
  • Savvion [HUM]
  • Lombardi [HUM]
  • Fujitsu Interstage [HUM]
  • Intalio [HUM]
  • Microsoft [INT]
  • Vitria [INT]
  • AristaFlow [INT]
  • inubit [INT]

In den meisten Fällen haben die Anbieter ihre Business Process Engine zu einem kompletten Business Process Management System (BPMS) erweitert.

An Open Source Business Process Engines sind u.a. zu nennen:

  • Enhydra Shark
  • JBoss jBPM
  • Activiti

Enhydra Shark und JBoss jBPM sind wirklich reine (= nackte) Engines ohne viele zusätzliche Werkzeuge zum (graphischen) Erstellen der notwendigen Prozess Definitionen oder auch zum Auswerten oder Steuern der ablaufenden Prozessinstanzen (im Sinne von BAM). Activiti bedient sich weiterer, teils externer Module um diese Werkzeuge zur Verfügung zu stellen.


Wikimedia Foundation.

Игры ⚽ Поможем написать курсовую

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Business Process Modeling — Bei der Geschäftsprozessmodellierung (engl: Business Process Modeling) werden Geschäftsprozesse oder Ausschnitte daraus abstrahiert meist grafisch dargestellt, und somit modelliert. Der Schwerpunkt liegt auf dem Darstellen des Ablaufs, aber auch… …   Deutsch Wikipedia

  • Business rules engine — A business rules engine is a software system that executes one or more business rules in a runtime production environment. The rules might come from legal regulation ( An employee can be fired for any reason or no reason but not for an illegal… …   Wikipedia

  • Business Process Modeling Language — (BPML) is a meta language for the modeling of business processes, just as XML is a meta language for the modeling of business data. BPML was a proposed language, but now the BPMI has dropped support for this in favor of BPEL4WS. BPMI took this… …   Wikipedia

  • Business process management — (BPM) is a method of efficiently aligning an organization with the wants and needs of clients. It is a holistic management approach that promotes business effectiveness and efficiency while striving for innovation, flexibility and integration… …   Wikipedia

  • Business Process Execution Language — Die WS Business Process Execution Language (BPEL) ist eine XML basierte Sprache zur Beschreibung von Geschäftsprozessen, deren einzelne Aktivitäten durch Webservices implementiert sind. Die im Jahr 2002 von IBM, BEA Systems und Microsoft… …   Deutsch Wikipedia

  • Business Process Execution Language For Web Services — Die WS Business Process Execution Language (BPEL) ist eine XML basierte Sprache zur Beschreibung von Geschäftsprozessen, deren einzelne Aktivitäten durch Webservices implementiert sind. Die im Jahr 2002 von IBM, BEA Systems und Microsoft… …   Deutsch Wikipedia

  • Business-Process-Management — Prozessmanagement / ˈmænɪdʒmənt/, auch Geschäftsprozessverwaltung oder Business Process Management (BPM) , beschäftigt sich mit dem Herausfinden, Gestalten, Dokumentieren und Verbessern von Geschäftsprozessen. Geschäftsprozessverwaltung… …   Deutsch Wikipedia

  • Business Process Management — Prozessmanagement / ˈmænɪdʒmənt/, auch Geschäftsprozessverwaltung oder Business Process Management (BPM) , beschäftigt sich mit dem Herausfinden, Gestalten, Dokumentieren und Verbessern von Geschäftsprozessen. Geschäftsprozessverwaltung… …   Deutsch Wikipedia

  • WS-Business Process Execution Language — Die WS Business Process Execution Language (BPEL) ist eine XML basierte Sprache zur Beschreibung von Geschäftsprozessen, deren einzelne Aktivitäten durch Webservices implementiert sind. Die im Jahr 2002 von IBM, BEA Systems und Microsoft… …   Deutsch Wikipedia

  • Disaster Preparedness and Response Business Process Management (DPRBPM) — The Disaster Preparedness and Response Business Process Management (DPRBPM) is a process that offers disaster mitigation capabilities by using Disaster Policy Documents, Guidelines, Acts, Orders, Directives, Declarations as rules to determine… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”