ABSTRACT
Nowadays, we are surrounded by a rapidly increasing number of software applications that provide different services in various domains. To fulfill the needs of this new reality, software systems are often built by reusing and integrating existing services distributed over the Internet, and thus promoting a reuse-based software production. Service Choreography is a decentralized service engineering approach to compose and coordinate existing services from a global perspective, in terms of peer-to-peer message exchanges. The current standard de-facto for modeling such choreographies are the BPMN2 Choreography Diagrams. However, BPMN2 specifications lack formal semantics which cause some misinterpretations by practitioners and researchers. Colored Petri Nets (CPN) have been used to model, analyse and simulate various types of systems, in particular distributed ones. Nonetheless, CPN is a formally proved notation with mathematical semantics and tool support. Following an approach similar to [2], this paper first proposes the definition of a rigorous mapping between BPMN2 Choreography Diagrams and CPN-based models. Then, a component-connector architectural style suitable for automated choreography realizability enforcement is proposed, where the devised CPN-based models are used to express the interaction behavior of the represented components and connectors, hence enabling automated reasoning.
- Marco Autili, Paola Inverardi, and Massimo Tivoli. 2015. Automated Synthesis of Service Choreographies. IEEE Software 32, 1 (2015), 50--57.Google ScholarDigital Library
- Marco Autili, Paola Inverardi, and Massimo Tivoli. 2018. Choreography Realizability Enforcement through the Automatic Synthesis of Distributed Coordination Delegates. Sci. Comput. Program. 160 (2018), 3--29.Google ScholarCross Ref
- Marco Autili, Davide Di Ruscio, Amleto Di Salle, Paola Inverardi, and Massimo Tivoli. 2013. A Model-Based Synthesis Process for Choreography Realizability Enforcement. In Fundamental Approaches to Software Engineering - 16th International Conference, FASE 2013, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2013, Rome, Italy, March 16--24, 2013. Proceedings. 37--52. Google ScholarDigital Library
- Adam Barker, Christopher D. Walton, and David Robertson. 2009. Choreographing Web Services. IEEE Trans. Services Computing 2, 2 (2009), 152--166. Google ScholarDigital Library
- Samik Basu and Tevfik Bultan. 2016. Automated Choreography Repair. In Fundamental Approaches to Software Engineering - 19th International Conference, FASE 2016, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2016, Eindhoven, The Netherlands, April 2--8, 2016, Proceedings. 13--30.Google Scholar
- Samik Basu and Tevfik Bultan. 2016. Automated Choreography Repair. In Proceedings of the 19th International Conference on Fundamental Approaches to Software Engineering. 13--30.Google ScholarCross Ref
- Samik Basu, Tevfik Bultan, and Meriem Ouederni. 2012. Deciding choreography realizability. In Proceedings of the 39th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2012, Philadelphia, Pennsylvania, USA, January 22--28, 2012. 191--202. Google ScholarDigital Library
- Marco Carbone and Fabrizio Montesi. 2013. Deadlock-freedom-by-design: multiparty asynchronous global programming. In The 40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL '13, Rome, Italy - January 23 -- 25, 2013. 263--274. Google ScholarDigital Library
- Lei Chen and Cristofer Englund. 2017. Choreographing Services for Smart Cities: Smart Traffic Demonstration. In 85th IEEE Vehicular Technology Conference, VTC Spring 2017, Sydney, Australia, June 4--7, 2017. 1--5.Google Scholar
- Flavio Corradini, Andrea Morichetta, Andrea Polini, Barbara Re, and Francesco Tiezzi. 2018. Collaboration vs. Choreography Conformance in BPMN 2.0: From Theory to Practice. In 22nd IEEE International Enterprise Distributed Object Computing Conference. 95--104.Google ScholarCross Ref
- C. Dechsupa, Wiwat Vatanawood, and Arthit Thongtak. 2019. Hierarchical Verification for the BPMN Design Model Using State Space Analysis. IEEE Access 7 (2019), 16795--16815.Google ScholarCross Ref
- X. Deng, Z. Lin, W. Cheng, R. Xiao, L. Fang, and L. Li. 2007. Modeling Web Service Choreography and Orchestration with Colored Petri Nets. In Proceedings of the 8th International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing, Vol. 2. 838--843. Google ScholarDigital Library
- European Commission. 2015. Digital Agenda for Europe - Future Internet Research and Experimentation (FIRE) initiative.Google Scholar
- M. Gaur, A. K. Mandal, A. Sarkar, and N. C. Debnath. 2017. Interface driven service composition: A highlevel colored PetriNet based approach. In 2017 International Conference on Recent Advances in Signal Processing, Telecommunications Computing. 59--64.Google Scholar
- Gregor Gößler and Gwen Salaün. 2011. Realizability of Choreographies for Services Interacting Asynchronously. In Formal Aspects of Component Software - 8th International Symposium, FACS 2011, Oslo, Norway, September 14--16, 2011, Revised Selected Papers. 151--167.Google Scholar
- Matthias Güdemann, Pascal Poizat, Gwen Salaün, and Alexandre Dumont. 2013. VerChor: A Framework for Verifying Choreographies.Google Scholar
- Matthias Güdemann, Pascal Poizat, Gwen Salaün, and Lina Ye. 2016. VerChor: A Framework for the Design and Verification of Choreographies. IEEE Trans. Services Computing 9, 4 (2016), 647--660.Google ScholarCross Ref
- Matthias Güdemann, Gwen Salaün, and Meriem Ouederni. 2012. Counterexample Guided Synthesis of Monitors for Realizability Enforcement. In Automated Technology for Verification and Analysis - 10th International Symposium, ATVA 2012, Thiruvananthapuram, India, October 3--6, 2012. Proceedings. 238--253. Google ScholarDigital Library
- Paola Inverardi and Simone Scriboni. 2001. Connectors Synthesis for Deadlock-Free Component-Based Architectures. In 16th IEEE International Conference on Automated Software Engineering (ASE 2001), 26--29 November 2001, Coronado Island, San Diego, CA, USA. 174. Google ScholarDigital Library
- Kurt Jensen. 1993. An Introduction to the Theoretical Aspects of Coloured Petri Nets. In A Decade of Concurrency, Reflections and Perspectives, REX School/Symposium, Noordwijkerhout, The Netherlands, June 1--4, 1993, Proceedings. 230--272. Google ScholarDigital Library
- Kurt Jensen. 1994. An introduction to the theoretical aspects of Coloured Petri Nets. In A Decade of Concurrency Reflections and Perspectives, J. W. de Bakker, W. P. de Roever, and G. Rozenberg (Eds.). Springer Berlin Heidelberg, 230--272. Google ScholarDigital Library
- Kurt Jensen and Lars Michael Kristensen. 2009. Coloured Petri Nets - Modelling and Validation of Concurrent Systems. Springer Berlin Heidelberg. Google ScholarDigital Library
- Ivan Lanese, Fabrizio Montesi, and Gianluigi Zavattaro. 2015. The Evolution of Jolie - From Orchestrations to Adaptable Choreographies. In Software, Services, and Systems - Essays Dedicated to Martin Wirsing on the Occasion of His Retirement from the Chair of Programming and Software Engineering. 506--521.Google Scholar
- Angel Lagares Lemos, Florian Daniel, and Boualem Benatallah. 2016. Web Service Composition: A Survey of Techniques and Tools. ACM Comput. Surv. 48, 3 (2016), 33:1--33:41. Google ScholarDigital Library
- Pascal Poizat and Gwen Salaün. 2012. Checking the realizability of BPMN 2.0 choreographies. In Proceedings of the ACM Symposium on Applied Computing, SAC 2012, Riva, Trento, Italy, March 26--30, 2012. 1927--1934. Google ScholarDigital Library
- Massimo Tivoli and Paola Inverardi. 2008. Failure-free coordinators synthesis for component-based architectures. Sci. Comput. Program. 71, 3 (2008), 181--212. Google ScholarDigital Library
Index Terms
- A formal semantics for supporting the automated synthesis of choreography-based architectures
Recommendations
A model-based synthesis process for choreography realizability enforcement
FASE'13: Proceedings of the 16th international conference on Fundamental Approaches to Software EngineeringThe near future in service-oriented system development envisions a ubiquitous world of available services that collaborate to fit users' needs. Modern service-oriented applications are often built by reusing and assembling distributed services. This can ...
Towards automated choreography of Web services using planning in large scale service repositories
Automated composition of Web services is becoming a prominent paradigm for implementing and delivering distributed applications. A composed service can be described either by orchestration or choreography. Service orchestration has a centralized ...
Analyzing Feasibility of Requirement Driven Service Composition
IWCSE '09: Proceedings of the 2009 Second International Workshop on Computer Science and Engineering - Volume 02In a service-oriented architecture, how to analyze the feasibility of service composition according to the requirements of service consumers has become a problem that must be solved in service composition. A method for analyzing feasibility of ...
Comments