Transaktionale Workflows auf Basis von Enterprise JavaBeans
©1999
Diplomarbeit
141 Seiten
Zusammenfassung
Inhaltsangabe:Einleitung:
Geschäftsprozesse, deren Prozeßschritte über mehrere funktionale und organisatorische Einheiten verteilt sind, werden als weitreichende Geschäftsprozesse bezeichnet. Sie entstehen vermehrt im Bereich der virtuellen Unternehmen oder auch im elektronischen Handel, bei dem der Kunde selbst einen Prozessteilnehmer darstellt. Weitreichende Geschäftsprozesse stellen hohe Anforderungen an ein unterstützendes WfMS. So muß z.B. stets die Autarkie der Prozessteilnehmer gewahrt bleiben. Ein entsprechendes WfMS sollte zudem gleichzeitig flexibel und skalierbar sein.
Mit dem CompFlow-Ansatz liegt ein generisches Lösungskonzept vor, welches die Anforderungen an ein WfMS zur Unterstützung weitreichender Geschäftsprozesse erfüllt. Das Lösungskonzept beschreibt dazu ein Zwei-Ebenen-Workflow-Metamodell, ein Workflow-Modell-Wörterbuch sowie eine aspektelementorientierte Schemarepräsentation. Als Realisierungsgrundlage werden aspektorientierte Komponentensysteme herausgearbeitet.
Die Aufgabenstellung der Arbeit besteht darin, ein Realisierungskonzept zur Umsetzung des CompFow-Ansatzes mit dem neuartigen komponentenorientierten Rahmenwerk Enterprise JavaBeans zu entwickeln. Da Enterprise JavaBeans die transaktionale Ausführung von Komponentenausprägungen erlauben, wird das Realisierungskonzept darüberhinaus um die Möglichkeiten transaktionaler Workflows ergänzt. Anschließend wird das Realisierungskonzept implementiert und an einem Beispiel-Workflow evaluiert. Motiviert durch den elektronischen Handel erfolgt die Darstellung des Beispiel-Workflows durch eine WWW-Integration.
Inhaltsverzeichnis:Inhaltsverzeichnis:
1.Einleitung5
1.1Motivation6
1.2Ziele6
1.3Vorgehensweise7
2.Grundbegriffe9
2.1Geschäftsprozesse, Workflows und Workflow-Management-Systeme10
2.2Transaktionen11
2.3Komponenten und komponentenorientierte Rahmenwerke12
3.CompFlow15
3.1Problemstellung16
3.2Das CompFlow-Lösungskonzept19
3.3Komponentensysteme als Realisierungsgrundlage24
3.4Realisierung mit aspektorientierten Komponentensystemen28
3.5Fazit30
4.Enterprise JavaBeans31
4.1Enterprise JavaBeans Grundlagen32
4.2Enterprise JavaBeans Komponenten36
4.3Enterprise JavaBeans Umgebung45
4.4Enterprise JavaBeans als Komponentensystem51
4.5Fazit54
5.Lösungsstrategie55
5.1Analyse56
5.2Lösungsschritte57
6.Realisierungsgrundlage59
6.1Analyse60
6.2Umsetzung62
6.3Anwendungskonfigurierbarkeit und […]
Geschäftsprozesse, deren Prozeßschritte über mehrere funktionale und organisatorische Einheiten verteilt sind, werden als weitreichende Geschäftsprozesse bezeichnet. Sie entstehen vermehrt im Bereich der virtuellen Unternehmen oder auch im elektronischen Handel, bei dem der Kunde selbst einen Prozessteilnehmer darstellt. Weitreichende Geschäftsprozesse stellen hohe Anforderungen an ein unterstützendes WfMS. So muß z.B. stets die Autarkie der Prozessteilnehmer gewahrt bleiben. Ein entsprechendes WfMS sollte zudem gleichzeitig flexibel und skalierbar sein.
Mit dem CompFlow-Ansatz liegt ein generisches Lösungskonzept vor, welches die Anforderungen an ein WfMS zur Unterstützung weitreichender Geschäftsprozesse erfüllt. Das Lösungskonzept beschreibt dazu ein Zwei-Ebenen-Workflow-Metamodell, ein Workflow-Modell-Wörterbuch sowie eine aspektelementorientierte Schemarepräsentation. Als Realisierungsgrundlage werden aspektorientierte Komponentensysteme herausgearbeitet.
Die Aufgabenstellung der Arbeit besteht darin, ein Realisierungskonzept zur Umsetzung des CompFow-Ansatzes mit dem neuartigen komponentenorientierten Rahmenwerk Enterprise JavaBeans zu entwickeln. Da Enterprise JavaBeans die transaktionale Ausführung von Komponentenausprägungen erlauben, wird das Realisierungskonzept darüberhinaus um die Möglichkeiten transaktionaler Workflows ergänzt. Anschließend wird das Realisierungskonzept implementiert und an einem Beispiel-Workflow evaluiert. Motiviert durch den elektronischen Handel erfolgt die Darstellung des Beispiel-Workflows durch eine WWW-Integration.
Inhaltsverzeichnis:Inhaltsverzeichnis:
1.Einleitung5
1.1Motivation6
1.2Ziele6
1.3Vorgehensweise7
2.Grundbegriffe9
2.1Geschäftsprozesse, Workflows und Workflow-Management-Systeme10
2.2Transaktionen11
2.3Komponenten und komponentenorientierte Rahmenwerke12
3.CompFlow15
3.1Problemstellung16
3.2Das CompFlow-Lösungskonzept19
3.3Komponentensysteme als Realisierungsgrundlage24
3.4Realisierung mit aspektorientierten Komponentensystemen28
3.5Fazit30
4.Enterprise JavaBeans31
4.1Enterprise JavaBeans Grundlagen32
4.2Enterprise JavaBeans Komponenten36
4.3Enterprise JavaBeans Umgebung45
4.4Enterprise JavaBeans als Komponentensystem51
4.5Fazit54
5.Lösungsstrategie55
5.1Analyse56
5.2Lösungsschritte57
6.Realisierungsgrundlage59
6.1Analyse60
6.2Umsetzung62
6.3Anwendungskonfigurierbarkeit und […]
Leseprobe
ID 4219
David, Matthias: Transaktionale Workflows auf Basis von Enterprise JavaBeans / Matthias
David - Hamburg: Diplomica GmbH, 2001
Zugl.: Karlsruhe, Technische Universität, Diplom, 1999
Dieses Werk ist urheberrechtlich geschützt. Die dadurch begründeten Rechte, insbesondere die
der Übersetzung, des Nachdrucks, des Vortrags, der Entnahme von Abbildungen und Tabellen,
der Funksendung, der Mikroverfilmung oder der Vervielfältigung auf anderen Wegen und der
Speicherung in Datenverarbeitungsanlagen, bleiben, auch bei nur auszugsweiser Verwertung,
vorbehalten. Eine Vervielfältigung dieses Werkes oder von Teilen dieses Werkes ist auch im
Einzelfall nur in den Grenzen der gesetzlichen Bestimmungen des Urheberrechtsgesetzes der
Bundesrepublik Deutschland in der jeweils geltenden Fassung zulässig. Sie ist grundsätzlich
vergütungspflichtig. Zuwiderhandlungen unterliegen den Strafbestimmungen des
Urheberrechtes.
Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem
Werk berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme, dass solche
Namen im Sinne der Warenzeichen- und Markenschutz-Gesetzgebung als frei zu betrachten
wären und daher von jedermann benutzt werden dürften.
Die Informationen in diesem Werk wurden mit Sorgfalt erarbeitet. Dennoch können Fehler nicht
vollständig ausgeschlossen werden, und die Diplomarbeiten Agentur, die Autoren oder
Übersetzer übernehmen keine juristische Verantwortung oder irgendeine Haftung für evtl.
verbliebene fehlerhafte Angaben und deren Folgen.
Diplomica GmbH
http://www.diplom.de, Hamburg 2001
Printed in Germany
Wissensquellen gewinnbringend nutzen
Qualität, Praxisrelevanz und Aktualität zeichnen unsere Studien aus. Wir
bieten Ihnen im Auftrag unserer Autorinnen und Autoren Wirtschafts-
studien und wissenschaftliche Abschlussarbeiten Dissertationen,
Diplomarbeiten, Magisterarbeiten, Staatsexamensarbeiten und Studien-
arbeiten zum Kauf. Sie wurden an deutschen Universitäten, Fachhoch-
schulen, Akademien oder vergleichbaren Institutionen der Europäischen
Union geschrieben. Der Notendurchschnitt liegt bei 1,5.
Wettbewerbsvorteile verschaffen Vergleichen Sie den Preis unserer
Studien mit den Honoraren externer Berater. Um dieses Wissen selbst
zusammenzutragen, müssten Sie viel Zeit und Geld aufbringen.
http://www.diplom.de bietet Ihnen unser vollständiges Lieferprogramm
mit mehreren tausend Studien im Internet. Neben dem Online-Katalog und
der Online-Suchmaschine für Ihre Recherche steht Ihnen auch eine Online-
Bestellfunktion zur Verfügung. Inhaltliche Zusammenfassungen und
Inhaltsverzeichnisse zu jeder Studie sind im Internet einsehbar.
Individueller Service
Gerne senden wir Ihnen auch unseren Papier-
katalog zu. Bitte fordern Sie Ihr individuelles Exemplar bei uns an. Für
Fragen, Anregungen und individuelle Anfragen stehen wir Ihnen gerne zur
Verfügung. Wir freuen uns auf eine gute Zusammenarbeit.
Ihr Team der Diplomarbeiten Agentur
INHALTSVERZEICHNIS
1 EINLEITUNG ... 5
1.1 M
OTIVATION
... 6
1.2 Z
IELE
... 6
1.3 V
ORGEHENSWEISE
... 7
2 GRUNDBEGRIFFE... 9
2.1 G
ESCHÄFTSPROZESSE
, W
ORKFLOWS UND
W
ORKFLOW
-M
ANAGEMENT
-S
YSTEME
... 10
2.2 T
RANSAKTIONEN
... 11
2.3 K
OMPONENTEN UND KOMPONENTENORIENTIERTE
R
AHMENWERKE
... 12
3 COMPFLOW ... 15
3.1 P
ROBLEMSTELLUNG
... 16
3.2 D
AS
C
OMP
F
LOW
-L
ÖSUNGSKONZEPT
... 19
3.3 K
OMPONENTENSYSTEME ALS
R
EALISIERUNGSGRUNDLAGE
... 24
3.4 R
EALISIERUNG MIT ASPEKTORIENTIERTEN
K
OMPONENTENSYSTEMEN
... 28
3.5 F
AZIT
... 30
4 ENTERPRISE JAVABEANS ... 31
4.1 E
NTERPRISE
J
AVA
B
EANS
G
RUNDLAGEN
... 32
4.2 E
NTERPRISE
J
AVA
B
EANS
K
OMPONENTEN
... 36
4.3 E
NTERPRISE
J
AVA
B
EANS
U
MGEBUNG
... 45
4.4 E
NTERPRISE
J
AVA
B
EANS ALS
K
OMPONENTENSYSTEM
... 51
4.5 F
AZIT
... 54
5 LÖSUNGSSTRATEGIE ... 55
5.1 A
NALYSE
... 56
5.2 L
ÖSUNGSSCHRITTE
... 57
6 REALISIERUNGSGRUNDLAGE... 59
6.1 A
NALYSE
... 60
6.2 U
MSETZUNG
... 62
6.3 A
NWENDUNGSKONFIGURIERBARKEIT UND
-
ERWEITERBARKEIT
... 68
6.4 F
AZIT
... 71
7 REALISIERUNG... 73
7.1 V
ORGEHENSWEISE
... 74
7.2 A
BBILDUNG DER
R
EPRÄSENTATIONSELEMENTE
... 75
7.3 V
ERBINDER
... 78
7.4 V
ERBINDUNGSPUNKTE
... 81
7.5 F
AZIT
... 89
8 TRANSAKTIONALE WORKFLOWS... 91
8.1 A
NALYSE
... 92
8.2 R
EALISIERUNG
... 95
8.3 F
AZIT
...103
9 IMPLEMENTIERUNG ...105
9.1 A
NALYSE
...106
9.2 G
ROBENTWURF
...107
9.3 F
EINENTWURF
...108
9.4 U
MSETZUNG
...111
9.5 F
AZIT
...113
10 BEISPIEL WORKFLOW...115
10.1 D
ER
B
EISPIEL
-W
ORKFLOW
...116
10.2 A
NALYSE
...117
10.3 U
MSETZUNG
...118
11 ZUSAMMENFASSUNG...121
11.1 A
UFGABENSTELLUNG
...122
11.2 L
ÖSUNGSWEG UND ERZIELTE
F
ORTSCHRITTE
...122
11.3 A
USBLICK
...125
A LITERATUR ...127
B QUELLTEXTE DES RAHMENWERKS...131
C QUELLTEXTE DES BEISPIEL-WORKFLOWS...139
1
Einleitung
Schüler:
Kann Euch nicht eben ganz verstehen.
Mephistopheles:
Das wird nächstens schon besser gehen,
Wenn ihr lernt alles reduzieren
Und gehörig klassifizieren.
(Aus Goethes Faust I)
Einleitung
1.1 Motivation
Workflow-Management-Systeme (WfMS) stellen eine wichtige Ausprägung kooperativer
Informationssysteme dar, die vor allem zur Unterstützung von prozeßorientierten, datenintensiven
Kooperationen wie Geschäftsprozesse und ingenieur- und softwaretechnische Entwicklungsvorgänge
eingesetzt werden. Hierzu werden Geschäftsprozesse bzw. Entwicklungsvorgänge auf Workflows
abgebildet, die im Rahmen des WfMS ausführbar sind.
Unter weitreichenden Prozessen werden Geschäftsprozesse verstanden, deren Prozeßschritte über
mehrere funktionale und organisatorische Einheiten verteilt sind. Solche weitreichende Prozesse tauchen
insbesondere bei virtuellen Unternehmen oder auch beim elektronischen Handel auf. Diese stellen
besondere Anforderungen an die sie umsetzende Workflow-Unterstützung. So müssen Workflows
aufgrund der sich ständig ändernden Marktsituation flexibel sein. Änderungen und Erweiterungen
müssen dynamisch, d.h. zur Laufzeit eingebracht werden. Bei virtuellen Unternehmen ist zudem darauf
zu achten, daß die Autarkie der Prozeßteilnehmer stets gewahrt wird.
Der CompFlow-Ansatz [Schm99] erfüllt die Anforderungen der umfassenden Unterstützung
weitreichender Prozesse durch das Zwei-Ebenen-Workflow-Metamodell, das Workflow-Modell-
Wörterbuch und die aspektelementorientierte Schemarepräsentation der Workflow-Schemata. Ein
wichtiges Ergebnis der CompFlow-Architektur liegt in der Aufteilung der Funktionalität eines
Workflows auf einzelne Aspekte, die jeweils orthogonale Gesichtspunkte des Workflows betreffen. Die
CompFlow-Architektur wird durch das Konzept der kompositen Anwendung realisiert. Es handelt sich
dabei um eine neue Anwendungsarchitektur auf der Basis aspektseparierter Komponenten, die zur
Laufzeit anpaß- und erweiterbar sind. Zur Implementierung können Technologien wie Enterprise
JavaBeans [MaHa99] oder ActiveX verwendet werden.
Enterprise JavaBeans stellen ein neuartiges komponentenorientiertes Rahmenwerk zur Realisierung von
verteilten Geschäftsanwendungen dar. Elementare Dienste, die zur Entwicklung von komplexen
Geschäftsanwendungen benötigt werden wie Sicherheitsmechanismen, Persistenz oder Transaktionen,
stellt die Enterprise JavaBeans Umgebung zur Verfügung. Die Entwicklung kann sich daher auf den
Kern der Anwendung, d.h. die eigentliche Geschäftslogik konzentrieren.
1.2 Ziele
Das Ziel der Arbeit besteht darin, ein Realisierungskonzept zur Umsetzung der CompFlow-Architektur
auf Basis der Enterprise JavaBeans zu entwickeln. Zusätzlich soll das entwickelte Realisierungskonzept
um die Ausführung von transaktionalen Workflows erweitert werden. Abschließend soll eine
Implementierung erstellt und an einem Beispiel-Workflow demonstriert werden. Zur Darstellung des
Beispiel-Workflows sollen Techniken zur WWW-Integration genutzt werden.
Einleitung
Seite
7
1.3 Vorgehensweise
Zur Erreichung der definierten Ziele müssen zunächst einige Grundlagen vorgestellt werden, welche für
das weitere Vorgehen erforderlich sind. Kapitel 2 beginnt mit der Definition wichtiger Grundbegriffe wie
WfMS, Transaktionen und komponentenorientierte Rahmenwerke. Kapitel 3 stellt anschließend die
Problemstellung bei der Unterstützung weitreichender Prozesse und den CompFlow-Lösungsansatz vor.
Außerdem werden Komponentensysteme als Realisierungsgrundlage sowie die Realisierung mit
aspektorientierten Komponentensystemen dargestellt. In Kapitel 4 wird das komponentenorientierte
Rahmenwerk Enterprise JavaBeans ausführlich vorgestellt. Insbesondere wird dabei untersucht, ob
Enterprise JavaBeans einem Komponentensystem im Sinne der Definition aus Kapitel 3 entsprechen.
Nach der Darstellung der Grundlagen wird in Kapitel 5 eine Lösungsstrategie für das weitere Vorgehen
entwickelt. Grundlage der Überlegungen ist, daß CompFlow auf der strikten Aspektseparierung basiert.
Transaktionen stellen daher orthogonale Funktionalität, also einen eigenen Aspekt dar und können
unabhängig vom Realisierungskonzept entwickelt werden. Insgesamt besteht die Lösungsstrategie aus
drei Schritten.
Im ersten Lösungsschritt in Kapitel 6 wird die Realisierungsgrundlage gebildet. Dazu werden Enterprise
JavaBeans durch komposite Anwendungen zu einem Komponentensystem vervollständigt. Damit bilden
sie die Grundlage für das Realisierungskonzept, das in Kapitel 7 entwickelt wird. Im dritten und letzten
Schritt der Lösungsstrategie in Kapitel 8 wird das Realisierungskonzept um den Transaktionsaspekt
erweitert.
Die Implementierung auf der Basis des vorher entwickelten Realisierungskonzepts wird in Kapitel 9
erstellt. Darauf aufbauend wird in Kapitel 10 ein Beispiel-Workflow vorgestellt. Den Abschluß der
Arbeit bildet schließlich Kapitel 11 mit einer Zusammenfassung und einem Ausblick. Abbildung 1-1
zeigt die Struktur der Arbeit in einer übersichtlichen Grafik.
Einleitung
Komponentenorientierte
Rahmenwerke
Untersuchung der
Enterprise JavaBeans
Bildung der Realisierungsgrundlage
Ergänzung der EJBs zu einem
Komponentensystem durch
komposite Anwendungen
Entwurf des Rahmenwerks
Geschäftsprozesse,
Workflows und WfMS
Zusammenfassung und
Ausblick
Kapitel 2
Kapitel 3
Kapitel 4
Kapitel 6
Kapitel 7
Kapitel 9/10
Kapitel 11
Umsetzung von Repräsentationselementen
durch Session und Entity Beans
Realisierung von Verbindern durch
registraturbasierte Koppelung
Umsetzung von signalbasierten und
datenbasierten Verbindungspunkten
Entwicklung einer Realisierung
auf Basis der Enterprise JavaBeans
Erweiterung des Lösungskonzepts um
transaktionales Verhalten
durch Einführung des Transaktionsaspekts
Realisierung des Rahmenwerks
Vorstellung und Umsetzung
eines Beispiel-Workflows
Vorstellung der
CompFlow-Architektur
Transaktionen und
transaktionale Workflows
Kapitel 8
Realisierung mit bisherigem Ansatz
Realisierung mit Transaktionskomponente
Abbildung 1-1: Struktur der Arbeit
2
Grundbegriffe
Als Grundlage für die folgenden Kapitel sollen in diesem Abschnitt
Grundbegriffe geklärt werden. Abschnitt 2.1 gibt einen Überblick über
Geschäftsprozesse, Workflows und Workflow-Management-Systeme. Mit der
Vorstellung von Transaktionen und dem Begriff des transaktionalen
Workflows wird anschließend der Zusammenhang zwischen Workflow-
Management-Systemen und Transaktionen hergestellt. Zuletzt werden für die
zu entwickelnde Realisierung Begriffe aus dem Bereich der
komponentenorientierten Rahmenwerke erläutert.
Grundbegriffe
Seite 10
2.1 Geschäftsprozesse, Workflows und Workflow-
Management-Systeme
Die Begriffe Geschäftsprozeß und Workflow werden häufig synonym verwendet, obwohl sie
unterschiedliche Sichtweisen desselben Vorgangs wiedergeben. Ein Geschäftsprozeß bezeichnet einen
Prozeß in einem Wirtschaftsunternehmen oder einer Organisation. Hier steht die fachliche, d.h. die
betriebswirtschaftliche Betrachtungsweise im Vordergrund. Ein Workflow bezeichnet dagegen die
informationstechnische Umsetzung eines Geschäftsprozesses. Er beschreibt die funktionale Zerlegung
der Aufgaben eines Prozesses, die zu ihrer informationstechnischen Umsetzung verwendeten Ressourcen
sowie deren Zusammenspiel über Kontroll- und Datenflüsse [Schm99].
Die Umsetzung eines realen Geschäftsprozesses auf einen Workflow erfolgt in zwei Stufen, wie
Abbildung 2-1 zeigt. Zunächst wird ein Geschäftsprozeß zu einem Prozeßschema formalisiert. Dabei
erfolgt die Formalisierung auf der Basis eines Prozeßmodells, das die Menge der verfügbaren Elemente
zur Formalisierung von Geschäftsprozessen enthält. In einem zweiten Schritt wird dann das
Prozeßschema auf ein Workflow-Schema abgebildet. Auch auf dieser Ebene dient ein Modell, das
Workflow-Modell, zur Beschreibung der verfügbaren Elemente eines Workflow-Schemas.
Geschäftsprozeß
Prozeßmodell
Prozeßschema
Workflow-Modell
Workflow-Schema
Abbildung 2-1: Zweistufige Abbildung eines Geschäftsprozesses
Workflow-Modelle können wiederum durch sogenannte Workflow-Metamodelle dargestellt werden.
Diese versuchen die Elemente eines Workflow-Modells und ihre Beziehungen zu beschreiben. Zur
Beherrschung der Komplexität der Metamodelle hat sich hier eine Aufteilung der Metamodellelemente in
disjunkte Mengen, den Aspekten [Jabl95], durchgesetzt. Dabei sind Aspekte Elemente eines Workflow-
Metamodells, mit denen sich orthogonale Gesichtspunkte der informationstechnischen Unterstützung von
Prozessen beschreiben lassen.
Auf dieser Grundlage wurden Workflow-Metamodelle entwickelt, die die Workflow-
Metamodellelemente in Funktions-, Verhaltens-, Informations-, Organisations- und Operationsaspekte
unterteilen. Der Funktionsaspekt beschreibt, was in einem Workflow ausgeführt werden soll und
unterteilt einen Workflow in Teil-Workflows und elementare Workflows. Letztere sind Workflows, die
sich nicht weiter in untergeordnete Workflows zerlegen lassen. Im Verhaltensaspekt wird der Ablauf
eines Workflows durch Kontrollstrukturen definiert. Mit dem Informationsaspekt wird der
Datenaustausch zwischen den Modellelementen abgedeckt. Der Organisationsaspekt stellt eine
Verbindung zur Organisationsstruktur eines Unternehmens her und bezeichnet Aufgaben, die durch das
Einwirken von realen Personen zu erledigen sind. Der Operationsaspekt behandelt schließlich Aufgaben,
die ein Workflow durch informationstechnische Mittel wie z.B. Applikationen lösen kann.
Grundbegriffe
Seite
11
Informationssysteme, die speziell zur Unterstützung von Workflows entwickelt wurden, werden
Workflow-Management-Systeme genannt. Im einzelnen dienen WfMS der Definition, Verwaltung,
Ausfühung, Überwachung und Protokollierung von Workflows. Grundlage eines WfMS ist das bereits
beschriebene Workflow-Modell. Ein Prozeßschema wird auf ein Workflow-Schema abgebildet, welches
mit den Elementen des Workflow-Modells gebildet werden kann. Zur Ausführung eines Workflows
erzeugt ein WfMS zur Laufzeit aus einem Workflow-Schema eine sogenannte Workflow-Ausprägung,
wie Abbildung 2-2 verdeutlicht.
Workflow-Modell
Workflow-Schema
Workflow-Ausprägung
WfMS
Abbildung 2-2: Workflow-Management-System
2.2 Transaktionen
Transaktionen beschreiben ,,das dynamische Geschehen in und um ein Datenbanksystem" [LaLo95]. Sie
ermöglichen die Ausführung mehrerer Datenbankoperationen als einzelne Arbeitseinheit unter der
Berücksichtigung von vier wesentlichen Eigenschaften: Atomizität, Konsistenz, Isolation und
Dauerhaftigkeit. Die Anfangsbuchstaben der englischen Begriffe lassen sich zu dem Akronym ACID
zusammensetzen. Daher sind auch die Begriffe der ACID-Transaktion [LaLo95] oder ACID-
Eigenschaften gebräuchlich:
·
Atomizität: Eine Transaktion gelingt entweder vollständig oder bleibt ohne Auswirkungen. Die
Aufgabe eines Transaktionssystems muß es daher sein, auch bei einem Ausfall niemals
Teilergebnisse zurückzulassen.
·
Konsistenz: Ein System muß nach einer Transaktion wieder in einen korrekten also konsistenten
Zustand übergehen.
·
Isolation: Die Änderungen, die innerhalb einer Transaktion durchgeführt werden, sind für Klienten
bzw. parallel laufende Transaktionen erst nach der Festschreibung sichtbar.
·
Dauerhaftigkeit: Die Ergebnisse einer Transaktion sind nach der Festschreibung dauerhaft abgelegt,
d.h. in irgendeiner Form gespeichert.
Eine klassische Transaktion besteht aus den Schritten Arbeitsbeginn (beginn transaction), Festschreiben
(commit) bzw. Rücksetzen (abort). Dieses Transaktionsmodell wird häufig als flache Transaktion
bezeichnet, da alle Operationen innerhalb einer flachen Transaktion auf der selben Hierarchie-Ebene
durchgeführt werden. Die klassische ACID-Transaktion reicht für viele heutige Anwendungen jedoch
nicht aus. So erfordern moderne Geschäftsanwendungen z.B. die Möglichkeit, Teile einer Transaktion
zurückzusetzen oder die Fähigkeit Änderungen inkrementell festzuschreiben. In Folge dieser
Anforderungen wurden Erweiterungen des klassischen Transaktionsmodells entwickelt, welche z.B.
mehrere Transaktionen hierarchisch gruppieren oder die Isolation der ACID-Transaktion abschwächen.
Grundbegriffe
Seite 12
Die geschachtelte Transaktion (nested Transaction) [Moss82] ist ein Beispiel für eine Gruppierung.
Diese erlaubt die Ausführung von Subtransaktionen innerhalb einer übergeordneten Transaktion. Eine
Subtransaktion kann individuell festgeschrieben oder zurückgesetzt werden. Das Ergebnis einer
Subtransaktion ist nur für die übergeordnete Transaktion sichtbar. Bei offenen geschachtelten
Transaktionen [WeSc92] sind Ergebnisse von Subtransaktionen auch für andere Subtransaktionen lesbar.
Eine Verallgemeinerung der geschachtelten Transaktion wird durch Multi-Ebenen Transaktionen (Multi-
Level Transactions) [WeSc92] realisiert. Diese ermöglichen die Anordnung von Transaktionen in einer
Baumstruktur. Eine Subtransaktion kann dabei unabhängig festgeschrieben und ihre Ressourcen
freigegeben werden. Falls eine übergeordnete bzw. die globale Transaktion fehlschlägt, werden bereits
ausgeführte Subtransaktionen durch Kompensationstransaktionen [LaLo95] rückgängig gemacht.
Eine Saga [GMSa87] erlaubt die Verarbeitung von langandauernden Transaktionen und besteht aus einer
Reihe von ACID-Transaktionen, welche in einer bestimmten Reihenfolge auszuführen sind. Schlägt eine
Teiltransaktion fehl, so kann eine Saga durch die Ausführung von Kompensationstransaktionen
vollständig auf den Anfangszustand zurückgesetzt werden. Der Vorteil der Saga liegt in der
Abschwächung der Isolation bei langandauernden Transaktionen und der damit verbesserten
gleichzeitigen Ausführung mehrerer Transaktionen.
Der Begriff des transaktionalen Workflows [ShRu93] wurde eingeführt, um die Relevanz von
Transaktionen im Umfeld von Workflows zu unterstreichen. Gerade weitreichende Geschäftsprozesse
erfordern die koordinierte Ausführung von mehreren Aufgaben in einem verteilten System. Dazu müssen
die transaktionalen Eigenschaften einzelner Aufgaben oder des gesamten Workflows bestimmbar sein
[WoSh97]. Zur Umsetzung von transaktionalen Workflows wurden bisher zwei Ansätze verfolgt. Bei der
ersten Variante werden WfMS um transaktionale Eigenschaften ergänzt, um das System mit Fähigkeiten
wie Zuverlässigkeit und Konsistenz zu vervollständigen. Der zweite Ansatz greift erweiterte
Transaktionsmodelle auf und fügt ihnen Möglichkeiten zur Steuerung des Kontrolflusses hinzu. Dabei
können Workflows durch die Einführung von Kontroll- und Datenabhängigkeiten zwischen einzelnen
Aufgaben (tasks) definiert werden.
2.3 Komponenten und komponentenorientierte
Rahmenwerke
Neben Geschäftsprozessen, Workflows und Workflow-Management-Systemen sind für diese Arbeit die
Begriffe Komponenten und komponentenorientierte Rahmenwerke von wichtiger Bedeutung. Daher soll
an dieser Stelle eine genaue Bestimmung dieser Begriffe vorgenommen werden.
Die Grundlage für die Klärung des Komponentenbegriffs bildet die Definition aus [Schm99]:
Komponente
Eine Komponente ist eine Software-Einheit, deren Schnittstellen Vertragscharakter haben
und nur explizite Kontextabhängigkeiten aufweist.
Der Vertragscharakter der Schnittstellen wird durch die strikte Kapselung von Komponenten erreicht.
Dazu verzichten Komponenten im Gegensatz zu Objekten auf die Implementierungvererbung und
verwenden ausschließlich die Schnittstellenvererbung.
Grundbegriffe
Seite
13
Die Forderung nach expliziten Kontextabhängigkeiten soll die individuelle Austauschbarkeit von
Komponenten ermöglichen. Dazu werden implizite Abhängigkeiten mit Hilfe von Schnittstellen,
Introspektions- und Spezialisierungsmechanismen vermieden. Schnittstellen haben dabei die Aufgabe,
die Implementierung zu verbergen, und damit die Abhängigkeit von einem bestimmten Kontext zu
reduzieren. Da Komponenten stets in übersetzter Form vorliegen, dienen Introspektions- und
Spezialisierungsmechanismen der nachträglichen Anpassung einer Komponente an einen
Anwendungskontext. Dabei geben Introspektionsmechanismen Auskunft über die von einer
Komponente angebotenen Dienste und anpaßbaren Attribute. Über Spezialisierungsschnittstellen können
diese nachträglich verändert werden, ohne daß eine Neuübersetzung der Komponente notwendig ist.
Um eine Komponente verwenden zu können, muß von ihr eine Ausprägung gebildet werden. Eine
Ausprägung stellt eine eigenständige und ausführbare Repräsentation einer Komponente dar.
Komponentenausprägung
Eine Komponentenausprägung ist eine eigenständige ausführbare Repräsentation der
Komponente, die sprachunabhängig erzeugbar und sprachübergreifend nutzbar ist.
Das Ziel von komponentenorientierten Rahmenwerken ist es, die Verwendung von Komponenten in
unterschiedlichen Anwendungen zu erleichtern. Dazu erweitern sie Komponenten um eine Reihe von
Diensten, die die transparente Nutzung von Komponenten ermöglichen, wie Abbildung 2-3 demonstriert.
Integrationsdienste
Kooperationsdienste
Registratur
Exemplarverwaltung
Komponentenorientiertes Rahmenwerk
Transparenzsc hicht
Abbildung 2-3: Bestandteile eines komponentenorientierten Rahmenwerks
Die Registratur stellt einen zentralen Bestandteil eines komponentenorientierten Rahmenwerks dar. Hier
werden z.B. Informationen über die erstellbaren Komponenten abgelegt. Um die orts- und
implementierungstransparente Verwendung von Komponentenausprägungen zu ermöglichen, verfügen
komponentenorientierte Rahmenwerke über eine Transparenzschicht. Sie bewirkt zudem den
transparenten und verteilten Zugriff auf die Registratur. Die Instanzenverwaltung ermöglicht die
Verteilung und Optimierung der informationstechnischen Ressourcen. So kann z.B. eine
Komponentenausprägung von mehreren Anwendungen gleichzeitig verwendet werden. Grundlage dafür
ist ein Stellvertretermechanismus, bei dem Klienten nie mit der Komponentenausprägung direkt
verbunden sind, sondern stets auf einen Stellvertreter zugreifen.
Neben diesen elementaren Diensten unterstützen komponentenorientierte Rahmenwerke zunehmend
Grundbegriffe
Seite 14
auch Kooperations- und Integrationsdienste wie z.B. Persistenz- und Sicherheitsmechanismen. Aber auch
die Integration von Internetdiensten stellen neue Formen der Komponentenunterstützung dar.
3
CompFlow
Die CompFlow-Architektur [Schm99] liefert ein generisches Konzept,
welches alle wesentlichen Anforderungen an ein WfMS zur Unterstützung
weitreichender Geschäftsprozesse erfüllt. Mit der Definition des
aspektorientierten Komponentensystems wird zudem eine
Realisierungsgrundlage für die Umsetzung der CompFlow-Architektur
konzipiert.
Das vorliegende Kapitel erläutert die Problemstellung, die dem CompFlow-
Ansatz zugrundeliegt, und gibt einen Einblick in das Lösungskonzept.
CompFlow
Seite 16
3.1 Problemstellung
Neue Wege in der Zusammenarbeit von Unternehmen erfordern neue Ansätze in der
informationstechnischen Unterstützung. Geschäftsprozesse und Workflows treten immer mehr in den
Vordergrund. Insbesondere weitreichende Geschäftsprozesse, d.h. organisatorische Einheiten
überschreitende Prozesse, stellen hohe Anforderungen an ein WfMS. Solche Prozesse treten innerhalb
eines Unternehmens z.B. über Niederlassungen oder Tochtergesellschaften oder auch zwischen
selbständigen Unternehmen auf. Desweiteren spielen neuerdings sogenannte virtuelle Unternehmen eine
große Rolle, welche aus der zeitlich begrenzten Zusammenarbeit mehrerer Unternehmen ohne die
Bildung von zusätzlichen Institutionen entstehen, wie das Beispiel in Abbildung 3-1 demonstiert. Hier
haben sich die Unternehmen A, B und C zusammengeschlossen. Unternehmen A verfügt über eine
innovative Entwicklungsabteilung, kann die Neuentwicklungen aber nicht produzieren. Das
Unternehmen B besitzt die nötigen Produktionsmöglichkeiten und schließt sich daher Unternehmen A
an. Unternehmen C hat schließlich die besten Vertriebswege und sorgt für den Absatz des neuen
virtuellen Unternehmens.
Produktion
Entwicklung
Vertrieb
Unternehmen A
Produktion
Entwicklung
Vertrieb
Unternehmen B
Produktion
Entwicklung
Vertrieb
Unternehmen C
Virtuelles
Unternehmen
Abbildung 3-1: Virtuelles Unternehmen
Neben virtuellen Unternehmen kann auch die Zusammenarbeit zwischen Kunde und Anbieter im E-
Commerce als weitreichender Geschäftsprozeß identifiziert werden. Ein Kunde hat hier die Möglichkeit,
z.B. durch eine Bestellung einen Geschäftsprozeß auszulösen. Auf diese Weise kann zudem der sonst
übliche Medienbruch entfallen.
Aus diesen geänderten Voraussetzungen können insgesamt fünf Anforderungen an ein WfMS gestellt
werden, welches eine umfassende Unterstützung weitreichender Geschäftsprozesse bietet:
·
Autarkie der informationstechnischen Umsetzung: Gerade bei virtuellen Unternehmen besteht
das Problem, daß die Teilnehmer unterschiedliche Softwaresysteme einsetzen. Um eine reibungslose
Zusammenarbeit zu erlauben und gleichzeitig die Autarkie der Prozessteilnehmer zu wahren, muß
eine umfassende und weitreichende Workflow-Unterstützung eine dynamische und feingranulare
Zuweisung der informationstechnischen Ressourcen zur Umsetzung der Prozesse ermöglichen.
Darüberhinaus müssen die Ressourcen transparent nutzbar sein, d.h. die Umsetzung eines Dienstes
darf nicht erkennbar sein.
·
Inkrementelle Abbildung der Prozeß- auf Workflow-Schemata: Die wachsende Dynamik der
CompFlow
Seite
17
Märkte aber auch die zeitliche Begrenztheit von virtuellen Unternehmen fordert eine immer
schnellere Reaktion auf die geänderten Voraussetzungen. Dies betrifft insbesondere auch die
informationstechnische Unterstützung. Daher erfordert eine umfassende Unterstützung
weitreichender Prozesse die inkrementelle Abbildung von Prozeß- auf Workflow-Schemata.
·
Flexibilität: Eine umfassende und weitreichende Workflow-Unterstützung muß flexibel sein, d.h.
ein WfMS muß Änderungen an einem Workflow-Schema zur Laufzeit erlauben.
·
Dynamische Erweiterbarkeit: Der dynamische Wandel der Prozesse hat zur Folge, daß Workflow-
Schemata häufig Elemente enthalten, die durch das Workflow-Modell des WfMS nicht unterstützt
werden. Eine umfassende und weitreichende Workflow-Unterstützung muß daher Erweiterungen
des zu Grunde liegenden Workflow-Modells dynamisch zur Laufzeit umsetzen können.
·
Skalierbarkeit: Ein WfMS muß in der Lage sein, mit einem Unternehmen ,,mitwachsen" zu
können, d.h. es darf nicht auf eine gewisse Zahl von Prozessen beschränkt sein, sondern muß zu jeder
Zeit die Gesamtheit der Prozesse eines Unternehmens tragen können. Das WfMS muß somit
skalierbar sein.
Bei einem Vergleich dieser neuen Anforderungen mit bestehenden Ansätzen stellt sich heraus, daß bisher
nur Teilmengen zur Unterstützung weitreichender Workflows abgedeckt werden. Dabei gibt es im
Wesentlichen drei Ursachen, welche im Folgenden beschrieben werden:
·
Das verwendete Workflow-Modell verhindert bereits die autarke Wahl der Ressourcen: Das
Workflow-Metamodell, das den meisten WfMS zugrundeliegt, zerteilt die Modellelemente in
Funktions-, Operations-, Organisations-, Informations- und Verhaltensaspekt. Bei dieser Unterteilung
ist der Funktionsaspekt einer logischen Ebene zuzuordnen, da er nur die Aufgaben, die in einem
Workflow zu lösen sind, spezifiziert. Die informationstechnischen Ressourcen zur Lösung dieser
Aufgaben werden im Operationsaspekt angegeben. Der Operationsaspekt entspricht somit einer
implementierenden, physischen Ebene. Insgesamt ergibt sich beim Funktions- und Operationsaspekt
eine Trennung zwischen logischer und physischer Ebene. Eine feingranulare Zuweisung der
Ressourcen ist daher an dieser Stelle gegeben. Eine derartige Trennung findet bei den übrigen
Aspekten jedoch nicht statt. Die Folge davon ist, daß für die anderen Aspekte eine feingranulare
Zuweisung von Ressourcen nicht möglich ist. So können z.B. Datenstrukturen, welche im
Informationsaspekt festgelegt werden, nicht unterschiedlichen Datenbanken zugewiesen werden.
·
Bestehende Ansätze befinden sich in einem Dilemma zwischen Flexibilität und Skalierbarkeit:
Bestehende Ansätze lassen sich bezüglich ihres Ausprägungsmodells, welches darstellt, wie ein
WfMS Ausprägungen eines Workflow-Schemas bildet, in zwei Gruppen einteilen. Die erste Gruppe
stellen die indirekt Ausprägungen bildende Ansätze dar. Hier werden Workflow-Schemata zunächst
auf Schemarepräsentationen abgebildet. Aus diesen werden anschließend Workflow-Ausprägungen
erstellt. Der Vorteil dieser Gruppe liegt in der guten Skalierbarkeit, da die Ausprägungserstellung
zeitlich und örtlich von der eigentlichen Schemaabildung getrennt erfolgen kann. Eine
Schemarepräsentation kann zur Skalierung z.B. auf unterschiedlichen Rechnern verteilt werden. Dies
stellt zugleich einen Nachteil der indirekt Ausprägungen bildenden Ansätze dar, da
Schemaänderungen nicht zur Laufzeit eingebracht werden können. Die Flexibilität dieser Gruppe ist
somit stark eingeschränkt. Die zweite Gruppe sind die direkt Ausprägungen bildenden Ansätze. Eine
Schemarepräsentation entfällt hier. Die Workflow-Schemata werden meist in einer Workflow-
CompFlow
Seite 18
Sprache verfaßt, die das WfMS direkt interpretieren kann. Somit können Änderungen des
Workflow-Schemas direkt umgesetzt werden. Direkt Ausprägungen bildende Ansätze besitzen daher
eine gute Flexibilität. Die Skalierbarkeit ist jedoch eingeschränkt, da eine verteilte
Ausprägungserstellung das Vorhandensein eines Workflow-Interpreters auf jedem Rechner erfordert.
Zusammenfassend kann gesagt werden, daß sich bestehende Ansätze in einem Dilemma zwischen
Flexibilität und Skalierbarkeit befinden. Während indirekt Ausprägungen bildende Ansätze eine gute
Skalierbarkeit bieten aber wenig flexibel sind, ermöglichen direkt Ausprägungen bildende Ansätze
eine hohe Flexibilität, sind aber in ihrer Skalierbarkeit eingeschränkt.
·
Bestehende Ansätze erlauben keine Erweiterungen: Bei der Untersuchung der bestehenden
Ansätze stellt sich heraus, daß WfMS bis auf eine Ausnahme keine Erweiterungen zulassen. ,,So
kommt es zu dem Paradox, daß ausgerechnet das Mittel zur Unterstützung des Wandels selbst wenig
wandlungsfähig ist" [Schm99]. Der Grund dafür liegt in der starren Verknüpfung des Workflow-
Modells mit dem WfMS. Das Workflow-Modell wird nicht explizit dargestellt und kann
entsprechend auch nicht um neue Elemente erweitert werden.
Ein Lösungskonzept muß folglich diese genannten Probleme aufgreifen, um die fünf genannten
Anforderungen an ein WfMS zu erfüllen. Dabei sind insbesondere das Workflow-Metamodell, die
Repräsentation des Workflow-Modells und die Schemarepräsentation als Ansatzpunkte zu sehen.
CompFlow
Seite
19
3.2 Das CompFlow-Lösungskonzept
Das Lösungskonzept besteht aus drei Schritten. Der erste Schritt ist die Bildung eines geeigneten
Workflow-Metamodells, das die dynamische und feingranulare Zuweisung von Ressourcen erlaubt. Im
zweiten Schritt wird eine dynamische Verwaltung des Workflow-Modells entwickelt. Der letzte Schritt
betrifft schließlich die Forderung nach einer dynamischen Schemarepräsentation.
3.2.1 Zwei-Ebenen-Workflow-Metamodell
Das Problem bei den existierenden Workflow-Metamodellen besteht darin, daß sie keine saubere
Trennung zwischen logischer und physischer Ebene vollziehen. Lediglich für den Funktions- und
Operationsaspekt gibt es hier eine eindeutige Zuordnung. Dabei ist der Funktionsaspekt der logischen und
der Operationsaspekt der physischen Ebene zuzuordnen. Der Vorteil dieser Trennung liegt darin, daß ein
Workflow auf der logischen Ebene ressourcenunabhängig definiert werden kann. Zusätzlich können auf
dieser Ebene Anforderungen an die sie umsetzenden informationstechnischen Mittel gestellt werden. Auf
der physischen Ebene können anschließend die erforderlichen Ressourcen beschrieben werden.
Das Zwei-Ebenen-Workflow-Metamodell schließt die Lücke, indem der Informations-, Verhaltens- und
Organisationsaspekt jeweils um einen Aspekt auf der physischen Ebene ergänzt wird, wie Abbildung 3-2
darstellt.
Funktionsaspekt
Informationsaspekt
Verhaltensaspekt
Organisationsaspekt
Operationsaspekt
Datenaspekt
Kontrollaspekt
Verzeichnisaspekt
Logische Ebene
Physische Ebene
Abbildung 3-2: Zwei-Ebenen-Workflow-Metamodell
Der Informationsaspekt wird durch den Datenaspekt ergänzt. Der Kontrollaspekt vervollständigt den
Verhaltensaspekt auf der physischen Ebene. Der Organisationsaspekt wird schließlich durch den
Verzeichnisaspekt erweitert.
Eine Aufteilung in logische und physische Aspekte reicht für die feingranulare Zuweisung von
Ressourcen letztendlich nicht aus. Daher werden Aspekte weiter verfeinert und in Aspektelemente
zerlegt. Somit können z.B. im Workflow-Modell Datenstrukturen durch Elemente des
Informationsaspekts dargestellt und durch Elemente des Datenaspekts wie z.B. verschiedene
Datenbanken abgelegt werden. Darüberhinaus bilden Aspektelemente bereits auf der Ebene des
Workflow-Metamodells die Grundlage für die feingranulare Erweiterbarkeit des Workflow-Modells.
Die Zuordnung zwischen physischen Elementen und Ressourcen zeigt Abbildung 3-3. Dabei beschreibt
ein physisches Element eine Menge von Diensten. Diese Dienste sind notwendig, um das logische
Element zu unterstützen. Dienste werden wiederum durch Ressourcen bereitgestellt, welche durch
CompFlow
Seite 20
Ressourcenbeschreibungen vertreten sind, da sie selbst nicht Bestandteil des Modells sind.
Physisches Element
Ressourcenbeschreibung
Dienst
1..*
1..*
1..*
1..*
unterstützt
1..*
1..*
1..*
1..*
stellt bereit
Abbildung 3-3: Physisches Element, Dienst und Ressourcen
3.2.2 Workflow-Modell-Wörterbuch
In einem weiteren Schritt konzipiert CompFlow eine dynamische Verwaltung des Workflow-Modells
durch die Einführung eines Workflow-Modell-Wörterbuchs, in dem das Workflow-Modell repräsentiert
wird. Ein Wörterbuch entspricht einer Datenbank, welches mit Hilfe eines Informationsmodells
Informationen über die enthaltenen Artefakte speichert. In diesem Fall besteht das Informationsmodell
aus Objekttypen und deren Beziehungen. Die Grundlage für das Workflow-Modell-Wörterbuch bilden
die Bestandteile des Zwei-Ebenen-Workflow-Metamodells, also die Objekttypen, logische und physische
Aspekte, logische und physische Elemente, Dienste und Ressourcenbeschreibungen.
Zur vollständigen Repräsentation des Workflow-Modells durch das Wörterbuch werden zwischen den
Objekttypen Beziehungen definiert. So wird für logische und physische Elemente die Zugehörigkeit zum
logischen bzw. physischen Aspekt festgelegt. Zwischen logischen und physischen Elementen besteht die
Umsetzungsbeziehung. Die Unterstützung eines physischen Elementes durch Dienste beschreibt die
Unterstützungsbeziehung. Zwischen Diensten und Ressourcenbeschreibungen besteht die
Umsetzungsbeziehung.
Um die dynamische Erweiterbarkeit des Workflow-Modells sicherzustellen, können im Wörterbuch mit
einer Reihe von Operationen neue Elemente erzeugt oder bestehende gelöscht werden. Aufgabe der
Operationen ist dabei, die Konsistenz der Beziehungen aufrechtzuerhalten. So kann beispielsweise eine
Ressourcenbeschreibung nur dann neu eingefügt werden, wenn noch keine Ressourcenbeschreibung
gleichen Namens existiert.
Abbildung 3-4 verdeutlicht abschließend den Zusammenhang zwischen Workflow-Metamodell,
Workflow-Modell, Workflow-Modell-Wörterbuch und auf dieser Basis gebildete Workflow-Schemata.
Das durch das Zwei-Ebenen-Workflow-Metamodell beschriebene Workflow-Modell wird in einem
Workflow-Modell-Wörterbuch abgelegt. Das auf dieser Grundlage gebildete Workflow-Schema wird in
einem eigenen Workflow-Schema-Wörterbuch repräsentiert.
CompFlow
Seite
21
Zwei-Ebenen-
Workflow-
Metamodell
Zwei-Ebenen-
Workflow-
Modell
Workflow-
Schema
Workflow-
Modell-
Wörterbuch
Workflow-
Schema-
Wörterbuch
beschreibt
Grundlage für
repräsentiert
in
repräsentiert
in
Abbildung 3-4: Workflow-Modell- und Schema-Wörterbuch
3.2.3 Aspektelementorientierte Schemarepräsentation
Im letzten Schritt des Lösungskonzepts wird eine dynamische Schemarepräsentation entwickelt, die
flexible Schemaänderungen erlaubt und gleichzeitig skalierbar ist. Ein Ausweg aus dem Dilemma
zwischen Flexibilität und Skalierbarkeit wird dabei ein indirekt Ausprägungen bildender Ansatz mit einer
flexibel gestalteten Schemarepräsentation liefern. Somit soll gleichzeitig die Skalierbarkeit des indirekten
Ansatzes und die Flexibilität des direkten Ansatzes erreicht werden.
Als Lösung arbeitet CompFlow den aspektelementorientierten Ansatz heraus. Dieser entsteht über den
Zwischenschritt der aspektorientierten Schemarepräsentation, dessen Granularität sich jedoch als nicht
fein genug herausstellt. Daher wird im aspektelementorientierten Ansatz die Schemarepräsentation in
Repräsentationselemente zerlegt. Diese werden mit Hilfe von Verbindern und Verbindungspunkten
verknüpft, wie Abbildung 3-5 zeigt. Ein Repräsentationselement entspricht jeweils einem Aspektelement
einer Schemarepräsentation.
Repräsentations
element
Repräsentations
element
Temporaler Verbindungspunkt
Repräsentations
element
Temporaler Verbinder
Nicht-Temporaler Verbinder
Nicht-Temporaler
Verbindungspunkt
Abbildung 3-5: Repräsentationselemente, Verbinder und Verbindungspunkte
Verbinder und Verbindungspunkte existieren in temporaler und nicht-temporaler Form. Ein temporaler
Verbinder gibt eine zeitliche Beziehung zwischen zwei Repräsentationselementen wieder. Ein nicht-
temporaler Verbinder entspricht einer Dienstnehmer-/Dienstgeberbeziehung. Die Verknüpfung zweier
Repräsentationselemente über Verbinder setzt voraus, daß beide über entsprechende temporale oder
nicht-temporale Verbindungspunkte verfügen. Abbildung 3-6 zeigt ein Beispiel eines Workflows mit
aspektelementorientierter Zerlegung.
CompFlow
Seite 22
Auftrags-
erfassung
Standard-
prüfung
Auftrag-
speicher
XOR-Split
Auftragswert
5000
Detaillierte
Prüfung
OR-Join
nicht-temporaler Verbindunspunkt
temporaler Verbindungspunkt
nicht-temporaler Verbinder
temporaler Verbinder
Abbildung 3-6: Aspektelementorientierte Zerlegung
Diese Repräsentation erfüllt die Forderungen nach Flexibilität und Erweiterbarkeit. So können jederzeit
neue Repräsentationselemente eingebracht oder gelöscht werden, ohne daß bereits existierende Elemente
davon berührt werden. Darüberhinaus bildet die aspektelementorientierte Repräsentation die Grundlage
für eine informationstechnische Umsetzung, welche gleichzeitig die Forderungen nach Flexibilität und
Skalierbarkeit erfüllt, und somit die Vorteile der direkt und indirekt Ausprägungen bildenden Ansätze
verbindet.
CompFlow
Seite
23
3.2.4 Zusammenfassung
Abschließend wird das Lösungskonzept für die Schaffung einer umfassenden Unterstützung
weitreichender Prozesse zusammengefaßt und deren Ergebnisse in Abbildung 3-7 dargestellt. Der
Ausgangspunkt war die Entwicklung des Zwei-Ebenen-Workflow-Metamodells, welches die flexible
und feingranulare Zuweisung von informationstechnischen Ressourcen bei der Realisierung von
Workflows ermöglicht, und so die Autarkie der Prozeßteilnehmer beibehält.
Zwei-Ebenen-
Workflow-
Metamodell
Zwei-Ebenen-
Workflow-
Modell
Workflow-
Schema
Workflow-
Modell
Wörterbuch
Aspektelement-
orientierte
Schema-
repräsentation
beschreibt
abgebildet auf
abgebildet auf
Autarkie
Abbildung 3-7: Konzeptuelle Lösungsschritte
Auf der Basis des Zwei-Ebenen-Workflow-Metamodells können Workflow-Modelle konzipiert werden,
die auf eine dynamische Modellverwaltung in Form eines Workflow-Modell-Wörterbuches abgebildet
werden. Damit wird die Erweiterbarkeit erfüllt.
Im letzten Schritt des Lösungskonzepts wurde mit der aspektelementorientierten Zerlegung auf der Basis
von Repräsentationselementen, Verbindern und Verbindungspunkten eine dynamische
Zwischenrepräsentation entwickelt, die gleichzeitig die Forderung nach Flexibilität und Skalierbarkeit
erfüllt.
Dieses Lösungskonzept gilt es nun durch ein geeignetes softwaretechnisches Konzept umzusetzen. Die
Lösung in Form von aspektorientierten Komponentensystemen wird im nächsten Abschnitt erarbeitet.
CompFlow
Seite 24
3.3 Komponentensysteme als Realisierungsgrundlage
Nachdem der letzte Abschnitt ein Lösungskonzept zur umfassenden Unterstützung weitreichender
Prozesse gezeigt hat, bedarf es nun eines softwaretechnischen Konzepts, das die Realisierung des
Lösungskonzepts erlaubt. Dazu werden zunächst die Anforderungen an ein softwaretechnisches
Lösungskonzept formuliert. Ein Vergleich mit komponentenorientierten Rahmenwerken wird zeigen,
daß diese die aufgeführten Anforderungen nur teilweise erfüllen. Auf Grund dessen wird das Konzept der
kompositen Anwendung vorgestellt. Mit kompositen Anwendungen werden Komponenten und
komponentenorientierte Rahmenwerke anschließend zu Komponentensystemen zusammengefaßt, auf
welchen die Realisierung der CompFlow-Architektur basiert.
3.3.1 Anforderungen an ein softwaretechnisches
Lösungskonzept
Zunächst werden die Anforderungen, die an ein softwaretechnisches Lösungskonzept zu stellen sind,
formuliert. Wie Abbildung 3-8 verdeutlicht, werden diese direkt aus dem CompFlow-Lösungskonzept
abgeleitet.
Zwei-Ebenen-
Workflow-Metamodell
Workflow-Modell-
Wörterbuch
Aspektelementorientierte
Schemarepräsentation
Bereitstellung von
Diensten durch
unterschiedliche
Ressourcen
Aufnahme von
Dienst-
beschreibungen
Aufnahme von
Ressourcen-
beschreibungen
Aufnahme
zusätzlicher
Repräsentations-
elemente
Veränderung der
Verbindung von
Repräsentations-
elementen
Veränderung
von
Repräsentations-
elementen
Ressourcen-
konfigurierbarkeit
Dienste-
konfigurierbarkeit
Anwendungs-
konfigurierbarkeit
Anwendungs-
erweiterbarkeit
Dienste-
erweiterbarkeit
Ressourcen-
erweiterbarkeit
Abbildung 3-8: Anforderungen an ein softwaretechnisches Lösungskonzept
Ein softwaretechnisches Konzept zur Realisierung des CompFlow-Ansatzes muß demnach die
·
Anwendungs-, Dienste- und Ressourcenkonfigurierbarkeit und die
·
Anwendungs-, Dienste- und Ressourcenerweiterbarkeit
unterstützen.
Aus dem Zwei-Ebenen-Workflow-Modell leitet sich die Anforderung der Ressourcenkonfigurierbarkeit
ab. Hierunter wird die Bereitstellung von Diensten durch veränderliche Ressourcen verstanden. Das
Workflow-Modell-Wörterbuch ermöglicht mit einer Reihe von Operationen das Hinzufügen von
Ressourcen und Diensten. Entsprechend muß ein softwaretechnisches Lösungskonzept die Dienste- und
Ressourcenerweiterbarkeit unterstützen.
CompFlow
Seite
25
Unter der Anwendungskonfigurierbarkeit wird die dynamische Verknüpfung von Ressourcen und
Diensten zu einer Anwendung verstanden. Die Möglichkeit, eine Anwendung dynamisch um Dienste
und Ressourcen erweitern zu können, wird als Anwendungserweiterbarkeit bezeichnet.
Die Analyse von komponentenorientierten Rahmenwerken im Hinblick auf die Anforderungen zeigt, daß
diese zwar die Dienste- und Ressourcenerweiterbarkeit sowie die Dienste- und
Ressourcenkonfigurierbarkeit unterstützen, wie Tabelle 3-1 verdeutlicht. Die
Anwendungskonfigurierbarkeit und -erweiterbarkeit werden jedoch nicht erfüllt.
Eigenschaften
Ressourcen
Dienste
Anwendungen
Erweiterbarkeit
Hinzufügen von
Komponenten
Hinzufügen von
Schnittstellen
Nicht erfüllt
Konfigurierbarkeit
Veränderung der
Zuordnung
Komponententyp
Komponente
Spezialisierungs-
mechanismen
Nicht erfüllt
Tabelle 3-1: Erfüllte Anforderungen durch komponentenorientierte Rahmenwerke
Um die beiden letzten Anforderungen zu erfüllen, wird in [Schm99] das Konzept der kompositen
Anwendung vorgestellt. Zusammen mit Komponenten und komponentenorientierten Rahmenwerken
bilden komposite Anwendungen Komponentensysteme. Im nächsten Abschnitt werden komposite
Anwendungen dargestellt.
3.3.2 Komposite Anwendungen
Eine komposite Anwendung ist eine Laufzeitabstraktion, welche die Verknüpfung von
Komponentenausprägungen beschreibt. Die Verknüpfung erfolgt durch die Ablage von
Spezialisierungsinformationen, welche Referenzen auf verbundene Komponententypen enthalten. Die
Referenzierung von Komponenten erfolgt dabei niemals direkt, sondern wird über die Indirektionsschicht
eines komponentenorientierten Rahmenwerks transparent gehalten. Der Grundgedanke einer kompositen
Anwendung liegt darin, daß die Anwendung dynamisch zur Laufzeit gebildet werden kann und nicht wie
üblich in statischer Form vorliegt. Dadurch wird die geforderte Anpaßbarkeit erreicht.
Abbildung 3-9 demonstriert wie aus Komponenten und Spezialisierungsinformationen Ausprägungen
von kompositen Anwendungen gebildet werden können. Die Komponenten A und B werden durch die
Angabe der Spezialisierungsinformationen 1 und 2 zu zwei unterschiedlichen Anwendungen verknüpft.
Von jeder Anwendung wurde anschließend jeweils eine Ausprägung erzeugt.
CompFlow
Seite 26
Komponente A
Komponente B
Komponente A
Komponente B
Komponente A
Komponente B
1
2
Komponenten
Spezialisierungs-
informationen
Spezialisierungs-
informationen
Ausprägung der
Kompositen
Anwendung 1
Ausprägung der
Kompositen
Anwendung 2
Abbildung 3-9: Komposite Anwendungen
Die Spezialisierungsinformationen einer kompositen Anwendung werden in Verknüpfungs- und
Parametrisierungsinformationen unterteilt. Die Verknüpfungsinformationen dienen zur Verknüpfung
von Komponenten. Mit den Parametrisierungsinformationen wird eine Komponente an den jeweiligen
Anwendungskontext angeglichen. Dazu werden Attribute einer Komponente mit Hilfe von symbolischen
Parametern angepaßt.
Bei der Spezialisierung einer kompositen Anwendung unterscheidet CompFlow zwei Formen. Die
anwendungsdokumentbasierte und die registraturbasierte Spezialisierung. Bei der ersten Variante
werden die Spezialisierungsinformationen aller an einer kompositen Anwendung beteiligten
Komponenten in einem einzigen Dokument zusammengefaßt. Dabei kann es ein zentrales Dokument für
alle Ausprägungen einer kompositen Anwendung geben, oder es wird für jede Ausprägung ein eigenes
Anwendungsdokument angelegt. Die Erweiterbarkeit und Flexibilität wird durch ein
Anwendungsdokument erfüllt. So kann das Dokument ohne spezielle Werkzeuge oder Neuübersetzung
editiert und wieder abgespeichert werden. Die Ausführung einer kompositen Anwendung erfolgt, indem
das Anwendungsdokument zur Laufzeit ausgelesen, und die darin enthaltenen
Spezialisierungsinformationen auf die jeweiligen Komponenten angewendet werden.
Die zweite Form der Spezialisierung einer kompositen Anwendung ist die registraturbasierte
Spezialisierung. Dabei werden die Spezialisierungsinformationen in einer Registratur abgelegt. Auch hier
können Änderungen dynamisch, also zur Laufzeit eingebracht werden. Wie bei der Spezialisierung mit
einem Anwendungsdokument, wird die Spezialisierung zur Laufzeit ausgelesen, d.h. sie wird von der
Registratur angefordert, und die Komponenten werden entsprechend dynamisch angepaßt.
CompFlow
Seite
27
3.3.3 Zusammenfassung
In diesem Abschnitt wurden Anforderungen an ein softwaretechnisches Konzept zur Umsetzung des
CompFlow-Ansatzes formuliert. Ein Vergleich mit komponentenorientierten Rahmenwerken zeigte, daß
diese die Anforderungen nur teilweise unterstützen. Daher wurde das Konzept der kompositen
Anwendung entwickelt. Komponenten, komponentenorientierte Rahmenwerke und komposite
Anwendungen bilden zusammen Komponentensysteme. Diese erfüllen, wie Tabelle 3-2 zeigt, alle
gestellten Anforderungen.
Eigenschaften
Ressourcen
Dienste
Anwendungen
Erweiterbarkeit
Hinzufügen von
Komponenten
Hinzufügen von
Schnittstellen
Komposite
Anwendung
Konfigurierbarkeit
Veränderung der
Zuordnung
Komponententyp
Komponente
Spezialisierungs-
mechanismen
Komposite
Anwendung
Tabelle 3-2: Erfüllung der Anforderungen durch Komponentensysteme
CompFlow
Seite 28
3.4 Realisierung mit aspektorientierten
Komponentensystemen
Komponentensysteme stellen ein geeignetes softwaretechnisches Konzept zur Umsetzung des
CompFlow-Ansatzes dar, wie der letzte Abschnitt gezeigt hat. Die Realisierung besteht aus zwei Teilen.
Zum einen muß die aspektelementorientierte Schemarepräsentation umgesetzt werden. Zum anderen
umfaßt es die Realisierung des Workflow-Modell-Wörterbuchs.
3.4.1 Realisierung der aspektelementorientierten
Schemarepräsentation
Für die Umsetzung der aspektelementorientierten Schemarepräsentation werden in diesem Abschnitt
Regeln aufgestellt, die eine Abbildung auf komposite Anwendungen realisieren. Die entwickelte Lösung
wird in Anlehnung an das Granularitätskriterium als aspektorientiertes Komponentensystem bezeichnet.
Die Umsetzung einer Schemarepräsentation erfolgt, indem Repräsentationselemente, Verbinder und
Verbindungspunkte auf Konzepte der kompositen Anwendung abgebildet werden, wie Abbildung 3-10
darstellt. Dabei werden Repräsentationselemente durch Komponenten und
Parametrisierungsinformationen umgesetzt. Verbinder können durch entsprechende
Verknüpfungsinformationen, d.h. Spezialisierungsinformationen, realisiert werden. Durch Schnittstellen
werden schließlich die Verbindungspunkte umgesetzt.
Aspektelementorientierte
Schemarepräsentation
Komposite
Anwendung
Repräsentations-
elemente
Komponententypen
und
Parametrisierungs-
informationen
Verbinder
Verknüpfungs-
informationen
Verbindungspunkte
Schnittstellen
Abbildung 3-10: Umsetzung der aspektelementorientierten Schemarepräsentation
3.4.2 Realisierung des Workflow-Modell-Wörterbuchs
Die Analyse zeigt, daß die Informationen, die in der Registratur eines komponentenorientierten
Rahmenwerks gespeichert werden, für die Realisierung eines Workflow-Modell-Wörterbuchs teilweise
nutzbar sind. Eine Ressourcenbeschreibung entspricht der Komponentenbeschreibung in der Registratur,
da aus Sicht eines komponentenorientierten Rahmenwerks eine Komponente eine Ressource darstellt.
Die Dienstebeschreibung im Workflow-Modell-Wörterbuch wird in der Registratur durch die
Schnittstellenbeschreibung wiedergegeben. Auch Beziehungen können in der Registratur identifiziert
werden. So entspricht die Bereitstellungsbeziehung der Zuordnung von Schnittstellenbeschreibungen zu
Komponentenbeschreibungen über Komponententypen. Die Umsetzung des Workflow-Modell-
Wörterbuchs erfolgt daher durch ein Integrationsmodell, welches diese Überlegungen zusammenfaßt,
wie in Tabelle 3-3 zeigt. Mit diesem Modell kann eine transparente Nutzung der in der Registratur
enthaltenen Informationen für die Zwecke des Workflow-Modell-Wörterbuchs erfolgen und die
CompFlow
Seite
29
Entstehung redundanter Informationen verhindert werden.
Workflow-Modell-Wörterbuch
Registratur
Ressourcenbeschreibung
Komponentenbeschreibung
Dienstebeschreibung
Schnittstellenbeschreibung
Bereitstellungsbeziehung verbindet Dienst- mit
Ressourcenbeschreibung
Zuordnung von Schnittstellenbeschreibung zu
Komponententypen, sowie Zuordnung von
Komponententypen zu
Komponentenbeschreibungen
Tabelle 3-3: Integrationsmodell