7 research outputs found
Abschlussbericht des Verbundprojekts Tools4BPEL
UnternehmensĂŒbergreifende GeschĂ€ftsprozesse werden zunehmend nach dem Paradigma der Services organisiert. Dabei stellen sich Fragen nach der Komponierbarkeit, Fehlerbehandlung, sowie der RĂŒcksetzbarkeit (Kompensation) im Fehlerfall. In diesem Vorhaben werden Methoden und Werkzeuge zum Umgang mit solchen Fragen entwickelt und am Beispiel der GeschĂ€ftsprozess-Modellierungssprache BPEL und im Modellierungswerkzeug der Firma MEGA international erprobt.
Es wurde zum einen der Ăbersetzer BPEL2oWFN entwickelt, der anhand einer Petrinetzsemantik fĂŒr BPEL einen BPEL-Prozess in ein (offenes) Petrinetz transformiert. Zum anderen wurden Korrektheitskriterien (wie Bedienbarkeit und VerhaltenskompatibilitĂ€t) fĂŒr Services erarbeitet, Algorithmen zu ihrer ĂberprĂŒfung entworfen und in Fiona implementiert. Die Algorithmen sind Petrinetz-basiert. Damit spielen Ăbersetzung und Analyse eng zusammen und ein vorhandener BPEL-Prozess kann auf bspw. Bedienbarkeit hin untersucht werden.
In diesem Vorhaben wurden die Modellierungssprache BPEL4Chor, Choreographie-Erweiterungen fĂŒr BPMN entwickelt, sowie die Transformation von BPMN nach BPEL angepasst, um den Weg von BPMN nach BPEL4Chor zu unterstĂŒtzen. Weiterhin wurden Konzepte entwickelt, wie sich partner-ĂŒbergreifende Fehlerbehandlung, RĂŒcksetzbarkeit, sowie die Autonomie der Partner mittels BPEL4Chor darstellen lassen. BPEL4Chor kann als Standardsprache zur Spezifikation von Protokollen, die zwischen mehreren Partnern ablaufen, verwendet werden. Durch seine enge Verbindung mit BPEL kann BPEL4Chor sehr gut als Startpunkt fĂŒr eine Webservice-Lösung verwendet werden
Recommended from our members
Requirements-Driven Adaptation of Choreographed Interactions
Electronic services are emerging as the de-facto enabler of interaction interoperability across organization boundaries. Cross-organizational interactions are often âchoreographedâ, i.e. specified by a messaging protocol from a global point of view independent of the local view of each interacting organization. Local requirements motivating an interaction as well as the global contextual requirements governing the interaction inevitably evolve over time, requiring adaptation of the corresponding interaction protocol. Adaptation of an interaction protocol must ensure the satisfaction of both sets of interaction requirements while maintaining consistency between the global view and the local views of an interaction specification. Such adaptation is not possible with the current state-of-the-art representations of choreographed interactions, as they capture only operational messaging specifications detached from both local organizational requirements as well as global contextual requirements.
This thesis presents three novel contributions that tackle adaptation of choreographed interaction protocols: an automated technique for deriving an interaction protocol from requirements, a formalization of consistency between local and global views, and a framework for guiding the adaptation of a choreographed interaction. A choreographed interaction is specified using models of organizational requirements motivating the interaction. We employ the formal semantics embedded in requirements models to automatically derive an interaction protocol. We propose a framework for relating the global and local views of interaction specification and maintaining consistency between them. We develop a metamodel for interaction specification, from which we enumerate adaptation operations. We build a catalogue that provides guidance on performing each operation and propagating changes between the global and local views. These contributions are evaluated using examples from the literature as well as a real-world case study
Flexible modeling and execution of choreographies
Approaches to address domain specific problems often share overlapping requirements but typically satisfy them in a unique manner for example using service-oriented concepts. The notion of Collaborative, Dynamic & Complex (CDC) systems has been proposed in literature to address the requirements of application domains such as eScience and Collective Adaptive Systems in a unified, generic manner. CDC systems are characterized by dealing with potentially large amounts of data and/or participating applications which engage in complex interactions specified by some collaboration protocol. Furthermore, the need for adaptation mechanisms is a common requirement and users from these application domains are typically no IT experts. The choreography concept originally known from collaborations in the business domain captures the interaction between independent parties from a global perspective. Each party is denoted as a choreography participant, which is implemented by a workflow or a service. This concept provides a way to model and execute for example complex eScience experiments involving multiple scientific fields, scientific methods, and time and/or length scales as a set of coupled workflows.
However, typical choreography concepts as described in literature do not provide the desired level of flexibility and ease of use in both modeling and execution to address the requirements of users in CDC system application domains such as eScience. Thus, existing choreography concepts have to be considerably extended by introducing the Model-as-you-go for Choreographies approach in this thesis as a central notion providing capabilities for the flexible modeling and execution of choreographies. In the context of this approach, we provide a concept for fostering reuse in choreography modeling in the form of so-called choreography fragments. Such fragments can be extracted from existing and inserted into new choreography models in order to save time as well as reuse established and approved logic by inexperienced modelers in a less error-prone manner.
Furthermore, we provide support for the user-driven control of the complete choreography life cycle. This effectively allows users to automatically deploy the workflow models implementing a choreography as well as starting, pausing, resuming, and terminating a choreography instance, which is formed through the collective execution of workflow instances. Most importantly, the underlying complexity of managing a set of coupled workflow instances is completely hidden from the users. Additional flexibility is given by a concept that allows to re-run already executed choreography logic in order to enforce the convergence of a calculation towards a particular result or to react to errors with parameter changes.
The proposed concepts are implemented in a message-based system, the ChorSystem, which is able to handle the challenges of choreography life cycle management from deployment, to run time control and the re-run of logic. Furthermore, the modeling and run time monitoring are integrated into one graphical tool supporting the seamless transition from modeling to execution of choreographies. The concepts, their supporting algorithms, and the prototypical ChorSystem are validated by a set of case studies from different CDC system application domains and evaluated by performance measurements showing the practical applicability
The CHORCH Approach: How to Model B2Bi Choreographies for Orchestration Execution
The establishment and implementation of cross-organizational business processes is an implication of today's market pressure for efficiency gains.
In this context, Business-To-Business integration (B2Bi) focuses on the information integration aspects of business processes.
A core task of B2Bi is providing adequate models that capture the message exchanges between integration partners.
Following the terminology used in the SOA domain, such models will be called choreographies in the context of this work.
Despite the enormous economic importance of B2Bi, existing choreography languages fall short of fulfilling all relevant
requirements of B2Bi scenarios.
Dedicated B2Bi choreography standards allow for inconsistent outcomes of basic interactions and
do not provide unambiguous semantics for advanced interaction models.
In contrast to this, more formal or technical choreography languages may provide unambiguous modeling semantics,
but do not offer B2Bi domain concepts or an adequate level of abstraction.
Defining valid and complete B2Bi choreography models becomes a challenging task in the face of these shortcomings.
At the same time, invalid or underspecified choreography definitions are particularly costly considering the organizational
setting of B2Bi scenarios.
Models are not only needed to bridge the typical gap between business and IT,
but also as negotiation means among the business users of the integration partners on the one hand
and among the IT experts of the integration partners on the other.
Misunderstandings between any two negotiation partners potentially affect the agreements between all other negotiation partners.
The CHORCH approach offers tailored support for B2Bi by combining the strengths of both dedicated B2Bi standards and formal rigor.
As choreography specification format, the ebXML Business Process Specification Schema (ebBP) standard is used.
ebBP provides dedicated B2Bi domain concepts such as so-called BusinessTransactions (BTs) that abstractly specify the exchange of a request business document
and an optional response business document.
In addition, ebBP provides a format for specifying the sequence of BT executions for capturing complex interaction scenarios.
CHORCH improves the offering of ebBP in several ways.
Firstly, the execution model of BTs which allows for inconsistent outcomes among the integration partners
is redefined such that only consistent outcomes are possible.
Secondly, two binary choreography styles are defined as B2Bi implementation contract format in order to streamline implementation projects.
Both choreography styles are formalized and provided with a formal execution semantics for ensuring unambiguity.
In addition, validity criteria are defined that ensure implementability using BPEL-based orchestrations.
Thirdly, the analysis of the synchronization dependencies of complex B2Bi scenarios is supported
by means of a multi-party choreography style combined with an analysis framework.
This choreography style also is formalized and standard state machine semantics are reused in order to ensure unambiguity.
Moreover, validity criteria are defined that allow for analyzing corresponding models for typical multi-party choreography issues.
Altogether, CHORCH provides choreography styles that are B2Bi adequate, simple, unambiguous, and implementable.
The choreography styles are B2Bi adequate in providing B2Bi domain concepts, in abstracting from low-level implementation details
and in covering the majority of real-world B2Bi scenarios.
Simplicity is fostered by using state machines as underlying specification paradigm.
This allows for thinking in the states of a B2Bi scenario and for simple control flow structures.
Unambiguity is provided by formal execution semantics whereas implementability (for the binary choreography styles) is ensured by providing
mapping rules to BPEL-based implementations.
The validation of CHORCH's choreography styles is performed in a twofold way.
Firstly, the implementation of the binary choreography styles based on Web Services and BPEL technology is demonstrated
which proves implementability using relatively low-cost technologies.
Moreover, the analysis algorithms for the multi-party choreography styles are validated using a Java-based prototype.
Secondly, an abstract visualization of the choreography styles based on BPMN is provided that abstracts from
the technicalities of the ebBP standard.
This proves the amenability of CHORCH to development methods that start out with visual models.
CHORCH defines how to use BPMN choreographies for the purpose of B2Bi choreography modeling
and translates the formal rules for choreography validity into simple composition rules that
demonstrate valid ways of connecting the respective modeling constructs.
In summary, CHORCH allows integration partners to start out with a high-level visual model of their interactions in BPMN
that identifies the types and sequences of the BusinessTransactions to be used.
For multi-party choreographies, a framework for analyzing synchronization dependencies then is available.
For binary choreographies, an ebBP refinement can be derived that fills in the technical parameters that are needed for deriving the implementation.
Finally, Web Services and BPEL based implementations can be generated.
Thus, CHORCH allows for stepwise closing the semantic gap between the information perspective of business process models
and the corresponding implementations.
It is noteworthy that CHORCH uses international standards throughout all relevant layers, i.e., BPMN, ebBP, Web Services and BPEL,
which helps in bridging the heterogeneous IT landscapes of B2Bi partners.
In addition, the adoption of core CHORCH deliverables as international standards of the RosettaNet community
give testament to the practical relevance and promise dissemination throughout the B2Bi community.BetriebsĂŒbergreifende GeschĂ€ftsprozessintegration ist eine logische Konsequenz allgegenwĂ€rtigen Wettbewerbsdrucks.
In diesem Kontext fokussiert Business-To-Business integration (B2Bi) auf die
Informationsaustausche zwischen Unternehmen.
Eine B2Bi-Kernanforderung ist die Bereitstellung adÀquater Modelle zur Spezifikation der Nachrichtenaustausche zwischen Integrationspartnern.
Diese werden im Rahmen dieser Arbeit in Anlehnung an Service-orientierte Architekturen (SOA)-Terminologie Choreographien genannt.
Bestehende Choreographiesprachen decken die Anforderungen an B2Bi-Choreographien nicht vollstÀndig ab.
Dedizierte B2Bi-Choreographiestandards definieren inkonsistente Austauschprozeduren fĂŒr grundlegende Interaktionen
und nur unvollstĂ€ndige Semantiken fĂŒr fortgeschrittene Interaktionen.
Formale oder Technik-getriebene Choreographiesprachen bieten die benötigte PrÀzision,
lassen aber DomÀnenkonzepte vermissen oder operieren auf einer niedrigen Abstraktionsebene.
Angesichts solcher MÀngel wird die Spezifikation valider und vollstÀndiger B2Bi-Choreographien zu einer echten Herausforderung.
Gleichzeitig sind mangelhafte Choreographiemodelle gerade im B2Bi-Bereich besonders problematisch,
da diese nicht nur zwischen Fach- und IT-Abteilung, sondern auch ĂŒber Unternehmensgrenzen hinweg eingesetzt werden.
Der CHORCH-Ansatz schafft an dieser Stelle mittels maĂgeschneiderter Choreographien Abhilfe,
welche die Vorteile von B2Bi-Choreographien und von formalen AnsÀtzen kombinieren.
Als Ausgangspunkt wird das ebXML Business Process Specification Schema (ebBP) verwendet,
das als B2Bi-Choreographiestandard DomÀnenkonzepte wie zum Beispiel
sogenannte BusinessTransactions (BTs) bietet.
Eine BT ist der Basisbaustein von B2Bi-Choreographien und spezifiziert
den Austausch eines GeschÀftsdokuments sowie eines optionalen Antwortdokuments.
DarĂŒber hinaus bietet ebBP ein Format zur Spezifikation von BT-Kompositionen zur UnterstĂŒtzung komplexer Interaktionen.
CHORCH erweitert ebBP wie folgt.
Erstens, das AusfĂŒhrungsmodell fĂŒr BTs wird neu definiert, um inkonsistente ErgebniszustĂ€nde zu eliminieren.
Zweitens, fĂŒr Entwicklungsprojekte werden zwei binĂ€re Choreographieklassen definiert, die als B2Bi-Implementierungskontrakt dienen sollen.
Die Formalisierung beider Klassen sowie formale operationale Semantiken gewÀhrleisten Eindeutigkeit,
wĂ€hrend ValiditĂ€tskriterien die AusfĂŒhrbarkeit entsprechender Modelle mittels BPEL-basierter Orchestrationen garantieren.
Drittens, zur Analyse der Synchronisationsbeziehungen komplexer B2Bi-Szenarien wird eine Multi-Party-Choreographieklasse nebst Analyseframework definiert.
Wiederum wird fĂŒr diese Klasse eine Formalisierung definiert, die mittels Standard-Zustandsautomatensemantik Eindeutigkeit gewĂ€hrleistet.
Ferner garantieren ValiditÀtskriterien die Anwendbarkeit der definierten Analysealgorithmen.
Insgesamt bieten die Choreographieklassen des CHORCH-Ansatzes ein B2Bi-adÀquates, einfaches, eindeutiges und implementierbares
Modell der Nachrichtenaustausche zwischen B2Bi-Partnern.
B2Bi-AdÀquatheit wird durch Verwendung von B2Bi-DomÀnenkonzepten, Abstraktion von rein technischen Kommunikationsdetails
und Abdeckung der meisten praktisch relevanten B2Bi-Szenarien gewÀhrleistet.
Einfachheit ist ein Ausfluss der Verwendung eines Zustandsmaschinen-basierten Modellierungsparadigmas,
das die Definition des Interaktionsfortschritts in Form von ZustÀnden sowie einfache Kontrollflussstrukturen ermöglicht.
Eindeutigkeit wird durch die Verwendung formaler Semantiken garantiert, wĂ€hrend Implementierbarkeit (fĂŒr die beiden binĂ€ren Choreographieklassen)
durch Angabe von Mapping-Regeln auf BPEL-Orchestrationen sichergestellt wird.
Die Validierung der CHORCH-Choreographieklassen erfolgt in zweierlei Hinsicht.
Erstens, die Implementierbarkeit der binÀren Choreographieklassen mit Hilfe von Web Services und BPEL wird durch die Definition entsprechender
Mappingregeln belegt. Weiterhin wird das Analyseframework der Multi-Party-Choreographieklasse als Java-Prototyp implementiert.
Zweitens, fĂŒr alle Choreographieklassen wird eine abstrakte Visualisierung auf BPMN-Basis definiert, die von diversen technischen Parametern
des ebBP-Formats abstrahiert.
Damit wird die Integrierbarkeit der CHORCH-Choreographieklassen in EntwicklungsansÀtze,
die ein visuelles Modell als Ausgangspunkt vorsehen, belegt.
CHORCH definiert, wie sogenannte BPMN-Choreographien zum Zweck der B2Bi-Choreographiemodellierung zu verwenden sind
und ĂŒbersetzt die ValiditĂ€tskriterien der CHORCH-Choreographieklassen in einfache Modell-Kompositionsregeln.
In seiner Gesamtheit bietet CHORCH somit einen Ansatz, mit Hilfe dessen B2Bi-Partner zunÀchst
die Typen und zulÀssigen Reihenfolgen ihrer GeschÀftsdokumentaustausche auf Basis eines abstrakten visuellen BPMN-Modells identifizieren können.
Im Fall von Multi-Party-Choreographien steht dann ein Framework zur Analyse der Synchronisationsbeziehungen zwischen den Integrationspartnern zur VerfĂŒgung.
Im Fall von binÀren Choreographien können ebBP-Verfeinerungen abgeleitet werden, welche die Modelle um technische Parameter anreichern, die zur Ableitung
einer Implementierung benötigt werden. Diese ebBP-Modelle sind in Web Services- und BPEL-basierte Implementierungen ĂŒbersetzbar.
Damit erlaubt CHORCH die schrittweise ĂberbrĂŒckung der semantischen LĂŒcke zwischen der Informationsaustauschperspektive von
GeschÀftsprozessmodellen und den zugehörigen Implementierungen.
Ein beachtenswerter Aspekt des CHORCH-Ansatzes ist die Verwendung einschlÀgiger internationaler Standards auf allen Abstraktionsebenen,
im Einzelnen BPMN, ebBP, Web Services und BPEL. Die Verwendung von Standards trÀgt dem heterogenen Umfeld von B2Bi-Szenarien Rechnung.
ZusÀtzlich wurden Kernergebnisse des CHORCH-Ansatzes als internationale Standards der RosettaNet-B2Bi-Community veröffentlicht.
Dies belegt die praktische Relevanz des Ansatzes und fördert die Verbreitung innerhalb der B2Bi-Community
Bridging global and local models of service-oriented systems
Abstract â A service-oriented system is a collection of independent services that interact with one another through message exchanges. Languages such as the Web Services Description Language (WSDL) and the Business Process Execution Language (BPEL) allow developers to capture the interactions in which an individual service can engage, both from a structural and from a behavioral perspective. However, in large service-oriented systems, stakeholders may require a global picture of the way services interact with each other, rather than multiple small pictures focusing on individual services. Such global models are especially useful when a set of services interact in such a way that none of them sees all messages being exchanged, yet interactions between some services may affect the way other services interact. Unfortunately, global models of service interactions may sometimes capture behavioral constraints that can not be enforced locally. In other words, some global models may not be translatable into a set of local models such that the sum of the local models equals the original global model. Starting from a previously proposed language for global modeling of service interactions, this paper defines an algorithm for determining if a global model is locally enforceable and an algorithm for generating local models from global ones. It also shows how local models are mapped into templates of BPEL process definitions. I