EAI Prozessmodellierung. Diplomarbeit

Größe: px
Ab Seite anzeigen:

Download "EAI Prozessmodellierung. Diplomarbeit"

Transkript

1 EAI Prozessmodellierung Analyse der Unterschiede zwischen den sprachlichen Konzepten XML Process Definition Language und Business Process Modelling Language mit Erstellung eines Konverters zwischen beiden Konzepten Eingereicht von: Florian Schweiger Diplomarbeit zur Erlangung des akademischen Grades Magister rerum socialium oeconomicarumque Magister der Sozial- und Wirtschaftswissenschaften (Mag. rer. soc. oec.) Fakultät für Wirtschaftswissenschaften und Informatik, Universität Wien Fakultät für Technische Naturwissenschaften und Informatik, Technische Universität Wien Studienrichtung: Wirtschaftsinformatik (E175) Begutachter: a.o. Univ. Prof. Dr. Ing. Jürgen Dorn Wien, im April 2004

2 1 INHALT 1 INHALT Einleitung Konzeptvergleich zwischen XPDL und BPML Detaillierter Vergleich Kontext Aktivitäten Verbindung von Aktivitäten Prozessinstanzierungsarten Variablen Zeitelemente Dokumentation Workflow Unterstützung Simulation Ausnahmebehandlung Spracherweiterung Transformationsregeln und Algorithmen Umwandlung von XPDL zu BPML Allgemein Element Package Element WorkflowProcess Aktivitäten BPML zu XPDL Element package Element process Aktivitätstypen Implementation Eingesetzte Technologie Design Realisierung Testprozess Modellierung des Testprozesses Darstellung des Beispielprozesses mit XPDL Darstellung des Beispielprozesses mit BPML Transformation Vergleich zwischen modelliertem und umgewandeltem Prozess Zusammenfassung Literaturverzeichnis Seite 2

3 2 Einleitung EAI (Enterprise Application Integration) ist laut einer Studie der Gartner Group eine jener Technologien mit beinahe 100%iger Umsatzwachstumschance im Zeitraum 2002 bis Es werden Zuwächse in Höhe von 1,275 Milliarden Dollar in Europa erwartet. (vgl. [Bisc02]) Viele Betriebe setzen bereits heute Geschäftsprozessmodellierungswerkzeuge (GPMW) wie ADONIS oder ARIS ein, um ihre Prozesse dokumentieren, analysieren und auch optimieren zu können. Um EAI erfolgreich in die Unternehmensumwelt integrieren zu können, ist es notwendig Geschäftsprozesse zu modellieren. Dies kann entweder in programmtechnischer Form, zum Beispiel durch Verwendung einer objektorientierten Programmiersprache oder durch Einsatz von graphischen Prozessmodellierungswerkzeugen erfolgen. Letztere werden heute von allen größeren EAI Applikationsherstellern zur Verfügung gestellt, nicht zuletzt um die Akzeptanz von EAI zu erhöhen. Während GPMW jegliche Art von Geschäftsprozessen modellieren können, ist es bei EAI Werkzeugen nicht notwendig eine solche Vielfalt zu ermöglichen. EAI Applikationen dienen rein zur Abbildung und Automatisierung von Informationsflüssen, sowohl im Sinne einer kompletten Automatisierung aber auch im Sinne von Teilautomatisierungen in Kombination mit manuellen Eingriffen. Die vorliegende Diplomarbeit geht aus einer Anstellung des Autors bei GFT Technologies hervor. Ein Kunde des Unternehmens setzt zur Modellierung seiner Prozesse das Prozessmodellierungswerkzeug ADONIS ein. Weiters war von Seiten des Kunden geplant eine noch näher zu bestimmende EAI Applikation einzuführen. Um zu vermeiden, bereits modellierte Prozesse abermals mit einem EAI Prozessmodellierungswerkzeug modellieren zu müssen, wurde GFT Technologies beauftragt eine Schnittstelle zwischen EAI Prozessmodellierungswerkzeug und ADONIS herzustellen. Die Erstellung einer Schnittstelle zwischen ADONIS und einer EAI Applikation erfordert eine Konvertierung in beiden Richtungen. ADONIS bietet, laut Herstellerinformation, die Möglichkeit, Prozesse mit XPDL (XML Process Definition Language) zu modellieren. Die kooperierenden EAI Applikationshersteller von GFT Technologies werden in Zukunft wahrscheinlich BPML (Business Process Modelling Language) als Importsprache unterstützen. In dieser Arbeit wird daher ein Konverter zwischen XPDL und BPML definiert und implementiert. Auf eine Auflistung der verwendeten EAI Applikationen muss aus Geheimhaltungsgründen verzichtet werden. Zielsetzung dieser Arbeit ist es, zwei Algorithmen bereitzustellen, welche verwendet werden können BPML in XPDL und XPDL in BPML zu transformieren. Um eine bloße theoretische Definition zu vermeiden, ist der ermittelte Algorithmus in Form einer Applikation umzusetzen. Ferner gilt es die Frage zu beantworten, ob es sinnvoll bzw. überhaupt machbar ist eine Übersetzung durchzuführen. Seite 3

4 Die Diplomarbeit wurde wie folgt gegliedert: 3. Konzeptvergleich zwischen XPDL und BPML Es soll dargelegt werden, welche speziellen Konstrukte in jeder Sprache modellierbar sind und wie die entsprechenden Gegenstücke, falls vorhanden, aufgebaut sind. 4. Transformationsregeln und Algorithmen Hier werden zwei Algorithmen präsentiert, welche eine Umwandlung eines XPDL Dokumentes in ein BPML Dokument und umgekehrt ermöglichen. 5. Implementation In diesem Kapitel werden die Architektur des Konverters und die verwendeten Applikationen und Applikationsschnittstellen vorgestellt. Weiters erfolgt die Definition eines Testprozesses, welcher in jeder der beiden Prozessgrammatiken abgebildet wird. Am Ende des Kapitels wird die Anwendung der definierten Algorithmen auf die modellierten Prozesse und ein Vergleich zwischen den manuell modellierten und den automatisch generierten Prozessen beschrieben. 6. Zusammenfassung Als Conclusio schließt die Diplomarbeit mit einer Zusammenfassung der erarbeiteten Ergebnisse, möglichen Erweiterungen des Konverterkonzeptes, sowie der dargestellten Algorithmen. Die Begriffe Prozessmodellierungsgrammatik, Prozessmodellierungssprache, Prozessgrammatik und Sprache werden in diesem Dokument synonym verwendet. Die Begriffe XPDL Engine und BPML Engine repräsentieren Applikationen, welche XPDL bzw. BPML Syntax interpretieren und ausführen. Sie sind in ihrer Funktion mit einem Workflow Management System vergleichbar. (vgl. [Alle01]) XML Elemente werden durch den Begriff Element in Kombination mit dem Elementnamen wiedergegeben. Das Element <XYZ>Inhalt</XYZ> wird zum Beispiel durch den Text Element XYZ beschrieben. Zusätzlich erfolgt für jedes Element die Angabe der Prozessgrammatik. Seite 4

5 3 Konzeptvergleich zwischen XPDL und BPML Ausgangsbasis für den Konzeptvergleich bilden die XML Schema Elemente der jeweiligen Sprache. Nicht berücksichtigt werden Sprachkonzepte, welche von Sprachinterpretern implementiert werden und nicht durch die Syntax gegeben sind. Unter Sprachinterpreter versteht man ein Programm, welches als Eingabe Prozessinstruktionen erhält, die in einer Prozessmodellierungsgrammatik ausgedrückt werden, und die dieser interpretiert und ausführt. Für einen abstrakteren Vergleich, welcher fundamentale sprachimanente Konzepte beinhaltet, sei auf [El-B03] verwiesen. BPML (Business Process Modelling Language) ([Arki02]), in der dieser Arbeit zu Grunde liegenden Version 1.0, ist eine blockorientierte Sprache. XPDL (XML Process Definition Language) ([MaNo02]) hingegen ist graphorientiert. Während der Erstellung dieser Arbeit, wurde vom betreuenden Professor eingebracht, dass bereits eine aktuellere Version der BPML Spezifikation existiert. Laut seiner Aussage ist es mit dieser Version bereits möglich Transitionen in BPML darzustellen. Da auf der Website des Konsortiums (vgl. [BPML04]), welches die BPML Spezifikation erstellt hat, keine entsprechende Spezifikation verfügbar war, bleibt das Konzept der Transitionen unter BPML unberücksichtigt. Unter Blockorientierung soll das Ausführungskonzept einer Programmiersprache wie zum Beispiel JAVA verstanden werden, d.h. aufeinander folgende Befehle werden hintereinander ausgeführt, ohne dass eine explizite Verbindung zwischen den Befehlen besteht. Graphorientierte Sprachen arbeiten hingegen mit Transitionen. D.h. es muss jeweils eine explizite Transition zwischen zwei Aktivitäten gesetzt werden, damit diese hintereinander ausgeführt werden können. (für eine Definition von Graph siehe [DorKa96]) Laut [Shap02] ist eine Umwandlung von Blockstruktur in Graphenstruktur kein Problem, die Umkehrung aber sehr wohl. Eine Umwandlung ist nur möglich, wenn gewisse Einschränkungen beachtet werden. Welche Einschränkungen notwendig sind, wurde im Rahmen dieser Arbeit ermittelt. Translation of blocked-structured flow control (routing) into a graph structure presents no fundamental difficulties. The reverse is more problematic. This can be facilitated by imposing a set of restrictions on the graph structure that guarantee it to be well-structured. [Shap02] Oberstes Element in beiden Sprachen ist das Paket. Während XPDL beliebig viele Pakete pro Dokument erlaubt, beschränkt BPML jedes Dokument auf ein einziges Paket. Innerhalb eines Paketes ist es möglich Prozesse, Variablen, etc. zu definieren. Eine weitere Gemeinsamkeit stellt die Subsummierung von Aktivitäten zu Prozessen dar. Damit Aktivitäten automatisiert abgewickelt werden können, ist es möglich Applikationen zu definieren. XPDL ist diesbezüglich mächtiger, da sämtliche Applikationen darstellbar sind. BPML beschränkt sich auf eine Verwendung von Webservice (vgl. [Boot04]) Applikationen. Seite 5

6 3.1 Detaillierter Vergleich Kontext Der Begriff Kontext bezeichnet ein BPML Konstrukt, welches eine Umgebung für alle Aktivitäten und Prozesse innerhalb des Kontextes definiert. Durch dieses Konstrukt ist es möglich, Variablen, Signale, etc. auf einen bestimmten Bereich einzuschränken. context s define an environment for the execution of related activities. Activities that execute within the same context use the context to exchange information and coordinate their execution. An activity can access and modify the value of properties defined within that context, instantiate a nested process, raise and synchronize signals, and so forth. [Arki02] Ein Kontext kann entweder explizit durch das context Element modelliert werden oder implizit durch die Definition eines process oder package Elementes gegeben sein. Es wird von einer Eltern-Kind Beziehung gesprochen, falls ein Kontext einen anderen einschließt. Definitionen, welche innerhalb des Vater-Kontextes definiert sind, stehen innerhalb des Kind-Kontextes zur Verfügung. The hierarchical composition of activities creates a relationship between contexts. When a context definition encapsulates another context definition, we refer to the encapsulating definition as the parent context and to the encapsulated definition as the child context. The child context shares all the definitions of the parent context and, recursively, any of its parent contexts. It can also add local definitions of its own. The child context does not share any of its local definitions with the parent context and, by definition, with any sibling context. [Arki02] In XPDL existiert kein entsprechendes Konstrukt Aktivitäten Während XPDL nur eine einzige Art von Aktivität vorsieht, gibt es unter BPML verschiedene Aktivitätstypen. Diese werden in der nachfolgenden Tabelle dargestellt. Aktivitätstyp action assign call compensate delay empty fault raise spawn Beschreibung des Aktivitätstypes Greift auf ein Webservice zu, wobei Eingabe- und Ausgabevariablen übergeben werden können. Weist einer Variablen einen neuen Wert zu. Instanziert einen Prozess und wartet bis dieser endet. Führt für den laufenden Prozess Kompensation aus. Kompensation bezeichnet die Umkehrung von allen bereits ausgeführten Prozessschritten für den jeweiligen Prozess. D.h. es werden alle Änderungen rückgängig gemacht. Führt zu einer Verzögerung um eine gewisse Zeitdauer. Diese Aktivität ist ohne Inhalt. Erzeugt einen Fehler. Erzeugt ein Signal. Instanziert einen Prozess, ohne darauf zu warten, dass dieser fertig gestellt wird. Seite 6

7 synch all choice foreach sequence switch until while Wartet auf das Auftreten eines vordefinierten Signals, welches zur Instanzierung eines Prozesses führt. Führt alle Aktivitäten parallel aus. Führt eines von mehreren möglichen Aktivitätssets auf Grund des Auftretens eines Ereignisses aus. (zur Definition von Aktivitätsset vgl. Element activityset in Abschnitt 4.2.2) Führt Aktivitäten für jedes Element einer Liste aus. Führt Aktivitäten sequentiell aus. Führt eines von mehreren möglichen Aktivitätssets auf Grund der Erfüllung einer Bedingung aus. Führt Aktivitäten ein- oder mehrmals aus, solange eine gewisse Bedingung nicht erfüllt ist. Führt Aktivitäten null oder mehrmals aus, solange eine gewisse Bedingung erfüllt ist. XPDL bietet nicht so viele verschiedene Aktivitätstypen. Eine Aktivität in XPDL entspricht am ehesten einer action Aktivität in BPML. Dies deswegen, da XPDL Aktivitäten auf Applikationen zugreifen können und somit auch auf Webservices. Die BPML Aktivitäten assign, compensate und empty können ebenfalls mit einer XPDL Aktivität modelliert werden. Allerdings gilt es zu beachten, dass die Aktivität compensate Teil des Transaktionskonzeptes von BPML ist. XPDL unterstützt Transaktionen nicht explizit, weshalb eine Umsetzung unter XPDL nicht sinnvoll erscheint. BPML call Aktivitäten können unter XPDL als Aktivitäten mit Implementationsart Subflow realisiert werden. Diese Aktivitätsart ermöglicht es, einen Prozess an Stelle der Aktivität auszuführen. Signale werden in XPDL nicht unterstützt, wodurch die BPML Aktivitäten raise und synch kein entsprechendes Pendant in XPDL vorfinden. Die BPML Aktivitäten all, choice, switch, until und while lassen sich in XPDL als Transitionen abbilden. Für die BPML Aktivität sequence gibt es unter XPDL mehrere Darstellungsarten, wobei sie sich direkt mittels einer XPDL Aktivität umsetzen lässt. Dabei muss definiert werden, dass es sich bei der verwendeten XPDL Aktivität um eine BlockActivity handelt. BlockActivity bezeichnet eine Aktivität, welche andere Aktivitäten beinhalten kann. Innerhalb der XPDL BlockActivity muss ein XPDL ActivitySet definiert werden, welches mehrere Aktivitäten beinhalten kann, wobei eine sequentielle Ausführung stattfindet. Seite 7

8 In XPDL gibt es folgende Aktivitätsstrukturen: Abbildung 1 Aktivitätsstrukturen in XPDL [MaNo02] Wie in Abbildung 1 ersichtlich, gibt es neben der erwähnten BlockActivity auch eine Route Aktivität. Diese Aktivität soll dazu dienen, eine Kombination mehrerer Transitionen, welche im Abschnitt Transitionen weiter unten behandelt werden, zu ermöglichen Verbindung von Aktivitäten XPDL verwendet für den Übergang von einer zur nächsten Aktivität Transitionen. Hierbei handelt es sich um ein zweiteiliges Konzept. Einerseits gibt es explizite Transitionen, welche die Verbindungen zwischen Aktivitäten bestimmen, andererseits gibt es so genannte TransitionRestriction Elemente. Diese sind Teil der Aktivitäten selbst und bestimmen, wie mit ein- und ausgehenden Verbindungen zu verfahren ist. Abbildung 2 Einschränkung von ein- und ausgehenden Transitionen durch TransitionRestriction Elemente Sowohl für eingehende als für ausgehende Verbindungen existieren zwei Möglichkeiten der Synchronisation. Für eingehende Verbindungen ( Join ) ist es möglich darauf zu warten bis alle vorhergehenden Aktivitäten beendet wurden ( AND Seite 8

9 Restriction ) oder bis eine vorhergehende Aktivität beendet wurde ( XOR Restriction ). Bei ausgehenden Verbindungen ( Split ) können mehrere Aktivitäten gleichzeitig (parallel; AND Restriction ) oder eine von mehren Aktivitäten verfolgt werden ( XOR Restriction ). Explizite Verbindungen zwischen Aktivitäten können nur mittels Transitionen und folglich mit XPDL modelliert werden. Durch die angewandte Blockstruktur in BPML ist eine implizite Reihenfolge und somit Verbindung der Aktivitäten gegeben. Ist eine Wiederholung von Aktivitäten notwendig, so müssen spracheigene Konstrukte wie zum Beispiel until Elemente angewandt werden. Explizite Aufrufe sind nur für process Elemente, welche Prozesse modellieren, definiert. Prozesse sind [ ] eine Summe von logisch zusammenhängenden Aktivitäten, [ ]. ([Wojd02]) Von dieser Definition muss für eine erfolgreiche Umwandlung des Transitionskonzeptes nach BPML Abstand genommen werden. Wird jede XPDL Aktivität als BPML Prozess modelliert, so ist eine Transformation realisierbar. process Elemente, welche BPML Prozesse repräsentieren, können per call Element instanziert werden und ermöglichen somit einen expliziten Aufruf. Nachteilig an dieser Art der Verbindung ist allerdings, dass bei jeder Anwendung dieses Elementes ein eigener Prozess instanziert wird, d.h. es existiert eine eigene Instanz dieses Prozesses. Problematisch ist dies deshalb, da eine Synchronisation von parallel ausgeführten Aktivitäten in Geschäftsprozesse möglich sein muss. Nachfolgend wird dieser Sachverhalt detailierter analysiert. Zwei Aktivitäten werden parallel ausgeführt, wobei sich im Anschluss eine sequentielle Aktivität befindet. Alle Aktivitäten werden als Prozesse modelliert. Da auch die sequentielle Aktivität als process Element repräsentiert wird, ist ein Aufruf durch ein call Element erforderlich. Jede der beiden parallelen Aktivitäten führt diesen Aufruf durch und demzufolge existieren zwei Instanzen der sequentiellen Aktivität. Somit resultiert diese Art der Verbindung in einer fehlerhaften Umsetzung. Es wäre lediglich möglich sequentielle Abläufe fehlerfrei darzustellen. Abbildung 3 Synchronisation von zwei parallelen Aktivitäten Wird für Prozesse eine andere Instanzierungsart gewählt, so ist es dennoch möglich Parallelität zu modellieren. Prozesse sind dann per Signal zu instanzieren. Hierbei ist es möglich mehrere Signale zu definieren, welche für eine Instanzierung eines Prozesses notwendig sind. Für das vorher genannte Beispiel würde dies bedeuten, dass jede der parallen Aktivitäten jeweils ein Signal auslöst und die serielle Aktivität auf diese zwei Signale warten muss, bis sie ausgeführt werden darf. (Zu beachten ist, dass die Aktivitäten als Prozesse modelliert werden und nur deshalb ein Aufruf über Signale erfolgen kann.) Seite 9

10 3.1.4 Prozessinstanzierungsarten Explizite Instanzierungsarten für Prozesse sieht ausschließlich BPML vor. Es existieren drei verschiedene Arten, nämlich Aktivität Ein Prozess dieses Instanzierungstypes kann vom gleichen Kontext (vgl. Abschnitt Kontext weiter unten) aus, mittels der BPML Aktivitäten call, spawn und compensate aufgerufen werden. Nachricht Ein Prozess dieses Instanzierungstypes ist die unabhängigste Art einen Prozess zu instanzieren. Der zugehörige Prozess wartet auf das Eintreffen einer Nachricht, welche nicht im selben Kontext (vgl. Abschnitt Kontext weiter unten) erstellt werden muss. Diese Art der Instanzierung ermöglicht Webservices zur Instanzierung von Prozessen. Signal Ein Prozess dieses Instanzierungstypes ist darauf beschränkt vom selben Kontext (vgl. Abschnitt Kontext weiter unten) aus instanziert zu werden. Sobald das erwartete Signal auftritt, kommt es zur Instanzierung des entsprechenden Prozesses. Im Gegensatz zur Instanzierungsart Aktivität ist es allerdings möglich, dass mehrere Signale für eine Instanzierung definiert werden können. Hierdurch können mehrere vorhergehende Prozesse synchronisiert werden. In XPDL ist die Instanzierungsart nicht näher spezifiziert. Allerdings gibt es bei XPDL die Möglichkeit den AccessLevel eines Prozesses zu spezifizieren. Diese kann entweder öffentlich ( PUBLIC ) (d.h. der Prozess kann von einem externen System bzw. einer externen Applikation aufgerufen werden) oder privat ( PRIVATE ) (d.h. der Prozess kann nur von einer Aktivität mit Implementationsart Subflow aufgerufen werden) sein. XPDL bietet auf Aktivitätsebene die Möglichkeit an, den Implementierungstyp zu spezifizieren. Eine Aktivität kann entweder manuell, durch eine Applikation oder durch einen Prozess implementiert sein. BPML sieht auf dieser Ebene keine entsprechende Angabe vor Variablen Variablen werden in BPML über Property Elemente definiert. Drei Grundtypen können unterschieden werden: simpletype complextype element Diese drei Grundtypen entsprechen XML Schema Typen. (vgl. [Fall01]) In XPDL werden Variablen über Datafield Elemente dargestellt. DataType Elemente spezifizieren um welchen Datentyp es sich handelt. Es existieren die folgenden Datentypen: Seite 10

11 Array Type Hierbei handelt es sich um ein Datenfeld ( Array ) an Datentypen, wobei die einzelnen Elemente dieses Datenfeldes vom gleichen Datentyp sein müssen. Basic Type Hierbei handelt es sich um XSD (XML Schema Definition) simpletype Datentypen. (vgl. [Fall01]) Declared Type Referenziert auf einen definierten Datentyp, welcher in einer Typdefinition deklariert wurde. Enumeration Type Ermöglicht die Darstellung von Aufzählungen. External Reference Referenziert auf ein externes Dokument, welches den gewünschten Datentyp definiert. List Type Dieser Datentyp hat die gleiche Funktion wie der Datentyp Array Type, allerdings findet keine Beschränkung der Anzahl der Elemente statt. Record Type Repräsentiert eine Menge an Elementen, welche von unterschiedlichem Datentyp sein können. Schema Type Ermöglicht die Definition eines Datentyps nach XSD. Union Type Definiert eine Menge an Datentypen, wobei einer davon für eine Dateninstanz verwendet wird Zeitelemente Unter Zeitelementen werden Zeitgeber verstanden, welche bei Erreichen eines bestimmten Zeitpunktes bzw. nach Ablauf einer Zeitspanne einen Prozess oder eine Aktivität ausführen. Beide Sprachen sehen Elemente für diesen Zweck vor. In XPDL ist dies durch so genannte Deadline Elemente möglich. Nach Ablauf einer bestimmten Zeitdauer wird eine Ausnahme ausgelöst, welche dazu führt, dass einer Transition gefolgt wird. Somit dient dieses Element unter XPDL rein zur Festlegung von Maximaldauern für Aktivitäten. BPML sieht für die Abbildung von Zeitdauern das Element Schedule vor. Dieses Element dient im Gegensatz zu XPDL nicht zur Ausnahmebehandlung. Es instanziert einen Prozess zum angegebenen Zeitpunkt und ermöglicht hierdurch die Ausführung einer Aktivität Dokumentation Aktivitäten können in beiden Sprachen dokumentiert werden. Während XPDL hierfür eine eigene Datei vorsieht, in welcher sich eine Beschreibung der jeweiligen Aktivität befindet, ist die Dokumentation unter BPML Bestandteil des jeweiligen Aktivitätselementes. Seite 11

12 3.1.8 Workflow Unterstützung Unter Workflow soll folgende Definition verstanden werden: The automation of a business process, in whole or part, during which documents, information or tasks are passed from one participant to another for action, according to a set of procedural rules. [Alle01] XPDL ist darauf ausgelegt Workflows zu unterstützen. Über das Element Implementation wird festgelegt, wie eine Aktivität implementiert ist. Es existieren hierfür drei verschiedene Möglichkeiten, nämlich manuell, Werkzeug unterstützt oder als Subflow. Ist eine Aktivität manuell implementiert, so wird diese Aktivität nicht durch eine XPDL-Engine unterstützt. Ist die Implementationsart gleich Werkzeug unterstützt, so bedeutet dies, dass diese Aktivität auf eine Applikation zugreift und somit durch diese realisiert wird. Subflow, die dritte Art der Implementation, dient dazu, einen Prozess aufzurufen, welcher die entsprechende Aktivität ausführt. Applikationen und Prozessteilnehmer sind durch eigene Elemente abbildbar. BPML unterstützt das Workflowkonzept nicht Simulation XPDL ermöglicht es Simulationsvariablen zu definieren. Diese Variablen sollen es ermöglichen, den Ablauf von Workflowprozessen zu simulieren. Es ist möglich die Dauer, die Kosten, die Wartezeit, die Kapazitätsauslastung (indirekt über das Attribut Instantiation ), etc. zu definieren. BPML kennt kein derartiges Konzept Ausnahmebehandlung BPML stellt ein umfangreiches Paket an Reaktionsmöglichkeiten für die Behandlung von Fehlern zur Verfügung. Es gibt Ausnahmeprozesse, welche auf eingehende Nachrichten hin instanziert werden. Gleichzeitig geht mit der Instanzierung die Beendigung aller gerade ausgeführten Kontextprozesse einher. Unter Kontextprozessen werden all jene Prozesse verstanden, welche innerhalb desselben Kontextes modelliert wurden. Die zweite Ebene des Ausnahmekonzeptes von BPML wird durch Fehlerroutinen ( fault handler ) dargestellt. Diese werden im jeweiligen Kontext definiert und können bei Auftreten von Fehlercodes entsprechende Aktivitäten zur Fehlerbehandlung aufrufen. Kompensationsprozesse stellen die dritte Stufe der Ausnahmebehandlung dar. Änderungen, welche vom fehlerhaften Prozess verursacht wurden, können durch diesen Prozess rückgängig gemacht werden. XPDL hat kein eigenes Ausnahmekonzept. Deadline Elemente sind die einzige Möglichkeit auf fehlerhaftes Verhalten (im Falle des Überschreitens einer bestimmten Zeitspanne bei der Ausführung einer Aktivität) zu reagieren. Nach Überschreiten einer gewissen Zeitspanne, wird ein Fehler ausgelöst. Dies führt dazu, dass eine Transition verfolgt wird. Seite 12

13 Spracherweiterung Die Möglichkeit einer individuellen Spracherweiterung um beliebige Elemente ist nur unter XPDL gegeben. Anforderungen spezifischer Hersteller können in XPDL zusätzlich zu den bereits vorhandenen Elementen über Extended Attributes Elemente definiert werden. Die Sprache ist somit individuell erweiterbar und im Gegensatz zu BPML an nahezu sämtliche Anforderungen anpassbar. Seite 13

14 4 Transformationsregeln und Algorithmen In diesem Kapitel werden zwei Algorithmen dargestellt, welche eine Umwandlung der beiden Prozessgrammatiken ermöglichen. Zuerst wird die Umwandlungsrichtung XPDL zu BPML behandelt, anschließend wird die Umwandlung in entgegengesetzter Richtung dargestellt. Ausgangsbasis für die Erstellung der Algorithmen bilden die jeweiligen XSD Elemente der Prozessmodellierungsgrammatiken. 4.1 Umwandlung von XPDL zu BPML Der folgende Algorithmus beschreibt, wie ein XPDL Dokument in ein BPML Dokument umgewandelt werden kann. Die Elemente des XPDL Dokumentes werden hierarchisch abgearbeitet und in entsprechende BPML Elemente umgewandelt. Es ist folgende Reihenfolge einzuhalten. 1. Es ist das XPDL Package Element zu ermitteln. 2. Es ist ein BPML package Element zu erzeugen. Das Attribut namespace ist gleich zu setzen. 3. Es sind alle XPDL WorkflowProcess Elemente, welche sich im Inhalt des XPDL Package Elementes befinden, zu ermitteln, und für jedes gefundene Element sind die nachfolgenden, untergeordneten Punkte auszuführen. a. Das Attribut AccessLevel, welches dem XPDL WorkflowProcess Element zugeordnet ist, muss je nach Wert folgendermaßen umgesetzt werden. i. Wenn es den Wert PRIVATE besitzt, ist keine Umwandlung notwendig. ii. Wenn es den Wert PUBLIC besitzt, ist ein process Element zu erzeugen, wobei das Attribut name gleich dem Attribut Id des XPDL WorkflowProcess Elementes zu setzen ist. Dem Wert des Attributes name ist der Text I anzufügen. 1. Im Inhalt des BPML process Elementes ist ein BPML event Element zu erzeugen, wobei das Attribut activity gleich dem Attribut Id des XPDL WorkflowProcess Elementes zu setzen ist. Dem Wert des Attributes activity ist der Text invoke voranzustellen. 2. Im Inhalt des BPML process Elementes ist ein BPML action Element zu erzeugen, wobei das Attribut name gleich dem Attribut activity des BPML event Elementes gesetzt wird. Das Attribut porttype ist gleich dem Text xpdlservicetype zu setzen. Das Attribut operation ist gleich dem Attribut name des BPML action Elementes zu setzen. a. Im Inhalt des BPML action Elementes ist ein BPML call Element zu erzeugen. Das Attribut name ist gleich dem Attribut Id des WorkflowProcess Elementes zu setzen. Dem Wert des Attributes name ist der Text call voranzustellen. Das Attribut process ist gleich dem Attribut Id des XPDL WorkflowProcess Elementes zu setzen. Seite 14

15 b. Es ist ein BPML process Element zu erzeugen. Das Attribut name ist gleich dem Attribut Id des XPDL WorkflowProcess Elementes zu setzen. Es ist ein BPML context Element im Inhalt des BPML process Elementes zu erzeugen, welches alle, im Inhalt des XPDL WorkflowProcess Elementes befindlichen, Elemente abbildet. Es ist ein BPML call Element im Inhalt des BPML process Elementes zu erzeugen. Das Attribut process ist gleich dem Attribut name jenes BPML process Elementes zu setzen, welches dem öffnenden Tag des BPML context Elementes am nächsten ist und sich in dessen Inhalt befindet. Das Attribut name ist gleich dem Attribut process zu setzen, wobei der Text call voranzustellen ist. i. Für jedes Activity Element, welches sich im Inhalt des XPDL WorkflowProcess Elementes befindet, ist Algorithmuspunkt 4 (Aktivitäten), welcher weiter unten beschrieben ist, anzuwenden. ii. Für jedes XPDL ActivitySet Element, welches sich im Inhalt des XPDL WorkflowProcess Elementes befindet, sind die nachfolgenden, untergeordneten Punkte auszuführen. Es ist ein BPML call Element im Inhalt des BPML process Elementes zu erzeugen. Das Attribut process ist gleich dem Attribut name jenes BPML process Elementes zu setzen, welches dem öffnenden Tag des BPML context Elementes am nächsten ist und sich in dessen Inhalt befindet. Das Attribut name ist gleich dem Attribut process zu setzen, wobei der Text call voranzustellen ist. 1. Es ist ein BPML process Element zu erzeugen, wobei das Attribut name gleich dem Attribut Id des XPDL ActivitySet Elementes gesetzt wird. 2. Es ist ein BPML context Element zu erzeugen, welches dem Inhalt des BPML process Elementes hinzuzufügen ist. 3. Für jedes XPDL Activity Element, welches sich im Inhalt des XPDL ActivitySet Elementes befindet, ist ein BPML process Element zu erzeugen, welches dem Inhalt des BPML context Elementes hinzuzufügen ist. a. Die einzelnen Elemente sind entsprechend Algorithmusschritt 4 (Umwandlung von Activity Elementen) zu modellieren. iii. Für jedes XPDL Element DataField sind die nachfolgenden, untergeordneten Punkte auszuführen. 1. Es ist ein BPML property Element zu erzeugen. Das Attribut name dieses Elementes ist gleich dem Attribut Id des DataField Elementes zu setzen. Das Attribut type ist gleich dem Attribut Type des XPDL Elementes BasicType, welches sich im Inhalt des XPDL Elementes DataType befindet, zu setzen. Das XPDL Element DataType befindet sich im Inhalt des XPDL Elementes DataField. Der Text xsd: ist dem Wert des Attributes type voranzustellen. Es ist darauf zu achten, dass der Wert des type Attributes ausschließlich Kleinbuchstaben enthält. iv. Für jedes XPDL FormalParameter Element sind die nachfolgenden, untergeordneten Punkte auszuführen. 1. Jedes Element ist als BPML property Element im Inhalt des BPML package Elementes zu modellieren. Seite 15

A Comparison of BPML and BPEL4WS

A Comparison of BPML and BPEL4WS A Comparison of BPML and BPEL4WS Wirtschaftsinformatik Universität Trier Seite 1 Ziele des Vortrags 1. Heterogenität der Business Process Modelling Initiativen für Web Services erkennen 2. Beschreibungsmöglichkeit

Mehr

Seminar XML und Datenbanken. Thema: Workflow

Seminar XML und Datenbanken. Thema: Workflow Seminar XML und Datenbanken Thema: Workflow Betreuer: Markus Bon Bearbeiter: Kristof Barklage Gliederung (1) Grundlagen (2) Workflow Management Coalition (3) XML Process Definition Language (XPDL) (4)

Mehr

1 YAWL Yet Another Workflow Language

1 YAWL Yet Another Workflow Language 1 YAWL Yet Another Workflow Language Das YAWL Workflow-Management-System wurde von Wil van der Aalst und seinem Team an der Eindhoven University of Technology entwickelt. Das System ist in seiner jetzigen

Mehr

Business Process Execution Language for Web Services (BPEL4WS)

Business Process Execution Language for Web Services (BPEL4WS) Hauptseminar und Vorlesung Web Services WS 2003/04 Business Process Execution Language for Web Services (BPEL4WS) Patrick Sauter 2/17 Vortrag - Überblick Definition, Zielsetzung und Allgemeines einfacher

Mehr

Business Process Execution Language. Christian Vollmer Oliver Garbe

Business Process Execution Language. Christian Vollmer <christian.vollmer@udo.edu> Oliver Garbe <oliver.garbe@udo.edu> Business Process Execution Language Christian Vollmer Oliver Garbe Aufbau Was ist BPEL? Wofür ist BPEL gut? Wie funktioniert BPEL? Wie sieht BPEL aus?

Mehr

VBA-Programmierung: Zusammenfassung

VBA-Programmierung: Zusammenfassung VBA-Programmierung: Zusammenfassung Programmiersprachen (Definition, Einordnung VBA) Softwareentwicklung-Phasen: 1. Spezifikation 2. Entwurf 3. Implementierung Datentypen (einfach, zusammengesetzt) Programmablaufsteuerung

Mehr

Softwareschnittstellen

Softwareschnittstellen P4.1. Gliederung Rechnerpraktikum zu Kapitel 4 Softwareschnittstellen Einleitung, Component Object Model (COM) Zugriff auf Microsoft Excel Zugriff auf MATLAB Zugriff auf CATIA Folie 1 P4.2. Einleitung

Mehr

BPMN Kategorien und Elementgruppen. Flussobjekte

BPMN Kategorien und Elementgruppen. Flussobjekte BPMN Kategorien und Elementgruppen Flussobjekte Business Process BP... Activity1 Activity Eine Activity ist die generischer Ausdruck für in Unternehmen anfallende Tätigkeiten. Das Element Activity kann

Mehr

Seminar E-Services WS 02/03 WSDL. Web Services Description Language. Moritz Kleine SES 02 - WSDL

Seminar E-Services WS 02/03 WSDL. Web Services Description Language. Moritz Kleine SES 02 - WSDL Seminar E-Services WS 02/03 WSDL Web Services Description Language SES 02 - WSDL Zum Ablauf Einleitung Webservices und WSDL Grundlagen (XML - Schema und Namespaces) WSDL Syntax Beispiel Zusammenfassung

Mehr

Übungsaufgaben zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 8

Übungsaufgaben zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 8 Prof. Dr. Wilhelm Schäfer Paderborn, 8. Dezember 2014 Christian Brenner Tristan Wittgen Besprechung der Aufgaben: 15. - 18. Dezember 2014 Übungsaufgaben zur Vorlesung Modellbasierte Softwareentwicklung

Mehr

Präsentation zum Thema XML Datenaustausch und Integration

Präsentation zum Thema XML Datenaustausch und Integration Sebastian Land Präsentation zum Thema XML Datenaustausch und Integration oder Warum eigentlich XML? Gliederung der Präsentation 1. Erläuterung des Themas 2. Anwendungsbeispiel 3. Situation 1: Homogene

Mehr

BPMN. Suzana Milovanovic

BPMN. Suzana Milovanovic BPMN Suzana Milovanovic 2 Übersicht Klärung von Begriffen, Abkürzungen Was ist BPMN? Business Process Diagram (BPD) Beispielprozess Entwicklung von BPMN BPMN in der Literatur 3 Grundlegende Begriffe Business

Mehr

Geschäftsprozessmodellierung essmodellierung mit BPEL

Geschäftsprozessmodellierung essmodellierung mit BPEL Geschäftsprozessmodellierung essmodellierung mit BPEL Autor: Stefan Berntheisel Datum: 8. Januar 2010 Stefan Berntheisel Hochschule RheinMain Fachseminar WS 09/10 Agenda Grundlagen Business Process Execution

Mehr

Microsoft Office SharePoint Services Workflow Limitierungen

Microsoft Office SharePoint Services Workflow Limitierungen Microsoft Office SharePoint Services Workflow Limitierungen Dorner Stefan, namics AG April 2007 Inhaltsverzeichnis Allgemeines... 3 Workflow Foundation Thread Pool-Modelle... 5 DefaultWorkflowSchedulerService...

Mehr

Business Process Model and Notation

Business Process Model and Notation BPMN 2.0 Crashkurs Business Process Model and Notation entwickelt von der Object Management Group, einem Konsortium von vielen Firmen (u.a. HP, IBM, Microsoft, Oracle, SAP) >60 verschiedene Produkte implementieren

Mehr

Zustandsgebundene Webservices

Zustandsgebundene Webservices Zustandsgebundene Webservices Präsentation ausgewählter Problemstellungen der Informatik Markus Oertel oer@uni-paderborn.de Universität Paderborn 25. September 2005 Zustandsgebundene Webservices Seite

Mehr

Web Services Composition (BPWS4J )

Web Services Composition (BPWS4J ) Web Services Composition (BPWS4J ) Hager Markus, Kober Christoph, Linde Kai, Ott Florian, Erdmann Dennis Programmierung verteilter Systeme Lab Institut für Informatik Universität Augsburg Universitätsstraße

Mehr

Vgl. Oestereich Kap 2.7 Seiten 134-147

Vgl. Oestereich Kap 2.7 Seiten 134-147 Vgl. Oestereich Kap 2.7 Seiten 134-147 1 Sequenzdiagramme beschreiben die Kommunikation/Interaktion zwischen den Objekten (bzw. verschiedenen Rollen) eines Szenarios. Es wird beschrieben, welche Objekte

Mehr

Universität Trier. FB IV Wirtschafts- und Sozialwissenschaften. SS 2008 Veranstalterin: Dipl.-Wirt.-Inf. Ariane Gramm

Universität Trier. FB IV Wirtschafts- und Sozialwissenschaften. SS 2008 Veranstalterin: Dipl.-Wirt.-Inf. Ariane Gramm Universität Trier FB IV Wirtschafts- und Sozialwissenschaften SS 2008 Veranstalterin: Dipl.-Wirt.-Inf. Ariane Gramm Übung Wirtschaftsinformatik I Teil 2 Thema: Erläuterung der eepk Eingereicht am 12.06.2008

Mehr

Process Engineering VU 1 Workflow Management Beate List

Process Engineering VU 1 Workflow Management Beate List Process Engineering VU 1 Workflow Management Beate List Institut für Softwaretechnik und Interaktive Systeme Technische Universität Wien Favoritenstr. 9-11 / 188, A-1040 Wien email: list@wit.tuwien.ac.at

Mehr

Geschäftsprozessanalyse

Geschäftsprozessanalyse Geschäftsprozessanalyse Prozessmodellierung weitere Begriffe: workflow business process modelling business process (re-)engineering 2 Was ist ein Prozess? Prozesse bestehen aus Aktionen / Ereignissen /

Mehr

Best Practice. Prozessmodellierung für behördenübergreifende. pm-bpmn 1.0.0. Bundesverwaltung: Ergebnis der AG BEST PRACTICE BPMN.

Best Practice. Prozessmodellierung für behördenübergreifende. pm-bpmn 1.0.0. Bundesverwaltung: Ergebnis der AG BEST PRACTICE BPMN. Prozessmodellierung für behördenübergreifende Verfahren der mittelbaren Bundesverwaltung: BEST PRACTICE BPMN Best Practice pm-bpmn 1.0.0 Ergebnis der AG Kurzbeschreibung In diesem Dokument werden die Best-Practice-

Mehr

Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java

Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java von Christian Brand Kennnummer: 09376 November 2005 Abkürzungen Abkürzungen API - Application Programming Interface

Mehr

Business Process Model and Notation BPMN

Business Process Model and Notation BPMN Business Process Model and Notation BPMN BPMN ist ein Standard der Object Management Group OMG zur graphischen Notation von Geschäftsprozessen Aktueller Standard: BPMN 2.0 (http://www.omg.org/spec/bpmn/2.0/)

Mehr

Seminar Business Process Management und Workflow-Technologie: Grundlagen, Produkte, Forschung

Seminar Business Process Management und Workflow-Technologie: Grundlagen, Produkte, Forschung IBM WebSphere Process Server Seminar Business Process Management und Workflow-Technologie: Grundlagen, Produkte, Forschung AGENDA 1. Überblick 2. WebSphere Process Server 3. Komponenten 4. Präsentation

Mehr

Übungen zur Softwaretechnik

Übungen zur Softwaretechnik Technische Universität München Fakultät für Informatik Lehrstuhl IV: Software & Systems Engineering Markus Pister, Dr. Bernhard Rumpe WS 2002/2003 Lösungsblatt 9 17. Dezember 2002 www4.in.tum.de/~rumpe/se

Mehr

Software Engineering Klassendiagramme Einführung

Software Engineering Klassendiagramme Einführung Software Engineering Klassendiagramme Einführung Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Aufgabe Erstellen Sie eine Klasse Person in Java. Jede Person verfügt

Mehr

Modellierung von Arbeitsprozessen

Modellierung von Arbeitsprozessen Informatik II: Modellierung Prof. Dr. Martin Glinz Kapitel 9 Modellierung von Arbeitsprozessen Universität Zürich Institut für Informatik Inhalt 9.1 Grundlagen 9.2 Ereignisgesteuerte Prozessketten (EPK)

Mehr

Vertiefte Grundlagen. Übung 2.7. TU Dresden - Institut für Bauinformatik

Vertiefte Grundlagen. Übung 2.7. TU Dresden - Institut für Bauinformatik Bauinformatik Vertiefte Grundlagen Geschäftsprozessmodellierung Übung 2.7 Begriffe Ein Geschäftsprozess beschreibt wiederkehrenden Ablauf. Dieser Ablauf beschreibt, welche Aktivitäten in welcher Folge

Mehr

Error-Hospital für Oracle SOA Suite

Error-Hospital für Oracle SOA Suite Error-Hospital für Oracle SOA Suite Markus Lohn esentri AG Ettlingen Schlüsselworte Fusion Middleware, SOA, SOA Suite Einleitung Die Entwicklung von Services mit der SOA Suite erfolgt überwiegend deklarativ

Mehr

Exercise (Part XI) Anastasia Mochalova, Lehrstuhl für ABWL und Wirtschaftsinformatik, Kath. Universität Eichstätt-Ingolstadt 1

Exercise (Part XI) Anastasia Mochalova, Lehrstuhl für ABWL und Wirtschaftsinformatik, Kath. Universität Eichstätt-Ingolstadt 1 Exercise (Part XI) Notes: The exercise is based on Microsoft Dynamics CRM Online. For all screenshots: Copyright Microsoft Corporation. The sign ## is you personal number to be used in all exercises. All

Mehr

SQL: statische Integrität

SQL: statische Integrität SQL: statische Integrität.1 SQL: statische Integrität Im allgemeinen sind nur solche Instanzen einer Datenbank erlaubt, deren Relationen die der Datenbank bekannten Integritätsbedingungen erfüllen. Integritätsbedingungen

Mehr

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel.

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel. EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel.de/~mtr ABLAUF Besprechung der Abgaben Petri-Netze BPMN Neue Übungsaufgaben

Mehr

Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9

Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9 Prof. Dr. Wilhelm Schäfer Paderborn, 15. Dezember 2014 Christian Brenner Tristan Wittgen Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9 Aufgabe 1 Codegenerierung

Mehr

Möglichkeiten der Orchestrierung von Grid Web Services mit BPEL. Uschi Beck Marko Brosowski

Möglichkeiten der Orchestrierung von Grid Web Services mit BPEL. Uschi Beck Marko Brosowski Möglichkeiten der Orchestrierung von Grid Web Services mit BPEL Uschi Beck Marko Brosowski Gliederung Motivation BPEL Entstehung/Ziele ein kurzes Beispiel Basiskonzepte Probleme BPEL Engines BPEL im Grid

Mehr

Security Patterns. Benny Clauss. Sicherheit in der Softwareentwicklung WS 07/08

Security Patterns. Benny Clauss. Sicherheit in der Softwareentwicklung WS 07/08 Security Patterns Benny Clauss Sicherheit in der Softwareentwicklung WS 07/08 Gliederung Pattern Was ist das? Warum Security Pattern? Security Pattern Aufbau Security Pattern Alternative Beispiel Patternsysteme

Mehr

Use Cases. Use Cases

Use Cases. Use Cases Use Cases Eigenschaften: Ein Use Case beschreibt einen Teil des Verhaltens eines Systems aus externer Sicht (Formuliert in der der Fachsprache der Anwendung) Dies geschieht, indem ein Systemdialog beschrieben

Mehr

Geschäftsprozessmanagement: Einführung in»business Process Modelling Notation«(BPMN)

Geschäftsprozessmanagement: Einführung in»business Process Modelling Notation«(BPMN) Geschäftsprozessmanagement: in»business Process Modelling Notation«(BPMN) Eugen Labun Fachhochschule Gießen-Friedberg Fachbereich MNI Institut für Softwarearchitektur Serviceorientierte Architekturen bei

Mehr

Source Code Konverter... 2. Online: (VB.net <-> C#)... 3. Kommerzielle Produkte (VB, C#, C++, Java)... 3. Code Nachbearbeitung in der Praxis...

Source Code Konverter... 2. Online: (VB.net <-> C#)... 3. Kommerzielle Produkte (VB, C#, C++, Java)... 3. Code Nachbearbeitung in der Praxis... Autor: Thomas Reinwart 2008-05-05 office@reinwart.com Inhalt Source Code Konverter... 2 Online: (VB.net C#)... 3 Kommerzielle Produkte (VB, C#, C++, Java)... 3 Code Nachbearbeitung in der Praxis...

Mehr

Ausarbeitung des Interpreter Referats

Ausarbeitung des Interpreter Referats Ausarbeitung des Interpreter Referats Gliederung 1. Programmiersprache 1.2. Syntax 1.2.1. Konkrete Syntax 1.2.2. Abstrakter Syntax Baum (Abstrakte Syntax) 2. Parser 2.1. Syntaktische Struktur einer Sprache

Mehr

Wiederholung: Beginn

Wiederholung: Beginn B) Webserivces W3C Web Services Architecture Group: "Ein Web Service ist eine durch einen URI eindeutige identifizierte Softwareanwendung, deren Schnittstellen als XML Artefakte definiert, beschrieben

Mehr

Unterabfragen (Subqueries)

Unterabfragen (Subqueries) Unterabfragen (Subqueries) Die kürzeste Formulierung ist folgende: SELECT Felderliste FROM Tabelle1 WHERE Tabelle1.Feldname Operator (SELECT Feldname FROM Tabelle2 WHERE Bedingung); wobei Tabelle1 und

Mehr

Using Workflows to Coordinate Web Services in Pervasive Computing Environments

Using Workflows to Coordinate Web Services in Pervasive Computing Environments Using Workflows to Coordinate Web Services in Pervasive Computing Environments Vortrag im Rahmen des Seminars SOA 2005 im Fachbereich Informatik angefertigt von Volker Henke Agenda 1. Ubiquitous Computing

Mehr

Geschäftsprozesse modellieren mit BPMN. Nürnberg, 10.11.2009

Geschäftsprozesse modellieren mit BPMN. Nürnberg, 10.11.2009 Geschäftsprozesse modellieren mit BPMN Nürnberg, 10.11.2009 I N H A L T 1. Warum noch ein Notation? 2. Grundlegende BPMN-Elemente 3. Prozess versus Interaktion 4. Services 5. Fazit Warum noch eine Notation?

Mehr

ecall sms & fax-portal

ecall sms & fax-portal ecall sms & fax-portal Beschreibung des s Dateiname Beschreibung_-_eCall 2015.08.04 Version 1.1 Datum 04.08.2015 Dolphin Systems AG Informieren & Alarmieren Samstagernstrasse 45 CH-8832 Wollerau Tel. +41

Mehr

2. Hintergrundverarbeitung in Android: Services und Notifications

2. Hintergrundverarbeitung in Android: Services und Notifications 2. Hintergrundverarbeitung in Android: Services und Notifications Übersicht 2. Hintergrundverarbeitung in Android: Services und Notifications Übersicht: In Mobis 1: Threads; hier genauerer Blick auf Services

Mehr

Oracle Enterprise Scheduler (ESS) Unleashed Carsten Wiesbaum esentri AG Ettlingen Schlüsselworte Einleitung Oracle Enterprise Scheduler (ESS)

Oracle Enterprise Scheduler (ESS) Unleashed Carsten Wiesbaum esentri AG Ettlingen Schlüsselworte Einleitung Oracle Enterprise Scheduler (ESS) Oracle Enterprise Scheduler (ESS) Unleashed Carsten Wiesbaum esentri AG Ettlingen Schlüsselworte Automatisierung, Betrieb, Middleware Einleitung Der Oracle Fusion Middleware Stack beinhaltet eine leistungsstarke

Mehr

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH Java Einleitung - Handout Kurzbeschreibung: Eine kleine Einführung in die Programmierung mit Java. Dokument: Autor: Michael Spahn Version 1.0 Status: Final Datum: 23.10.2012 Vertraulichkeit: öffentlich

Mehr

Enterprise Applikation Integration und Service-orientierte Architekturen 11 BPEL

Enterprise Applikation Integration und Service-orientierte Architekturen 11 BPEL Enterprise Applikation Integration und Service-orientierte Architekturen 11 BPEL Prozesse und Services Prof. Dr. Holger Wache 2 Problem: Prozesssteuerung mit WSDL Jeder Prozess ist zustandsbehaftet. Dieser

Mehr

Kontextdiagramm Erstellen von Kontextdiagrammen mit TopEase

Kontextdiagramm Erstellen von Kontextdiagrammen mit TopEase Kontextdiagramm Erstellen von Kontextdiagrammen mit TopEase Version Control: Version Status Datum / Kurzzeichen 1.0 Begründung Copyright: This document is the property of Business-DNA Solutions GmbH, Switzerland.

Mehr

Kurzanleitung zu XML2DB

Kurzanleitung zu XML2DB Kurzanleitung zu XML2DB Inhaltsverzeichnis 1. Einleitung...3 2. Entwicklungsumgebung...3 3. Betriebsanleitung...3 3.1 Einrichten der Java Umgebung...3 3.2 Allgemeines zu java und javac...4 3.2.1 Allgemeines

Mehr

SOA goes real Service-orientierte Architekturen erfolgreich planen und einführen

SOA goes real Service-orientierte Architekturen erfolgreich planen und einführen Daniel Liebhart SOA goes real Service-orientierte Architekturen erfolgreich planen und einführen ISBN-10: 3-446-41088-0 ISBN-13: 978-3-446-41088-6 Inhaltsverzeichnis Weitere Informationen oder Bestellungen

Mehr

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel.

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel. EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel.de/~mtr FRAGEN / ANMERKUNGEN Vorlesung Neue Übungsaufgaben MODELLIERUNG

Mehr

Tutorial zu WS-BPEL. Veranstaltung: Entwicklung verteilter Softwaresysteme mit Webservices im Sommersemester 2008

Tutorial zu WS-BPEL. Veranstaltung: Entwicklung verteilter Softwaresysteme mit Webservices im Sommersemester 2008 Tutorial zu WS-BPEL Veranstaltung: Entwicklung verteilter Softwaresysteme mit Webservices im Sommersemester 2008 Universität Hamburg Department Informatik Arbeitsbereich VSIS Gruppe 01: Johannes Kuhlmann,

Mehr

Markus BöhmB Account Technology Architect Microsoft Schweiz GmbH

Markus BöhmB Account Technology Architect Microsoft Schweiz GmbH Markus BöhmB Account Technology Architect Microsoft Schweiz GmbH What is a GEVER??? Office Strategy OXBA How we used SharePoint Geschäft Verwaltung Case Management Manage Dossiers Create and Manage Activities

Mehr

Transaktionen in der Praxis. Dr. Karsten Tolle

Transaktionen in der Praxis. Dr. Karsten Tolle Transaktionen in der Praxis Dr. Karsten Tolle Praxisbeispiel in Java Connection con = null; try { con = DriverManager.getConnection("jdbc:db2:sample"); } catch (Exception e) { e.printstacktrace(); } con.setautocommit(false);

Mehr

Verteilte Systeme: Übung 4

Verteilte Systeme: Übung 4 Verteilte Systeme: Übung 4 WSDL und SOAP Oliver Kleine Institut für Telematik https://www.itm.uni-luebeck.de/people/kleine SOAP Nachrichten Serialisierung in XML Root-Element einer SOAP Nachricht ist

Mehr

Pass by Value Pass by Reference Defaults, Overloading, variable Parameteranzahl

Pass by Value Pass by Reference Defaults, Overloading, variable Parameteranzahl Funktionen Zusammenfassung von Befehlssequenzen als aufrufbare/wiederverwendbare Funktionen in einem Programmblock mit festgelegter Schnittstelle (Signatur) Derartige prozedurale Programmierung erlaubt

Mehr

Kapitel 33. Der xml-datentyp. In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023

Kapitel 33. Der xml-datentyp. In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023 Kapitel 33 Der xml-datentyp In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023 995 996 Kapitel 33: Der xml-datentyp Eine der wichtigsten

Mehr

End-to-End Automatisierung Mehr als Continuous Integration & Continuous Delivery

End-to-End Automatisierung Mehr als Continuous Integration & Continuous Delivery 29. Juni 2015 End-to-End Automatisierung Mehr als Continuous Integration & Continuous Delivery Jürgen Güntner Typen von Unternehmen 3 Property of Automic Software. All rights reserved Jene, die Apps als

Mehr

Betragsgleichungen und die Methode der Fallunterscheidungen

Betragsgleichungen und die Methode der Fallunterscheidungen mathe online Skripten http://www.mathe-online.at/skripten/ Betragsgleichungen und die Methode der Fallunterscheidungen Franz Embacher Fakultät für Mathematik der Universität Wien E-mail: franz.embacher@univie.ac.at

Mehr

Monitore. Klicken bearbeiten

Monitore. Klicken bearbeiten Sascha Kretzschmann Institut für Informatik Monitore Formatvorlage und deren Umsetzung des Untertitelmasters durch Klicken bearbeiten Inhalt 1. Monitore und Concurrent Pascal 1.1 Warum Monitore? 1.2 Monitordefinition

Mehr

Objektrelationale und erweiterbare Datenbanksysteme

Objektrelationale und erweiterbare Datenbanksysteme Objektrelationale und erweiterbare Datenbanksysteme Erweiterbarkeit SQL:1999 (Objekt-relationale Modellierung) In der Vorlesung werden nur die Folien 1-12 behandelt. Kapitel 14 1 Konzepte objekt-relationaler

Mehr

Model-Driven Software Development

Model-Driven Software Development Model-Driven Software Development BPEL 2.0 Robert Siebert Das Forschungs- und Entwicklungsprojekt OrViA wird mit Mitteln des Bundesministeriums für Bildung und Forschung (BMBF) gefördert, die innerhalb

Mehr

Technische Beschreibung: EPOD Server

Technische Beschreibung: EPOD Server EPOD Encrypted Private Online Disc Technische Beschreibung: EPOD Server Fördergeber Förderprogramm Fördernehmer Projektleitung Projekt Metadaten Internet Foundation Austria netidee JKU Linz Institut für

Mehr

Softwareanforderungen für Microsoft Dynamics CRM Server 2015

Softwareanforderungen für Microsoft Dynamics CRM Server 2015 Softwareanforderungen für Microsoft Dynamics CRM Server 2015 https://technet.microsoft.com/de-de/library/hh699671.aspx Windows Server-Betriebssystem Microsoft Dynamics CRM Server 2015 kann nur auf Computern

Mehr

Automatisierte Durchführung von Transporten in der Automic (UC4) Automation Engine - ONE Automation

Automatisierte Durchführung von Transporten in der Automic (UC4) Automation Engine - ONE Automation WF2Trans Automatisierte Durchführung von Transporten in der Automic (UC4) Automation Engine - ONE Automation Aus unserer langjährigen Erfahrung in Kundenprojekten wissen wir, dass ein klares und eindeutiges

Mehr

Informationsextraktion

Informationsextraktion Informationsextraktion Bestimmte Anwendungen bei der semantischen Verarbeitung erfordern keine tiefe linguistische Analyse mit exakter Disambiguierung (= eine einzige und korrekte Lesart). Hierzu gehört

Mehr

WF4 Windows Workflow Foundation. Titelmasterformat

WF4 Windows Workflow Foundation. Titelmasterformat WF4 Windows Workflow Foundation Titelmasterformat WF4 Über mich Name: Titelmasterformat E-Mail: Homepage: Roland König roland.koenig@rkoenig.eu www.rkoenig.eu Schwerpunkte:.Net- und SAP-Entwicklung Arbeitgeber:

Mehr

Metadata Service Respository (MDS) - Sehen, lernen, verstehen!

Metadata Service Respository (MDS) - Sehen, lernen, verstehen! Metadata Service Respository (MDS) - Sehen, lernen, verstehen! Carsten Wiesbaum esentri AG Schlüsselworte Metadata Service Repository, MDS, Oracle Fusion Middleware Einleitung Früher oder später wird jeder

Mehr

Funktionen in PHP 1/7

Funktionen in PHP 1/7 Funktionen in PHP 1/7 Vordefinierte Funktionen in PHP oder vom Entwickler geschriebene Funktionen bringen folgende Vorteile: gleiche Vorgänge müssen nur einmal beschrieben und können beliebig oft ausgeführt

Mehr

Connecting Content. User Manual. Version: 1.2

Connecting Content. User Manual. Version: 1.2 Connecting Content User Manual Version: 1.2 09.09.2015 Inhaltsverzeichnis Inhaltsverzeichnis 1 Einleitung 3 2 Installation 4 3 Konfiguration 5 3.1 Allgemeine Einstellungen 6 3.2 Jobs anlegen 6 3.3 Tasks

Mehr

Integrationsprozesse. cross component BPM - Steuerung systemübergreifender Szenarien. Konrad Lubenow, FHTW Berlin, Juli 2007

Integrationsprozesse. cross component BPM - Steuerung systemübergreifender Szenarien. Konrad Lubenow, FHTW Berlin, Juli 2007 Integrationsprozesse cross component BPM - Steuerung systemübergreifender Szenarien Konrad Lubenow, FHTW Berlin, Juli 2007 Integrationsprozesse XI(ccBPM) normaler Messageaustausch über den Integrationsserver

Mehr

Eine völlig andere Form Abfragen zu erstellen ist, sie mit Hilfe der Datenbankabfragesprache SQL zu gestalten.

Eine völlig andere Form Abfragen zu erstellen ist, sie mit Hilfe der Datenbankabfragesprache SQL zu gestalten. Einführung SQL 2010 Niko Becker Mit unseren Übungen zu ACCESS können Sie Aufbau und Struktur einer relationalen Datenbank kennenlernen. Wir zeigen Ihnen wie Sie Tabellen, Formulare und Berichte erstellen

Mehr

Konzepte und Anwendung von Workflowsystemen. Kapitel 8: Workflow Ausführungssprache BPEL

Konzepte und Anwendung von Workflowsystemen. Kapitel 8: Workflow Ausführungssprache BPEL Vorlesung Wintersemester 2011/12 Konzepte und Anwendung von Workflowsystemen Kapitel 8: Workflow Ausführungssprache BPEL Lehrstuhl für Systeme der Informationsverwaltung, Prof. Böhm Institut für Programmstrukturen

Mehr

Darstellung und Anwendung der Assessmentergebnisse

Darstellung und Anwendung der Assessmentergebnisse Process flow Remarks Role Documents, data, tool input, output Important: Involve as many PZU as possible PZO Start Use appropriate templates for the process documentation Define purpose and scope Define

Mehr

ReadMe zur Installation der BRICKware for Windows, Version 6.1.2. ReadMe on Installing BRICKware for Windows, Version 6.1.2

ReadMe zur Installation der BRICKware for Windows, Version 6.1.2. ReadMe on Installing BRICKware for Windows, Version 6.1.2 ReadMe zur Installation der BRICKware for Windows, Version 6.1.2 Seiten 2-4 ReadMe on Installing BRICKware for Windows, Version 6.1.2 Pages 5/6 BRICKware for Windows ReadMe 1 1 BRICKware for Windows, Version

Mehr

Transformation von BPEL Prozessmodellen in Grammatikbasierte Prozessmodelle

Transformation von BPEL Prozessmodellen in Grammatikbasierte Prozessmodelle Institut für Architektur von Anwendungssystemen Universität Stuttgart Universitätsstraße 38 D - 70569 Stuttgart Diplomarbeit Nr. 3164 Transformation von BPEL Prozessmodellen in Grammatikbasierte Prozessmodelle

Mehr

Model Driven SOA Modellgetriebene Entwicklung von SOA Anwendungen. OOP München, 26.01.2011

Model Driven SOA Modellgetriebene Entwicklung von SOA Anwendungen. OOP München, 26.01.2011 Model Driven SOA Modellgetriebene Entwicklung von SOA Anwendungen OOP München, 26.01.2011 I N H A L T 1. SOA das erste Projekt 2. Prozesse Ergebnisse aus dem Fachbereich 3. Der Business Analyst und BPMN

Mehr

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo.

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo. Mengenvergleiche: Mehr Möglichkeiten als der in-operator bietet der θany und der θall-operator, also der Vergleich mit irgendeinem oder jedem Tupel der Unteranfrage. Alle Konten außer das, mit dem größten

Mehr

UpToNet Workflow Workflow-Designer und WebClient Anwendung

UpToNet Workflow Workflow-Designer und WebClient Anwendung UpToNet Workflow Workflow-Designer und WebClient Anwendung Grafische Erstellung im Workflow-Designer 1 Grafische Erstellung im Workflow-Designer Bilden Sie Ihre Arbeitsvorgänge im Workflow-Designer von

Mehr

Inhaltsverzeichnis. Jakob Freund, Klaus Götzer. Vom Geschäftsprozess zum Workflow. Ein Leitfaden für die Praxis ISBN: 978-3-446-41482-2

Inhaltsverzeichnis. Jakob Freund, Klaus Götzer. Vom Geschäftsprozess zum Workflow. Ein Leitfaden für die Praxis ISBN: 978-3-446-41482-2 Inhaltsverzeichnis Jakob Freund, Klaus Götzer Vom Geschäftsprozess zum Workflow Ein Leitfaden für die Praxis ISBN: 978-3-446-41482-2 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-41482-2

Mehr

Java und XML 2. Java und XML

Java und XML 2. Java und XML Technische Universität Ilmenau Fakultät für Informatik und Automatisierung Institut für Praktische Informatik und Medieninformatik Fachgebiet Telematik Java und XML Hauptseminar Telematik WS 2002/2003

Mehr

ISO 15504 Reference Model

ISO 15504 Reference Model Process flow Remarks Role Documents, data, tools input, output Start Define purpose and scope Define process overview Define process details Define roles no Define metrics Pre-review Review yes Release

Mehr

Von der UML nach C++

Von der UML nach C++ 22 Von der UML nach C++ Dieses Kapitel behandelt die folgenden Themen: Vererbung Interfaces Assoziationen Multiplizität Aggregation Komposition Die Unified Modeling Language (UML) ist eine weit verbreitete

Mehr

arlanis Software AG SOA Architektonische und technische Grundlagen Andreas Holubek

arlanis Software AG SOA Architektonische und technische Grundlagen Andreas Holubek arlanis Software AG SOA Architektonische und technische Grundlagen Andreas Holubek Speaker Andreas Holubek VP Engineering andreas.holubek@arlanis.com arlanis Software AG, D-14467 Potsdam 2009, arlanis

Mehr

Workflow, Business Process Management, 4.Teil

Workflow, Business Process Management, 4.Teil Workflow, Business Process Management, 4.Teil 24. Januar 2004 Der vorliegende Text darf für Zwecke der Vorlesung Workflow, Business Process Management des Autors vervielfältigt werden. Eine weitere Nutzung

Mehr

Übungsaufgaben zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 6

Übungsaufgaben zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 6 Prof. Dr. Wilhelm Schäfer Paderborn, 24. November 204 Christian Brenner Tristan Wittgen Besprechung der Aufgaben:. - 4. Dezember 204 Übungsaufgaben zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester

Mehr

9. Business Process Execution Language

9. Business Process Execution Language 1 9. Business Process Execution Language Beobachtung: häufige Änderungen der Geschäftsprozesse dies erfordert leichte und schnelle Software-Anpassung Idee: Software in (Web-)Services gliedern ( SOA) diese

Mehr

ASN.1 <-> XML TRANSLATION

ASN.1 <-> XML TRANSLATION ASN.1 XML TRANSLATION Management Verteilter Systeme Patrick Gerdsmeier, Pierre Smits Wintersemester 2003/2004 Lehrstuhl für Systeme Prof. Dr. Kraemer BTU Cottbus ASN.1 XML TRANSLATION Gliederung

Mehr

Inventarisierung von Exchange Alternativen für die Exchange-Inventarisierung

Inventarisierung von Exchange Alternativen für die Exchange-Inventarisierung Inventarisierung von Exchange Alternativen für die Exchange-Inventarisierung www.docusnap.com TITEL Inventarisierung von Exchange AUTOR Mohr Carsten DATUM 28.10.2015 VERSION 1.0 Die Weitergabe, sowie Vervielfältigung

Mehr

Gliederung. 1. Einleitung (1) 1. Einleitung (3) 1. Einleitung (2)

Gliederung. 1. Einleitung (1) 1. Einleitung (3) 1. Einleitung (2) Referat im Rahmen des Proseminars Internettechnologie WS 2007/2008 Thema: Web Services und serviceorientierte Architekturen (SOA) vorgelegt von: Intelligente Web Services sind für das Informationszeitalter,

Mehr

Oracle Warehouse Builder 3i

Oracle Warehouse Builder 3i Betrifft Autoren Art der Info Oracle Warehouse Builder 3i Dani Schnider (daniel.schnider@trivadis.com) Thomas Kriemler (thomas.kriemler@trivadis.com) Technische Info Quelle Aus dem Trivadis Technologie

Mehr

BPMN. Business Process Modeling Notation. Dr. Martin Bartonitz Product Manager SAPERION AG

BPMN. Business Process Modeling Notation. Dr. Martin Bartonitz Product Manager SAPERION AG BPMN Business Process Modeling Notation Dr. Martin Bartonitz Product Manager SAPERION AG Vorsitzender des Aufsichtsrates: Dieter Matheis Vorstand: Rudolf Gessinger (Vorstandsvorsitzender), Andreas Kunze

Mehr

ISO 15504 Reference Model

ISO 15504 Reference Model Prozess Dimension von SPICE/ISO 15504 Process flow Remarks Role Documents, data, tools input, output Start Define purpose and scope Define process overview Define process details Define roles no Define

Mehr

ColdFusion 8 PDF-Integration

ColdFusion 8 PDF-Integration ColdFusion 8 PDF-Integration Sven Ramuschkat SRamuschkat@herrlich-ramuschkat.de München & Zürich, März 2009 PDF Funktionalitäten 1. Auslesen und Befüllen von PDF-Formularen 2. Umwandlung von HTML-Seiten

Mehr

Programmieren. 10. Tutorium 4./ 5. Übungsblatt Referenzen

Programmieren. 10. Tutorium 4./ 5. Übungsblatt Referenzen Programmieren 10. Tutorium 4./ 5. Übungsblatt Inhalt I. Übungsblatt 4 II. III. - Rückgabe und Besprechung - Vorbereitung auf Wiederholung/ Nachtrag - Operatorpräzedenzen IV. Übungsblatt 5 - Vorstellung

Mehr

Data Mining Standards am Beispiel von PMML. Data Mining Standards am Beispiel von PMML

Data Mining Standards am Beispiel von PMML. Data Mining Standards am Beispiel von PMML Data Mining Standards am Beispiel von PMML Allgemeine Definitionen im Data Mining Data Mining (DM) Ein Prozess, um interessante neue Muster, Korrelationen und Trends in großen Datenbeständen zu entdecken,

Mehr

Open Source und Workflow im Unternehmen

Open Source und Workflow im Unternehmen Oliver Königs Open Source und Workflow im Unternehmen Eine Untersuchung von Processmaker, Joget, Bonita Open Solution, uengine und Activiti Diplomica Verlag Oliver Königs Open Source und Workflow im Unternehmen:

Mehr

Produktskizze. 28. November 2005 Projektgruppe Syspect

Produktskizze. 28. November 2005 Projektgruppe Syspect 28. November 2005 Carl von Ossietzky Universität Oldenburg Fakultät II Department für Informatik Abteilung Entwicklung korrekter Systeme Inhaltsverzeichnis 1 Einleitung 3 2 Die graphische Oberfläche der

Mehr