230 research outputs found

    Formal certification and compliance for run-time service environments

    Get PDF
    With the increased awareness of security and safety of services in on-demand distributed service provisioning (such as the recent adoption of Cloud infrastructures), certification and compliance checking of services is becoming a key element for service engineering. Existing certification techniques tend to support mainly design-time checking of service properties and tend not to support the run-time monitoring and progressive certification in the service execution environment. In this paper we discuss an approach which provides both design-time and runtime behavioural compliance checking for a services architecture, through enabling a progressive event-driven model-checking technique. Providing an integrated approach to certification and compliance is a challenge however using analysis and monitoring techniques we present such an approach for on-going compliance checking

    Behavioral types in programming languages

    Get PDF
    A recent trend in programming language research is to use behav- ioral type theory to ensure various correctness properties of large- scale, communication-intensive systems. Behavioral types encompass concepts such as interfaces, communication protocols, contracts, and choreography. The successful application of behavioral types requires a solid understanding of several practical aspects, from their represen- tation in a concrete programming language, to their integration with other programming constructs such as methods and functions, to de- sign and monitoring methodologies that take behaviors into account. This survey provides an overview of the state of the art of these aspects, which we summarize as the pragmatics of behavioral types

    On the Automated Synthesis of Enterprise Integration Patterns to Adapt Choreography-based Distributed Systems

    Full text link
    The Future Internet is becoming a reality, providing a large-scale computing environments where a virtually infinite number of available services can be composed so to fit users' needs. Modern service-oriented applications will be more and more often built by reusing and assembling distributed services. A key enabler for this vision is then the ability to automatically compose and dynamically coordinate software services. Service choreographies are an emergent Service Engineering (SE) approach to compose together and coordinate services in a distributed way. When mismatching third-party services are to be composed, obtaining the distributed coordination and adaptation logic required to suitably realize a choreography is a non-trivial and error prone task. Automatic support is then needed. In this direction, this paper leverages previous work on the automatic synthesis of choreography-based systems, and describes our preliminary steps towards exploiting Enterprise Integration Patterns to deal with a form of choreography adaptation.Comment: In Proceedings FOCLASA 2015, arXiv:1512.0694

    Distributed Enforcement of Service Choreographies

    Full text link
    Modern service-oriented systems are often built by reusing, and composing together, existing services distributed over the Internet. Service choreography is a possible form of service composition whose goal is to specify the interactions among participant services from a global perspective. In this paper, we formalize a method for the distributed and automated enforcement of service choreographies, and prove its correctness with respect to the realization of the specified choreography. The formalized method is implemented as part of a model-based tool chain released to support the development of choreography-based systems within the EU CHOReOS project. We illustrate our method at work on a distributed social proximity network scenario.Comment: In Proceedings FOCLASA 2014, arXiv:1502.0315

    A Calculus for Orchestration of Web Services

    Get PDF
    Service-oriented computing, an emerging paradigm for distributed computing based on the use of services, is calling for the development of tools and techniques to build safe and trustworthy systems, and to analyse their behaviour. Therefore, many researchers have proposed to use process calculi, a cornerstone of current foundational research on specification and analysis of concurrent, reactive, and distributed systems. In this paper, we follow this approach and introduce CWS, a process calculus expressly designed for specifying and combining service-oriented applications, while modelling their dynamic behaviour. We show that CWS can model all the phases of the life cycle of service-oriented applications, such as publication, discovery, negotiation, orchestration, deployment, reconfiguration and execution. We illustrate the specification style that CWS supports by means of a large case study from the automotive domain and a number of more specific examples drawn from it

    The CHORCH Approach: How to Model B2Bi Choreographies for Orchestration Execution

    Get PDF
    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
    corecore