A.o. Univ. Prof. Dr. Dipl.-Ing. eva Kühn
TU Wien

Daniel Wutke

Eine Infrastruktur fuer die dezentrale Ausfuehrung von BPEL-Prozessen

 

Dissertation, University of Stuttgart, 2010

Abstract

Die Web Service Business Process Execution Language (WS-BPEL) erlaubt die Entwicklung von Anwendungen als maschinell ausfuehrbare Orchestrierungen einzelner, lose gekoppelter Geschaeftsfunktionen in Form von Web-Services. Basierend auf den Konzepten der Zwei-Schichten-Programmierung hat die prozessgestuetzte Anwendungsentwicklung mit BPEL unter anderem die Erhoehung der Wiederverwendbarkeit, sowohl der orchestrierten Dienste als auch der Prozesslogik selbst, zum Ziel.

 

Gegenwaertig erfolgt die Ausfuehrung von BPEL-Prozessen logisch zentral, d.h. ein Workflow-Management-System interpretiert das Prozessmodell und interagiert daraufhin mit den verschiedenen vom Prozess verwendeten Diensten. In komplexen Prozessen, deren Dienste ueber eine grosse Zahl unterschiedlicher Partner verteilt sind, ist diese logisch zentrale Ausfuehrung allerdings nicht immer sinnvoll; vielmehr ist in diesen Szenarien oftmals eine verteilte Ausfuehrung der Orchestrierungslogik des Prozesses wuenschenswert. Soll, unter Verwendung existierender Technologien, ein BPEL-Prozess verteilt ueber eine Reihe unterschiedlicher Ausfuehrungsteilnehmer dezentral ausgefuehrt werden, so bedingt dies gegenwaertig im Allgemeinen eine Anpassung des Prozessmodells und / oder der verwendeten Dienste, was dem Ziel maximaler Wiederverwendbarkeit entgegensteht.

 

Um das Problem des Verlusts der Wiederverwendbarkeit bei verteilter Ausfueh rung der Orchestrierungslogik von BPEL-Prozessen zu loesen, ist das Ziel dieser Dissertation die Entwicklung eines Ansatzes zur dezentralen Ausfuehrung von BPEL-Prozessen durch nicht-invasive Anpassung der Prozesse an ihre jeweilige Ausfuehrungsumgebung, unter Beibehaltung sowohl ihrer Orchestrierungslogik als auch der Schnittstellen der verwendeten Dienste.

 

Der entwickelte Ansatz umfasst eine Vorgehensweise zur (Vor-) Verarbeitung dezentral ausgefuehrter Prozesse, ein Verfahren zu deren automatischer Partitionierung auf die einzelnen Ausfuehrungsteilnehmer sowie die Architektur und prototypische Implementierung eines verteilten Workflow-Management- Systems als Laufzeitumgebung fuer deren Ausfuehrung. Es folgt eine Zusammenfassung der einzelnen Kapitel.

 

Grundlagen und verwandte Arbeiten

 

Die in dieser Dissertation entwickelten Konzepte stuetzten sich soweit moeglich ¯ aus Gruenden der Interoperabilitaet und der Wiederverwendbarkeit existierender Werkzeuge ¯ auf existierende etablierte Technologien und Standards aus dem Bereich der Web-Service-Technologien. Als Grundlage fuer die Erlaeuterung der erarbeiteten Konzepte werden die relevanten Technologien und Standards einfuehrend vorgestellt.

 

Da sowohl "klassische" als auch "verteilte" Workflow Management Systeme seit Jahren Gegenstand von Forschung und Entwicklung sind, werden einige existierende Produkte sowie Forschungsansaetze zur Einordnung des entwickelten Ansatzes in den Kontext bestehender Arbeiten sowohl auf konzeptueller Ebene als auch anhand konkreter Implementierungsbeispiele vorgestellt. Neben diesen Laufzeitumgebungen fuer die Prozessausfuehrung und deren Vorgehensweise zur Prozessnavigation werden auch unterschiedliche Beispiele von Verfahren zur Partitionierung von Prozessen auf die jeweils vorliegende Ausfuehrungsumgebung erlaeutert.

 

Dezentrale Ausfuehrung von BPEL-Prozessen

 

Grundgedanke des entwickelten Ansatzes zur verteilten Prozessausfuehrung ist die Dekomposition eines Prozesses in einzelne funktionale Einheiten und die explizite Beschreibung der Interaktionen, die zwischen diesen erfolgen

muessen, um ein zur operationalen Semantik von BPEL entsprechendes Ausfuehrungverhalten zu erhalten. Die Repraesentation dieser Beschreibung erfordert die Definition eines geeigneten Metamodells, den sogenannten Executable Workflow Networks (EWFN). Als Grundlage fuer die Definition des EWFN-Metamodells werden (i) die fuer dieses geltenden Anforderungen anhand eines Beispiels zusammengetragen, (ii) die fuer die Diskussion im weiteren Verlauf der Arbeit unmittelbar notwendigen Konzepte des Metamodells einfuehrend vorgestellt, (iii) die Vorgehensweise zur Erzeugung der EWFN-Repraesentation eines BPEL-Prozesses erlaeutert sowie (iv) das durch den entwickelten Ansatz erreichbare Verteilungsspektrum der Prozessausfuehrung diskutiert. Die Detailbeschreibung der formalen Grundlagen des EWFN-Metamodells ist Gegenstand von [Mar10].

 

Die dezentrale Ausfuehrung von BPEL-Prozessen resultiert in speziellen Anforderungen an den Prozesslebenszyklus und die waehrend diesem durchlaufenen Lebenszyklusphasen. Als Teil der Dissertation wird ein erweiterter Prozesslebenszyklus definiert, der diesen Anforderungen Rechnung traegt.

 

Ein Verfahren fuer die automatische Partitionierung von BPEL-Prozessen

 

Nach der Dekomposition eines Prozesses in seine funktionalen Einheiten ist es erforderlich, diese auf die Ausfuehrungsumgebung des Prozesses zu verteilen. Das der Arbeit zugrunde liegende Szenario der Ausfuehrung von Geschaeftsprozessen in einer Service-orientierten Anwendungsumgebung ist gekennzeichnet durch eine Reihe von Eigenschaften, die durch das Partitionierungsverfahren zu beruecksichtigen sind. Dies sind beispielsweise: (i) eine umfangreiche Dienstlandschaft, in welcher funktional aequivalente Dienste von unterschiedlichen Dienstanbietern mit potentiell unterschiedlichen nicht-funktionalen Eigenschaften angeboten werden, (ii) die Beruecksichtigung bestehender Vertraege oder Geschaeftsbeziehungen zwischen Unternehmen sowie (iii) die Struktur der zu partitionierenden Geschaeftsprozesse selbst. Zugleich soll der Partitionierer eines Prozesses die Moeglichkeit haben, eventuell vorhandenes Wissen ueber die erwartete Prozessausfuehrung in den Partitionierungsvorgang einfliessen zu lassen. Dabei soll gewaehrleistet sein, dass diese "Anreicherung" der zu partitionierenden Prozessmodelle selektiv erfolgen kann, d. h. auch eine nur partiell vorgenommene Annotation eines Prozesses bereits zu einer Verbesserung der bestimmten Prozesspartitionierung beitraegt.

 

Da existierende Prozesspartitionierungsverfahren die oben genannten speziellen Eigenschaften und Anforderungen des Einsatzszenarios nicht oder nur teilweise erfuellen, ist die Entwicklung eines entsprechenden Partitionierungsverfahrens ein Teilaspekt dieser Dissertation.

 

Eine Infrastruktur zur verteilten Ausfuehrung von BPEL-Prozessen

 

Der dezentrale Navigationsvorgang eines Prozesses auf Grundlage des EWFN-Modells unterscheidet sich substantiell von existierenden Vorgehensweisen zur Ausfuehrung von BPEL-Prozessen. Dies erfordert die Entwicklung einer entsprechenden Laufzeitumgebung, die sowohl den funktionalen als auch den nicht-funktionalen Anforderungen der Ausfuehrung von Produktionsprozessen in BPEL genuegt.

 

Im Rahmen dieser Dissertation wird die Realisierung der Process-Space- Infrastruktur, als eine derartige Laufzeitumgebung auf Grundlage der Tuplespace- Konzepte, vorgestellt. Die Beschreibung des Systems umfasst die Vorstellung seiner Architektur, der Funktionsweise seiner einzelnen Komponenten auf konzeptueller Ebene sowie einiger Aspekte seiner prototypischen Umsetzung.

 

Tuplespace-basierte Kommunikation zwischen Web-Services

 

Der Mechanismus der sogenannten Web-Service-Bindings erlaubt es, dass Interaktionen zwischen Web-Service-Anbieter und -Nutzer ueber unterschiedliche Transportprotokolle abgewickelt werden koennen. Die Realisierung der transportprotokollspezifischen Aspekte erfolgt dabei als Teil der verwendeten Web-Service-Laufzeitumgebung, unabhaengig von der Anwendungslogik bei Dienstnutzer und Dienstanbieter.

 

Aufgrund der funktionalen und nicht-funktionalen Eigenschaften der Process-Space-Infrastruktur bietet diese, neben der dezentralen Prozessausfuehrung, auch eine Plattform fuer die Interaktion von Web-Services. Im Rahmen dieser Dissertation wird ein entsprechendes Binding vorgestellt, welches die Ausfuehrung von Web-Service-Interaktionen auf der Process-Space-Infrastruktur erlaubt.

 

Prototypische Umsetzung

 

Zur Demonstration der Umsetzbarkeit der entwickelten Konzepte werden abschliessend unterschiedliche Aspekte der prototypischen Realisierungen der Process-Space-Infrastruktur, des definierten Partitionierungsverfahrens sowie einer erweiterten Web-Service-Laufzeitumgebung vorgestellt.

 

Die Arbeit schliesst mit einer Zusammenfassung der erzielten Ergebnisse und einem Ausblick auf moegliche Bereiche anknuepfender Forschungsarbeiten.

 

 

Contact
Sitemap
Home
top | XHtml 1.0 strict | last update: Jun 2015