Seite 2
I. Inhaltsverzeichnis
1 Einleitung und Aufgabenstellung 4
2 BPEL4 WS - eine Einordnung 5
2.1 Webservice Composition 5
2.2 Entstehung von BPEL4 WS 6
3 BPEL4 WS 8
3.1 Konzepte 8
3.2 Definition des Prozesses 9
3.3 Servicebeschreibung 9
3.4 Prozessbeschreibung 11
3.4.1 Primitive Aktivitäten 13
3.4.2 Strukturierte Aktivitäten 14
3.5 Beispiel eines Prozesses „Reise Buchen“ 18
3.6 Tools für die Entwicklung/Abwicklung eines Prozesses 21
3.6.1 IBM BPWS4 J 22
3.6.2 Microsoft BizTalk Server 2004 23
3.6.3 Oracle BPEL Process Manager 24
3.7 Kritik, Stärken, Schwächen 25
3.7.1 Beurteilung in Bezug zu den Erfordernissen eines Workflows 25
3.7.2 Grenzen von BPEL4 WS in der Praxis 27
4 Zusammenfassung und Ausblick 29
Seite 3
II. Abbildungsverzeichnis
Abbildung 1: Webservice Technologien ........... ……………………………………….8
Abbildung 2: Prozess "Reise Buchen"....................................................................... ...19
Abbildung 2: Code-Beispiel "Reise Buchen"................................................................ 21
III. Tabellenverzeichnis
Tabelle1: Konstrukte der Servicebeschreibung..........................................................10
Tabelle2: Konstrukte der Prozessbeschreibung .........................................................11
Tabelle3: Primitive Aktivitäten in Anlehnung an van der Aalst, (vgl. [aalst2], S.3)........13
Tabelle4: Strukturierende Aktivitäten in Anlehnung an van der Aalst (vgl. [aalst2], S.3)14
IV. Abkürzungsverzeichnis
ARIS……………….. Architektur Integrierter Informationssysteme BPEL4WS…………. Business Process Execution Language for Webservices BPML……………… Business Process Modelling Language BPWS4J…………… BPEL for Java BPXL………………. Business Process eXtension Layers EDI………………… Electronical Data Interchange HTTP……………… Hypertext Transfer Protocol J2EE………………. Java 2 Enterprise Edition MSMQ…………….. Microsoft Message Queuing OC4J………………. Oracle9iAS Containers for J2EE SBA………………... Service Based Architecture SMTP……………… Simple Mail Transport Protocol SOA……………….. Service Oriented Architecture SOAP……………… Service Oriented Architecture Protocol SQL………………... Structered Query Language UDDI………………. Universal Description, Discovery and Integration WAN………………. Wide Area Network WSCI………………. Web Services Choerography Interface WSDL……………… Webservice Description Language WSFL……………… Webservices Flow Language XLANG……………. XML Language XML………………. Extended Markup Language XPDL……………… eXtensible Process Definition Language
Seite 4
1 Einleitung und Aufgabenstellung
In der Welt des Internet entwickeln sich Web Services immer mehr zum Standard bei der Kommunikation von heterogenen Systemen. Hierbei steht weniger die Vernetzung von Hardware oder die Vernetzung von Software im Vordergrund als vielmehr die Vernetzung von Diensten (vgl. [WI04]). Webservices 1 sind der Standard, um dies über Unternehmensgrenzen
hinweg umzusetzen. Allerdings realisieren Webservices keine lang-andauernden Kommunikationsbeziehungen von verschiedenen Teilnehmern. Eine mögliche Lösung bieten hier so genannte Workflow Languages. Auf BPEL4WS, einen Vertreter einer solchen Sprache, der auf Webservices basiert, soll in dieser Arbeit beschreibend eingegangen werden. Ziel ist es, herauszustellen welche Möglichkeiten BPEL4WS bietet, um einen Geschäftsprozess 2 auf Basis
von Webservices zu definieren. Fokus von BPEL4WS ist primär das Erstellen und die Ausführung von Geschäftsprozessen, nicht jedoch die Modellierung, die in ganzheitlichen Konzepten des Geschäftsprozessmanagements Schwerpunkt ist. Die Relevanz des Konzepts wird weiterhin auch dadurch deutlich, dass z.B. ARIS mittlerweile Schnittstellen zu BPEL4WS anbietet. Nach einer Einordnung und einer Beschreibung von BPEL4WS, auch anhand von einem Beispiel, folgen eine kurze Erläuterung zu Tools für den Einsatz der Sprache, sowie eine kritische Auseinandersetzung mit BPEL4WS, bevor das Kapitel „Zusammenfassung und Ausblick“ diese Arbeit schließt.
1 (vgl. [Wrox] S. 11 ff; [msdn1])
Seite 5
2 BPEL4WS - eine Einordnung
2.1 Webservice Composition
Ein möglicher Schritt in Richtung Automatisierung von Geschäftsprozessen stellt das Vernetzen von Webservices dar. Bisher war es nicht möglich, auf Basis von Webservices komplexe Geschäftsprozesse über Unternehmensgrenzen hinweg zu modellieren. Eine Geschäftsprozesslogik konnte allenfalls auf der Applikationsschicht implementiert werden. Aus Anlass, die Definition des Geschäftsprozesses von der eigentlichen Anwendung zu trennen, gibt es das Bestreben, diese Logik direkt auf der Webservice Ebene zu realisieren. Van der Aalst schreibt: „Business interactions require long-running interactions that are driven by an explicit process model.” (vgl.[aalst1], Seite 1)
Das Konzept der Webservices ermöglicht zwar eine Kopplung von Anwendungen über große Entfernungen, jedoch keine Vorschrift für eine Kette von Transaktionen, die nötig ist um einen Geschäftsprozess durch einen Workflow abzubilden.
Dieses Prozessmodell kann durch eine Webservice Composition Language implementiert werden. Dabei werden existierende Webservices logisch so verknüpft, dass sie für den Nutzer des Prozesses wie ein einzelner Webservice fungieren. Synonyme sind Web Services Flow Languages, Web Services Execution Languages, Web Services Orchestration Languages, und Web-enabled Workflow Languages (vgl. [aalst1], Seite 2). Beispiele für derartige Sprachen sind BPEL4WS, WSFL, XLANG, WSCI, und BPML. Zur Einordnung der Composition Languages in den Zusammenhang mit Webservices verwendet van der Aalst folgende Abbildung:
2 (vgl. [Schmelz], S. 45)
Wie angedeutet, gibt es eine Reihe von Composition Languages. Die genannten Standards sind sich in ihrem Funktionsumfang sehr ähnlich. Zudem basieren alle auf XML um eine einfache Integration der Webservices zu gewährleisten.
Webservice Composition Languages haben also zum Ziel, Geschäftsprozesse abzubilden. Dabei stellen diese die Mittel bereit, um ein geeignetes Prozess Modell zu definieren. Wie in Abb. 1 ersichtlich, setzen die Composition Languages direkt auf den Webservices auf. Webservices sind ihrerseits zusammengesetzt aus sog. Ports, die Operationen bereitstellen. Operationen sind z.B. das Empfangen oder Senden von Nachrichten. Bei der Abbildung eines ganzen Geschäftsprozesses müssen also Strukturen geschaffen werden, die dazu da sind, eine große Menge von Operationen adäquat anzuordnen.
2.2 Entstehung von BPEL4WS
Einen Vertreter der oben genannten Composition Languages stellt BPEL4WS dar. Im Folgenden werden die Begriffe BPEL4WS und BPEL synonym verwendet, da in der Literatur keine Differenzierung vorgenommen wird.
BPEL4WS wurde von Microsoft, IBM, Siebel, Bea und SAP als eine Aggregation und eine Weiterentwicklung der beiden Sprachen XLANG und WSFL vorgestellt. Momentan liegt eine
Seite 7
Version von BPEL4WS in der Version 1.1 vor, die im Mai 2003 spezifiziert wurde (vgl. [spez]).
XLANG ist eine Entwicklung von Microsoft, während IBM mit WSFL ein eigenes Konzept zur Webservice Composition hatte. Während WSFL eine Graph-orientierte Sprache darstellt, verwendet XLANG eine Block-Strukturierte Notation. X LANG verfügt im Gegensatz zu WSFL über Konzepte der Fehlerbehandlung.
Im Falle von BPEL4WS haben beide Firmen zusammengearbeitet, mit dem Ziel, die Vorteile beider Sprachen in einer Sprache zu integrieren (vgl. [ibm]). Dadurch profitiert BPEL4WS, als sehr neue Sprache, von Forschungs- und Entwicklungsarbeit für XLANG und WSFL, die über zehn Jahre angedauert hat. Derweil sind die Erwartungen an BPEL4WS hoch: BPEL4WS hat das Zeug sich zum Standard auf dem Gebiet der Beschreibung von Geschäftsprozessen auf Basis von Webservices zu entwickeln (vgl. [IX], Seite 1).
Hintergründig war es von IBM und Microsoft sicherlich ein Ziel, durch das Zusammenlegen ihrer beiden Lösungsansätze für Webservice Composition, eine bessere Perspektive zur Durchsetzung am Markt zu erlangen. Dies wird jedoch nicht allein dadurch erreicht, dass zwei der größten Softwarehersteller der Welt sich auf ein Konzept einigen. Darüber hinaus muss das neue Konzept BPEL4WS auch messbare Vorteile gegenüber anderen Sprachen wie WSCI oder BPML besitzen.
Oracle, selbst Hersteller eines BPEL Tools, beschreibt das Ziel von BPEL als eine Bereitstellung eines umfassenderen und zugleich einfacheren Standards im Hinblick der Realisierung technischer Erfordernisse, wie z.B. synchroner und asynchroner Nachrichtenaustausch, Datenmanipulation, Ausnahmebehandlung, Ablauf Koordination etc.(vgl. [oracle]). Nachdem in Kapitel 4 dieser Arbeit die Grundlagen von BPEL4WS erläutert werden, folgt in Kapitel 5 unter anderem eine kurze Bewertung dieser technischen Erfordernisse.
Seite 8
3 BPEL4WS
Im Folgenden werden nun die Grundlagen von BPEL4WS erläutert. Die Informationen für die anschließende Einführung stammen, sofern nicht anders angegeben, aus der ö ffentlichen BPEL4WS Spezifikation [spez] von IBM, die sich inhaltlich nicht von den Veröffentlichungen von BEA, Microsoft, SAP und Siebel unterscheidet.
3.1 Konzepte
Grundsätzlich bietet BPEL4WS zwei Konzepte an:
• Definition von abstrakten Prozessen
• Definition von ausführbaren Geschäftsprozessen
Abstrakte Prozesse bieten die Möglichkeit der Schaffung einer Sicht auf einen privaten Geschäftsprozess, ohne auf die Implementierung einzugehen. Dabei bleibt das interne Verhalten der kommunizierenden Partner außen vor; beschrieben wird nur der Nachrichtenaustausch zwischen ihnen. Die Verwendung von abstrakten Prozessen kann ein erster Schritt in Richtung Realisierung eines ausführbaren Geschäftsprozesses sein. Abstraktion bedeutet ein Ausblenden von detaillierten Abläufen auf den verbundenen Beteiligten (partner). Abstrakte Prozesse stellen hinsichtlich ihrer Ausdrucksmöglichkeit eine Untermenge von ausführbaren Geschäftsprozessen dar und können jeder Zeit zu letzteren erweitert werden. Zu ausführbaren Geschäftsprozessen schreibt van der Aalst:
„An executable process, which is also the focus of this paper, specifies the execution order between a number of activities constituting the process, the partners involved in the process, the messages exchanged between these partners, and the fault and exception handling specifying the behaviour in cases of er-rors and exception.”
(vgl. [aalst2], Kapitel 2, Seite 3, Zeile 12 ff.)
Seite 9
D.h., es geht im Gegensatz zu den abstrakten Prozessen nicht nur um den Nachrichtenaustausch, sondern vielmehr um das „Managen“ von Aktivitäten, die den Prozess ausmachen. Die Fehler- und Ausnahmenbehandlung ist ebenfalls ein Kern -Bestandteil von BPEL4WS, auf das später noch eingegangen wird.
3.2 Definition des Prozesses
Bevor mit Beschreibung eines BPEL Prozesses begonnen wird, erscheint eine kurze Einordnung noch wichtig: Ein solcher Prozess ist nichts anderes als die Beschreibung einer logischen Verkettung von beliebig vielen Webservices. Deswegen ist es zum einen notwendig, die verschiedenen Schnittstellen der involvierten Webservices zu kennen, als auch eine Vielzahl von Beziehungen zwischen diesen abzubilden, sowie eine Menge von Regeln bezüglich des Ablaufs von Kommunikations-Aktivitäten.
Das Definieren eines BPEL Prozesses lässt sich in die Erstellung zweier Dokumente einteilen (vgl. [Voigt] S. 21):
1. Beschreibung der Services
2. Beschreibung des Prozesses
3.3 Servicebeschreibung
Die Servicebeschreibung ist ein WSDL Dokument. Dadurch wird beschrieben, welche Dienste der Service Anbieter bereitstellt und wie diese zu nutzen sind. Der Service Anbieter ist bei BPEL4WS der Prozess selbst, denn dieser ist für den Service Nutzer nichts anderes als ein Webservice. Jedoch nutzt der Prozess selbst auch Webservices. Die Servicebeschreibung stellt dabei abstrakte Beziehungen zwischen den Schnittstellen der verwendeten Webservices her.
In der folgenden Tabelle sind XML Elementnamen aufgelistet, die der Service Beschreibung dienen.
Quote paper:
Stefan Hassmann, 2005, Einführung in BPEL4WS - Möglichkeiten, Tools und Ausführung, Munich, GRIN Publishing GmbH
This text can be quoted and accessed from this url:
Embed
DOI
Projektmanagement mit Windows Sharepoint
Computer Science - Commercial Information Technology
Scholary Paper (Seminar), 20 Pages
Das Konzept des Total Cost of Ownership (TCO) in der IT
Business economics - Controlling
Bachelor Thesis, 33 Pages
Konsumgüterentwicklung in Russland vor und nach dem Zerfall der Sowjet...
Sociology - Economy and Industry
Scholary Paper (Seminar), 25 Pages
Business Process Modeling Language (BPML) – Ein neuer Weg für die Enwi...
Computer Science - Commercial Information Technology
Scholarly Research Paper, 29 Pages
Softwareunterstützung für das Projektmanagement - Faktoren bei der Aus...
Business economics - Personnel and Organisation
Scholarly Paper (Advanced Seminar), 25 Pages
Kommunikationspolitische Einführung eines gehobenen Konsumgutes in den...
Business economics - Marketing, Corporate Communication, CRM, Market Research
Scholary Paper (Seminar), 34 Pages
Strategien und Vorgehensmodelle zur Einführung eines SAP BW in Unterne...
Computer Science - Commercial Information Technology
Bachelor Thesis, 69 Pages
Strategische Geschäftsfelder - Abgrenzung des relevanten Marktes, Form...
Business economics - Marketing, Corporate Communication, CRM, Market Research
Scholarly Paper (Advanced Seminar), 26 Pages
Die Analyse des Kundenwerts und der Kundenstruktur zur Bewertung von K...
Business economics - Marketing, Corporate Communication, CRM, Market Research
Scholarly Paper (Advanced Seminar), 77 Pages
Das gestiegene Umweltbewußtsein beim Beschaffungsverhalten einer Indus...
Business economics - Industrial Management
Presentation / Essay (Pre-University), 4 Pages
Emergenz in der Softwareentwicklung - bereits verwirklicht oder Chance...
Diploma Thesis, 87 Pages
Produktpolitik und Umweltkennzeichen - Theoretische Grundlagen und Pra...
Examination Thesis, 25 Pages
Domänenspezifische Sprachen für betriebliche Abläufe - Vor- und Nacht...
Scholary Paper (Seminar), 19 Pages
Softwareentwicklung von heute und morgen -Agile Softwareentwicklung
Elaboration, 10 Pages
Ökolabel - Instrumente zur besseren Konsumentenorientierung?
Scholarly Paper (Advanced Seminar), 49 Pages
Analyse der Softwareanbieter im Bereich Projektmanagement
Engineering - Industrial Engineering and Management
Termpaper, 20 Pages
Stefan Hassmann's text Einführung in BPEL4WS - Möglichkeiten, Tools und Ausführung is now available as a printed book
Stefan Hassmann has published the text Einführung in BPEL4WS - Möglichkeiten, Tools und Ausführung
Stefan Hassmann has uploaded a new text
Eine Einführung in die Typografie. Une Initiation à la Typographie. An...
Anne Denestas, Camille Gallet, Maria Hoffmann-Dartevelle, Bruce Mayo
Einführung in die Phänomenologie der Erkenntnis. Vorlesung 1909
Edmund Husserl, Elisabeth Schuhmann
Einführung in die Anglo-Amerikanische Rechtssprache (Introduction to A...
Introduction to Anglo-American...
B. Sharon Byrd
Einführung in das deutsche Recht und die deutsche Rechtssprache
Heike Simon, Gisela Funk-Baker
Portable parallele Programmier...
William Gropp, Ewing Lusk, Anthony Skjellum, Holger Blaar
0 comments