Conference Paper

Fragment-Based Service Choreographies

Authors:
To read the full-text of this research, you can request a copy directly from the authors.

Abstract

In a networked economy, business partners provide services to each other in a dynamic way. These services are enacted through business processes and interact without a central entity, i.e., they can be represented by a choreography. It is common that one service can be provided by a set of alternative partners. In this setting, each service provider must adhere to the behavioral constraints imposed by the choreography. To allow for the flexible allocation of service providers, this paper uses a fragment-based approach. The resulting model can be fitted at run-time to individual choreographies. We define formal execution semantics, allowing to verify properties, such as correctness and compatibility.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

... However, processes can be complex, resulting in complicated over-fitting, spaghetti, models or simple, but under-fitting, flower, models. Some approaches, alleviate the complexity by introducing scenarios or fragmenting the process [10,13]. However, these still have the goal of representing the entire process. ...
Preprint
Full-text available
Process mining is a technology that helps understand, analyze, and improve processes. It has been present for around two decades, and although initially tailored for business processes, the spectrum of analyzed processes nowadays is evermore growing. To support more complex and diverse processes, subdisciplines such as object-centric process mining and behavioral pattern mining have emerged. Behavioral patterns allow for analyzing parts of the process in isolation, while object-centric process mining enables combining different perspectives of the process. In this work, we introduce \emph{Object-Centric Local Process Models} (OCLPMs). OCLPMs are behavioral patterns tailored to analyzing complex processes where no single case notion exists and we leverage object-centric Petri nets to model them. Additionally, we present a discovery algorithm that starts from object-centric event logs, and implement the proposed approach in the open-source framework ProM. Finally, we demonstrate the applicability of OCLPMs in two case studies and evaluate the approach on various event logs.
Chapter
Full-text available
Process mining is a technology that helps understand, analyze, and improve processes. It has been present for around two decades, and although initially tailored for business processes, the spectrum of analyzed processes nowadays is evermore growing. To support more complex and diverse processes, subdisciplines such as object-centric process mining and behavioral pattern mining have emerged. Behavioral patterns allow for analyzing parts of the process in isolation, while object-centric process mining enables combining different perspectives of the process. In this work, we introduce Object-Centric Local Process Models (OCLPMs). OCLPMs are behavioral patterns tailored to analyzing complex processes where no single case notion exists and we leverage object-centric Petri nets to model them. Additionally, we present a discovery algorithm that starts from object-centric event logs, and implement the proposed approach in the open-source framework ProM. Finally, we demonstrate the applicability of OCLPMs in two case studies and evaluate the approach on various event logs.
Chapter
This chapter elaborates on the concepts of designing, implementing, and executing process choreographies and follows a model-driven, top-down approach, starting from the conceptual design of process choreography models in BPMN, over their verification using Workflow Nets, to their execution design through correlation mechanisms. This chapter also discusses the bottom-up design of process orchestrations and choreographies using process mining techniques.
Conference Paper
The Semantics of Business Vocabulary and Business Rules (SBVR) model, adopted from the SBVR standard within an Object Management Group (OMG), is a rule-based specification. The SBVR model is proposed for specifying multiple interactions in service choreographies. It includes specifying the ordering constraints of global messages exchanged, alternative and concurrent interactions that occur between multiple participating services. It has been observed that unexpected messages exchanged occur in service choreographies when rule-based choreography specification (the SBVR model) involves the logical operator. This paper concerns about the unexpected circumstances in the service interaction when applying inclusive disjunction, OR in the SBVR rules specifications. The SBVR rules define the choreography specifications through the construction of a logical formulation consisting of atomic formulations, modality, logical operations, and quantification. The role binding of logical formulation and the “Sets” definition according to the OMG standard are applied to the SBVR model for service choreographies. These two elements contribute to the factors in the accuracy of the meaning for specifying the intended interaction.
Conference Paper
Full-text available
While the business process management community has concentrated on modelling and executing business processes with a known structure, support for processes with a high degree of variability performed by knowledge workers is still not satisfactory. A promising approach to overcome this deficiency is case management. Despite of the work done in the area of case management in recent years, there is no accepted case handling formalism that features a well defined semantics. This paper introduces a novel approach to case management, which is based on dynamically combining process fragments as required by knowledge workers. An operational semantics defines the meaning of case models in detail, using states of data objects and enablement conditions of process fragments.
Article
Full-text available
Enabling process changes constitutes a major challenge for any process-aware information system. This not only holds for processes running within a single enterprise, but also for collaborative scenarios involving distributed and autonomous partners. In particular, if one partner adapts its private process, the change might affect the processes of the other partners as well. Accordingly, it might have to be propagated to concerned partners in a transitive way. A fundamental challenge in this context is to find ways of propagating the changes in a decentralized manner. Existing approaches are limited with respect to the change operations considered as well as their dependency on a particular process specification language. This paper presents a generic change propagation approach that is based on the Refined Process Structure Tree, i.e., the approach is independent of a specific process specification language. Further, it considers a comprehensive set of change patterns. For all these change patterns, it is shown that the provided change propagation algorithms preserve consistency and compatibility of the process choreography. Finally, a proof-of-concept prototype of a change propagation framework for process choreographies is presented. Overall, comprehensive change support in process choreographies will foster the implementation and operational support of agile collaborative process scenarios.
Conference Paper
Full-text available
Enacting business processes in process engines requires the coverage of control flow, resource assignments, and process data. While the first two aspects are well supported in current process engines, data dependencies need to be added and maintained manually by a process engineer. Thus, this task is error-prone and time-consuming. In this paper, we address the problem of modeling processes with complex data dependencies, e.g., m:n relationships, and their automatic enactment from process models. First, we extend BPMN data objects with few annotations to allow data dependency handling as well as data instance differentiation. Second, we introduce a pattern-based approach to derive SQL queries from process models utilizing the above mentioned extensions. Therewith, we allow automatic enactment of data-aware BPMN process models. We implemented our approach for the Activiti process engine to show applicability.
Article
Full-text available
Today’s process-aware information systems tend to either support business processes or provide flexibility. Classical workflow management systems offer good process support as long as the processes are structured and do not require much flexibility. Information systems that allow for flexibility have a tendency to lack process-related support. If systems offer guidance, then they are typically also inclined to ‘‘enforce guidelines’’ and are perceived as inflexible. Moreover, implementing flexible systems is far from trivial. This paper will show that using a more declarative approach can assist in a better balance between flexibility and support. This is demonstrated by presenting the Declare framework that aims to take care of the full spectrum of flexibility while at the same time supports the user using recommendations and other process-mining-based diagnostics.
Conference Paper
Full-text available
In a service-oriented architecture (SOA), a system is viewed as a collection of independent units (services) that interact with one another through message exchanges. Established languages such as the Web services description language and the business process execution language 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 taking place between some services affect the way other services interact. An issue that arises when dealing with global models of service interactions is that these models may capture behavioral constraints that can not be enforced locally. In other words, some global models may not be translatable into a collection 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
Conference Paper
Full-text available
Choreography changes performed by one party may af- fect other parties. The changes and the implication for other parties can be determined. However, the required changes on the orchestration are difficult to determine since a chore- ography is an abstraction of the orchestration and thus in- formation is lost. In this paper an approach is proposed to enrich the orchestration with the observed changes using a syntactical representation of the orchestration language and semantic invariants of the orchestration language.
Conference Paper
Full-text available
This paper describes in an informal way the Public-To-Private (P2P) approach to interorganizational workflows, which is based on a notion of inheritance. The approach consists of three steps: (1) create a common understanding of the interorganizational workflow by specifying a shared public workflow, (2) partition the public workflow over the organizations involved, and (3) for each organization, create a private workflow which is a subclass of the respective part of the public workflow. Using an example, we explain that the P2P approach yields an interorganizational workflow which is guaranteed to realize the behavior specified in the public workflow.
Conference Paper
Full-text available
Process-aware information systems have to be frequently adapted due to business process changes. One important challenge not adequately addressed so far concerns the evolution of process choreogra- phies, i.e., the change of interactions between partner processes in a cross-organizational setting. If respective modifications are applied in an uncontrolled manner, inconsistencies or errors might occur in the sequel. In particular, modifications of private processes performed by a single party may affect the implementation of the private processes of partners as well. In this paper we present the DYCHOR (DYnamic CHOReogra- phies) framework which allows process engineers to detect how changes of private processes may affect related public views and - if so - how they can be propagated to the public and private processes of partners. In par- ticular, DYCHOR exploits the semantics of the applied changes in order to automatically determine the adaptations necessary for the partner processes. Altogether our framework provides an important contribution towards the realization of adaptive, cross-organizational processes.
Chapter
Traditionally, business process management focuses on structured, imperative processes. With the increasing importance of knowledge work, semi-structured processes are entering center stage. Existing approaches to modeling knowledge-intensive processes use data objects but fail to sufficiently take into account data object cardinalities. Hence, they cannot guarantee that cardinality constraints are respected, nor use such constraints to handle concurrency and multiple activity instances during execution. This paper extends an existing case management approach with data object associations and cardinality constraints. The results facilitate a refined data access semantics, lower and upper bounds for process activities, and synchronized processing of multiple data objects. The execution semantics is formally specified by colored Petri nets. The effectiveness of the approach is shown by a compiler translating case models to colored Petri nets and by a dedicated process execution engine.
Article
Context Microservices must be composed to provide users with complex and elaborated functionalities. It seems that the decentralized nature of microservices makes a choreography style more appropriate to achieve such cooperation, where lighter solutions based on asynchronous events are generally used. However, a microservice composition based on choreography distributes the flow logic of the composition among microservices making further analysis and updating difficult, i.e. there is not a big picture of the composition that facilitates these tasks. Business Process Model and Notation (BPMN) is the OMG standard developed to represent Business Processes (BPs), being widely used to define the big picture of such compositions. However, BPMN is usually considered in orchestration-based solutions, and orchestration can be a drawback to achieve the decoupling pursued by a microservice architecture. Objective Defining a microservice composition approach that allows us to create a composition in a BPMN model, which facilitates further analysis for taking engineering decisions, and execute them through an event-based choreography to have a high degree of decoupling and independence among microservices. Method We followed a research methodology for information systems that consists of a 5-step process: awareness of the problem, suggestion, development, evaluation, and conclusion. Results We presented a microservice composition approach based on the choreography of BPMN fragments. On the one hand, we propose to describe the big picture of the composition with a BPMN model, providing a valuable mechanism to analyse it when engineering decisions need to be taken. On the other hand, this model is split into fragments in order to be executed through an event-based choreography form, providing the high degree of decoupling among microservices demanded in this type of architecture. This composition approach is supported by a microservice architecture defined to achieve that both descriptions of a composition (big picture and split one) coexist. A realization of this architecture in Java/Spring technology is also presented. Conclusions The evaluation that is done to our work allows us to conclude that the proposed approach for composing microservices is more efficient than solutions based on ad-hoc development.
Book
Business process management is usually treated from two different perspectives: business administration and computer science. While business administration professionals tend to consider information technology as a subordinate aspect in business process management for experts to handle, by contrast computer science professionals often consider business goals and organizational regulations as terms that do not deserve much thought but require the appropriate level of abstraction. Mathias Weske argues that all communities involved need to have a common understanding of the different aspects of business process management. To this end, he details the complete business process lifecycle from the modeling phase to process enactment and improvement, taking into account all different stakeholders involved. After starting with a presentation of general foundations and abstraction models, he explains concepts like process orchestrations and choreographies, as well as process properties and data dependencies. Finally, he presents both traditional and advanced business process management architectures, covering, for example, workflow management systems, service-oriented architectures, and data-driven approaches. In addition, he shows how standards like WfMC, SOAP, WSDL, and BPEL fit into the picture. This textbook is ideally suited for classes on business process management, information systems architecture, and workflow management. This 3rd edition contains a new chapter on business decision modelling, covering the Decision Model and Notation (DMN) standard; the chapter on process choreographies has been streamlined, and numerous clarifications have been fetched throughout the book. The accompanying website www.bpm-book.com contains further information and additional teaching material.
Chapter
Processes are a key application area for formal models of concurrency. The core concepts of Petri nets have been adopted in research and industrial practice to describe and analyze the behavior of processes where each instance is executed in isolation. Unaddressed challenges arise when instances of processes may interact with each other in a one-to-many or many-to-many fashion. So far, behavioral models for describing such behavior either also include an explicit data model of the processes to describe many-to-many interactions, or cannot provide precise operational semantics. In this paper, we study the problem in detail through a fundamental example and evolve a few existing concepts from net theory towards many-to-many interactions. Specifically, we show that three concepts are required to provide an operational, true concurrency semantics to describe the behavior of processes with many-to-many interactions: unbounded dynamic synchronization of transitions, cardinality constraints limiting the size of the synchronization, and history-based correlation of token identities. The resulting formal model is orthogonal to all existing data modeling techniques, and thus allows to study the behavior of such processes in isolation, and to combine the model with existing and future data modeling techniques.
Book
Scientists are increasingly using the workflow technology as a means for modeling and execution of scientific experiments. Despite being a very powerful paradigm workflows still lack support for trial-and-error modeling, as well as flexibility mechanisms that enable the ad hoc repetition of experiment logic to enable, for example, the convergence of results or to handle errors. In this respect, in our work on enabling multi-scale/field (multi-*) experiments using choreographies of scientific workflows, we contribute a method comprising all necessary steps to conduct the repetition of choreography logic across all workflow instances participating in a multi-* experiment. To realize the method, we contribute i) a formal model representing choreography models and instances, including the re-execute and iterate operations for choreographies, and based on it ii) algorithms for determining the rewinding points, i.e. the activity instances where the rewinding has to stop and iii) enable the actual rewinding to a previous execution state and repetition of the choreography. We present the implementation of our approach in a message-based, service-oriented system that allows scientists to model, control, and execute scientific choreographies as well as perform the rewinding and repeating of choreography logic. We also provide an evaluation of the performance of our approach.
Article
Scientists are increasingly using the workflow technology as a means for modeling and execution of scientific experiments. Despite being a very powerful paradigm workflows still lack support for trial-and-error modeling, as well as flexibility mechanisms that enable the ad hoc repetition of experiment logic to enable, for example, the convergence of results or to handle errors. In this respect, in our work on enabling multi-scale/field (multi-*) experiments using choreographies of scientific workflows, we contribute a method comprising all necessary steps to conduct the repetition of choreography logic across all workflow instances participating in a multi-* experiment. To realize the method, we contribute i) a formal model representing choreography models and instances, including the re-execute and iterate operations for choreographies, and based on it ii) algorithms for determining the rewinding points, i.e. the activity instances where the rewinding has to stop and iii) enable the actual rewinding to a previous execution state and repetition of the choreography. We present the implementation of our approach in a message-based, service-oriented system that allows scientists to model, control, and execute scientific choreographies as well as perform the rewinding and repeating of choreography logic. We also provide an evaluation of the performance of our approach.
Conference Paper
Collaborative, Dynamic & Complex (CDC) systems such as adaptive pervasive systems, eScience applications, and complex business systems inherently require modeling and run time exibility. Since domain problems in CDC systems are expressed as service choreographies and enacted by service orchestrations, we propose an approach introducing placeholder modeling constructs usable both on the level of choreographies and orchestrations, and a classi cation of strategies for their re nement to executable work ows. These abstract modeling constructs allow deferring the modeling decisions to later points in the life cycle of choreographies. This supports run time scenarios such as incorporating new participants into a choreography after its enactment has started or enhancing the process logic of some of the participants. We provide a prototypical implementation of the approach and evaluate it by means of a case study.
Article
Communication between organizations is formalized as process choreographies in daily business. While the correct ordering of exchanged messages can be modeled and enacted with current choreography techniques, no approach exists to describe and automate the exchange of data between processes in a choreography using messages. This paper describes an entirely model-driven approach for BPMN introducing a few concepts that suffice to model data retrieval, data transformation, message exchange, and correlation – four aspects of data exchange. For automation, this work utilizes a recent concept to enact data dependencies in internal processes. We present a modeling guideline to derive local process models from a given choreography; their operational semantics allows to correctly enact the entire choreography from the derived models only including the exchange of data. Targeting on successful interactions, we discuss means to ensure correct process choreography modeling. Finally, we implemented our approach by extending the camunda BPM platform with our approach and show its feasibility by realizing all service interaction patterns using only model-based concepts.
Conference Paper
Nowadays, business process modeling and system-supported executions have become a commodity in many companies. Most systems, however, focus on modeling and execution of static, pre-defined processes with standards like the Business Process Model and Notation (BPMN). While these static process executions are applicable to a number of traditional processes like purchase orderings or back orderings, they fail at representing variant-rich, flexible processes. One solution for supporting flexible processes is Adaptive Case Management (ACM), where a case manager is creating an individual execution path for each process instance, such as a doctor defining a clinical pathway for a specific patient. We found out, however, that both approaches are too strict either supporting static process definitions with only a limited set of pre-defined flexibility or allowing maximum flexibility but requiring a highly skilled knowledge worker. To overcome this problem, we propose an implementation framework for Production Case Management (PCM) that combines concepts from traditional process management and adaptive case management. PCM combines the modeling of small, static process fragments with the execution flexibility of ACM.
Conference Paper
More and more application functionality is provided for use over corporate and public networks. Standardized technology stacks, like Web services, provide abstraction from the internal implementation. Coarse-grained units of Web service composition logic can be made reusable by capturing it as ‘process fragment'. Such fragments can be shared over the Web to simplify and accelerate development of process-based service compositions. In this demonstration, we present a framework consisting of an Eclipse-based process design environment that is integrated with a Web-based process fragment library. The framework enables extracting process fragments, publishing and sharing them on the Web, as well as search, retrieval, and their reuse in a given process. Process fragments can be shared with others using a Web frontend or through a plug-in within the process design environment which is building on Web service technology.
Conference Paper
This paper is concerned with the application of Web services to distributed, cross-organizational business processes. In this scenario, it is crucial to answer the following questions: Do two Web services fit together in a way such that the composed system is deadlock-free? – the question of compatibility. Can one Web service be replaced by another while the remaining components stay untouched? – the question of equivalence. Can we reason about the soundness of one given Web service without considering the actual environment it will by used in? This paper defines the notion of usability – an intuitive and locally provable soundness criterion for a given Web services. Based on this notion, this paper demonstrates how the other questions could be answered. The presented method is based on Petri nets, because this formalism is widely used for modeling and analyzing business processes. Due to the existing Petri net semantics for BPEL4WS – a language that is in the very act of becoming the industrial standard for Web service based business processes – the results are directly applicable to real world examples.
Conference Paper
Interacting services are at the center of attention in businessto-business (B2B) process integration scenarios. Global interaction models specify the interaction behavior of each service and serve as contractual basis for the collaboration. Consequently, service implementations have to be consistent with the specifications. Consistency checking ensures that an implemented service is compatible with other services, i.e. that it can interact successfully with them. This is important in order to avoid deadlocks and guarantee proper termination of a collaboration. Different notions of compatibility between interacting services and consistency between specification and implementation are available but they are typically discussed independently from each other. This paper presents a unifying framework for compatibility and consistency and shows how these two notions relate to one another. Criteria for an optimal consistency relation with respect to a given compatibility relation are presented. Based on these criteria weak bi-simulation is evaluated.
Book
Coloured Petri Nets (CPN) is a graphical language for modelling and validating concurrent and distributed systems, and other systems in which concurrency plays a major role. The development of such systems is particularly challenging because of inherent intricacies like possible nondeterminism and the immense number of possible execution sequences. In this textbook Jensen and Kristensen introduce the constructs of the CPN modelling language and present the related analysis methods in detail. They also provide a comprehensive road map for the practical use of CPN by showcasing selected industrial case studies that illustrate the practical use of CPN modelling and validation for design, specification, simulation, verification and implementation in various application domains. Their presentation primarily aims at readers interested in the practical use of CPN. Thus all concepts and constructs are first informally introduced through examples and then followed by formal definitions (which may be skipped). The book is ideally suitable for a one-semester course at an advanced undergraduate or graduate level, and through its strong application examples can also serve for self-study. An accompanying website offers additional material such as slides, exercises and project proposals.
Conference Paper
This paper is concerned with the application of Web services to distributed, cross-organizational business processes. Web services provide a platform independent concept of components and composition. Thus, they seem to be a proper technology to cover the heterogeneous structures within distributed business processes. Although the technological basis is given, there are a lot of open questions, such as whether Web services fit together in such a way that the composition yields a deadlock-free system - the question of compatibility; whether one Web service can be exchanged by another within a composed system without running into problems - the question of equivalence; and whether we can reason about the quality of one given Web service without considering the environment it is used in. In this paper, we present the notion of usability - our quality criterion of a Web service. This criterion is intuitive and can be easily proven locally. Moreover, this notion allows to answer the other questions.
Unicorn meets chimera: Integrating external events into case management
  • J Beyer
  • P Kuhn
  • M Hewelt
  • S Mandal
  • M Weske
J. Beyer, P. Kuhn, M. Hewelt, S. Mandal, and M. Weske, "Unicorn meets chimera: Integrating external events into case management," in Proceedings of the BPM Demo Track 2016 Co-located with the 14th International Conference on Business Process Management (BPM 2016), Rio de Janeiro, Brazil, September 21, 2016, ser. CEUR Workshop Proceedings, L. Azevedo and C. Cabanillas, Eds., vol. 1789. CEUR-WS.org, 2016, pp. 67-72.
Unicorn meets chimera: Integrating external events into case management
  • beyer
  • G Santucci
  • W Klas
  • M Bertolotto
  • C Calero
  • L Baresi
Workshops, Rome, Italy, December 13, 2003, G. Santucci, W. Klas, M. Bertolotto, C. Calero, and L. Baresi, Eds. IEEE Computer Society, 2003, pp. 182-190.