skip to main content
10.1145/3241403.3241425acmotherconferencesArticle/Chapter ViewAbstractPublication PagesecsaConference Proceedingsconference-collections
research-article

On the model-driven synthesis of evolvable service choreographies

Published: 24 September 2018 Publication History

Abstract

Choreographies are a form of decentralized composition that model the external interaction of the participant services by specifying peer-to-peer message exchanges from a global perspective. 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. Nowadays, very few approaches address the problem of actually realizing choreographies in an automatic way. In this paper, we share the experience we had in two EU projects specifically targeted at choreographies, and report on a novel model-driven approach to the automatic synthesis of evolving choreographies we are currently working on. We illustrate our method at work on a use case in the domain of Smart Mobility & Tourism.

References

[1]
Marco Autili, Paola Inverardi, Filippo Mignosi, Romina Spalazzese, and Massimo Tivoli. 2015. Automated Synthesis of Application-Layer Connectors from Automata-Based Specifications. In LATA 2015.
[2]
Marco Autili, Paola Inverardi, and Massimo Tivoli. 2014. CHOREOS: Large scale choreographies for the future internet. In CSMR-WCRE 2014.
[3]
Marco Autili, Paola Inverardi, and Massimo Tivoli. 2015. Automated Synthesis of Service Choreographies. IEEE Software (2015), 50--57.
[4]
Marco Autili, Leonardo Mostarda, Alfredo Navarra, and Massimo Tivoli. 2008. Synthesis of decentralized and concurrent adaptors for correctly assembling distributed component-based systems. Journal of Systems and Software (2008), 2210--2236.
[5]
Marco Autili, Davide Di Ruscio, Amleto Di Salle, Paola Inverardi, and Massimo Tivoli. 2013. A Model-Based Synthesis Process for Choreography Realizability Enforcement. In FASE 2013.
[6]
Marco Autili, Amleto Di Salle, Francesco Gallo, Claudio Pompilio, and Massimo Tivoli. 2018. Model-driven adaptation of service choreographies. In SAC 2018.
[7]
Marco Autili, Amleto Di Salle, Alexander Perucci, and Massimo Tivoli. 2015. On the Automated Synthesis of Enterprise Integration Patterns to Adapt Choreography-based Distributed Systems. In FOCLASA 2015.
[8]
Marco Autili, Amleto Di Salle, and Massimo Tivoli. 2013. Synthesis of Resilient Choreographies. In SERENE 2013.
[9]
Marco Autili and Massimo Tivoli. 2014. Distributed Enforcement of Service Choreographies. In FOCLASA 2014.
[10]
Muhammad Ali Babar, Lianping Chen, and Forrest Shull. 2010. Managing Variability in Software Product Lines. IEEE Software (2010), 89--91.
[11]
Felix Bachmann, Michael Goedicke, Julio Cesar Sampaio do Prado Leite, Robert L. Nord, Klaus Pohl, Balasubramaniam Ramesh, and Alexander Vilbig. 2003. A Meta-model for Representing Variability in Product Family Development. In PFE 2003.
[12]
Samik Basu and Tevfik Bultan. 2011. Choreography conformance via synchronizability. In WWW 2011.
[13]
Nicola Boffoli, Marta Cimitile, Fabrizio Maria Maggi, and Giuseppe Visaggio. 2009. Managing SOA System Variation through Business Process Lines and Process Oriented Development.
[14]
Radu Calinescu, Marco Autili, Javier Cámara, Antinisca Di Marco, Simos Gerasimou, Paola Inverardi, Alexander Perucci, Nils Jansen, Joost-Pieter Katoen, Marta Z. Kwiatkowska, Ole J. Mengshoel, Romina Spalazzese, and Massimo Tivoli. 2017. Synthesis and Verification of Self-aware Computing Systems. In Self-Aware Computing Systems.
[15]
Lianping Chen, Muhammad Ali Babar, and Nour Ali. 2009. Variability management in software product lines: a systematic review. In SPLC 2009.
[16]
Patrick Donohoe. 2012. Introduction to software product lines. In SPLC 2012.
[17]
Kurt Geihs, Roland Reichle, Michael Wagner, and Mohammad Ullah Khan. 2009. Modeling of Context-Aware Self-Adaptive Applications in Ubiquitous and Service-Oriented Environments (LNCS), Vol. 5525. Springer, 146--163.
[18]
Kurt Geihs, Roland Reichle, Michael Wagner, and Mohammad Ullah Khan. 2009. Service-Oriented Adaptation in Ubiquitous Computing Environments. In CSE 2009.
[19]
Matthias Güdemann, Pascal Poizat, Gwen Salaiin, and Lina Ye. 2016. VerChor: A Framework for the Design and Verification of Choreographies. IEEE Trans. Services Computing (2016), 647--660.
[20]
Sylvain Hallé and Tevfik Bultan. 2010. Realizability analysis for message-based interactions using shared-state projections. In ACM SIGSOFT 2010.
[21]
Øystein Haugen, Andrzej Wasowski, and Krzysztof Czarnecki. 2013. CVL: common variability language. In SPLC 2013.
[22]
Gregor Hohpe and Bobby Woolf. 2004. Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions - Fiftheenth printing 2011. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA.
[23]
Paul Istoan, Grégory Nain, Gilles Perrouin, and Jean-Marc Jézéquel. 2009. Dynamic Software Product Lines for Service-Based Systems. In CIT 2009.
[24]
Raman Kazhamiakin and Marco Pistore. 2006. Analysis of Realizability Conditions for Web Service Choreographies. In IFIP WG 2006.
[25]
Michiel Koning, Chang-ai Sun, Marco Sinnema, and Paris Avgeriou. 2009. VxBPEL: Supporting variability for Web services in BPEL. Information & Software Technology (2009), 258--269.
[26]
Ivan Lanese, Antonio Bucchiarone, and Fabrizio Montesi. 2010. A Framework for Rule-Based Dynamic Adaptation. In TGC 2010.
[27]
Bardia Mohabbati, Marek Hatala, Dragan Gasevic, Mohsen Asadi, and Marko Boskovic. 2011. Development and configuration of service-oriented systems families. In (SAC) 2011.
[28]
Tuan Nguyen, Alan W. Colman, Muhammad Adeel Talib, and Jun Han. 2011. Managing service variability: state of the art and open issues. In VAMOS 2011.
[29]
Object Management Group. 2018. Documents Associated With Business Process Model And Notation. http://www.omg.Org/spec/BPMN/2.0.2/PDF.
[30]
Eclipse Project, {n. d.}. BPMN2-Modeler Model Extension. https://wiki.eclipse.org/BPMN2-Modeler/DeveloperTutorials/ModelExtension, year=2018.
[31]
Maryam Razavian and Ramtin Khosravi. 2008. Modeling variability in the component and connector view of architecture using UML. In AICCSA 2008.
[32]
Romain Rouvoy, Paolo Barone, Yun Ding, Frank Eliassen, Svein O. Hallsteinsen, Jorge Lorenzo, Alessandro Mamelli, and Ulrich Scholz. 2009. MUSIC: Middleware Support for Self-Adaptation in Ubiquitous and Service-Oriented Environments (LNCS), Vol. 5525. Springer, 164--182.
[33]
Gwen Salaün, Tevfik Bultan, and Nima Roohi. 2012. Realizability of Choreographies Using Process Algebra Encodings. IEEE Trans. Services Computing (2012), 290--304.
[34]
Marco Sinnema, Sybren Deelstra, Jos Nijhuis, and Jan Bosch. 2004. COVAMOF: A Framework for Modeling Variability in Software Product Families. In SPLC 2004.
[35]
Selma Suloglu, Bedir Tekinerdogan, and Ali Dogru. 2013. XChor Choreography Language for Integration of Variable Orchestration Specifications. In BMSD 2013.
[36]
Hongyu Sun, Robyn R. Lutz, and Samik Basu. 2009. Product-line-based requirements customization for web service compositions. In SPLC 2009.
[37]
N. Yasemin Topaloglu and Rafael Capilla. 2004. Modeling the Variability of Web Services from a Pattern Point of View. In ECOWS 2004.
[38]
Diana L. Webber and Hassan Gomaa. 2004. Modeling variability in software product lines with the variation point model. Sci. Comput. Program. (2004).

Cited By

View all
  • (2021)Cooperative Intelligent Transport Systems: Choreography-Based Urban Traffic CoordinationIEEE Transactions on Intelligent Transportation Systems10.1109/TITS.2021.305939422:4(2088-2099)Online publication date: Apr-2021
  • (2021)The athletic heart syndrome in web service evolutionJournal of Software: Evolution and Process10.1002/smr.241834:10Online publication date: 27-Dec-2021
  • (2020)CHOReVOLUTION: Service choreography in practiceScience of Computer Programming10.1016/j.scico.2020.102498(102498)Online publication date: Jun-2020
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
ECSA '18: Proceedings of the 12th European Conference on Software Architecture: Companion Proceedings
September 2018
325 pages
ISBN:9781450364836
DOI:10.1145/3241403
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 24 September 2018

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. coordination
  2. evolution
  3. service choreographies

Qualifiers

  • Research-article

Conference

ECSA '18

Acceptance Rates

Overall Acceptance Rate 48 of 72 submissions, 67%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)1
Reflects downloads up to 16 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2021)Cooperative Intelligent Transport Systems: Choreography-Based Urban Traffic CoordinationIEEE Transactions on Intelligent Transportation Systems10.1109/TITS.2021.305939422:4(2088-2099)Online publication date: Apr-2021
  • (2021)The athletic heart syndrome in web service evolutionJournal of Software: Evolution and Process10.1002/smr.241834:10Online publication date: 27-Dec-2021
  • (2020)CHOReVOLUTION: Service choreography in practiceScience of Computer Programming10.1016/j.scico.2020.102498(102498)Online publication date: Jun-2020
  • (2020)CHOReVOLUTION: Hands-On In-Service Training for Choreography-Based SystemsCoordination Models and Languages10.1007/978-3-030-50029-0_1(3-19)Online publication date: 10-Jun-2020
  • (2020)Highly collaborative distributed systems: Synthesis and enactment at workConcurrency and Computation: Practice and Experience10.1002/cpe.603933:6Online publication date: 30-Sep-2020
  • (2019)A Choreography-Based and Collaborative Road Mobility System for L’Aquila CityFuture Internet10.3390/fi1106013211:6(132)Online publication date: 14-Jun-2019
  • (2019)CHOReVOLUTION: Automating the Realization of Highly–Collaborative Distributed ApplicationsCoordination Models and Languages10.1007/978-3-030-22397-7_6(92-108)Online publication date: 5-Jun-2019
  • (2019)Different Glasses to Look into the Three Cs: Component, Connector, CoordinationModels, Languages, and Tools for Concurrent and Distributed Programming10.1007/978-3-030-21485-2_12(191-216)Online publication date: 3-Jul-2019

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media