skip to main content
research-article

From Communicating Machines to Graphical Choreographies

Published:14 January 2015Publication History
Skip Abstract Section

Abstract

Graphical choreographies, or global graphs, are general multiparty session specifications featuring expressive constructs such as forking, merging, and joining for representing application-level protocols. Global graphs can be directly translated into modelling notations such as BPMN and UML. This paper presents an algorithm whereby a global graph can be constructed from asynchronous interactions represented by communicating finite-state machines (CFSMs). Our results include: a sound and complete characterisation of a subset of safe CFSMs from which global graphs can be constructed; an algorithm to translate CFSMs to global graphs; a time complexity analysis; and an implementation of our theory, as well as an experimental evaluation.

Skip Supplemental Material Section

Supplemental Material

p221-sidebyside.mpg

References

  1. Business Process Model and Notation. http://www.bpmn.org.Google ScholarGoogle Scholar
  2. Petrify. http://www.lsi.upc.edu/?jordicf/petrify/.Google ScholarGoogle Scholar
  3. SAVARA Testable Architecture. http://www.jboss.org/savara.Google ScholarGoogle Scholar
  4. Zero Deviation Lifecycle. http://www.zdlc.co.Google ScholarGoogle Scholar
  5. Full version of this paper. http://www.doc.ic.ac.uk/~jlange/papers/lty15.pdf, 2014.Google ScholarGoogle Scholar
  6. GMC-Synthesis. https://bitbucket.org/julien-lange/ gmc-synthesis, 2014.Google ScholarGoogle Scholar
  7. R. Alur, K. Etessami, and M. Yannakakis. Inference of Message Sequence Charts. IEEE Trans. Software Eng., 29(7):623--633, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. E. Badouel and P. Darondeau. Theory of regions. In Petri Nets, volume 1491 of LNCS, pages 529--586. Springer, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. C. Baier, J. Klein, and S. Klüppelholz. Synthesis of reo connectors for strategies and controllers. Fundam. Inform., 130(1):1--20, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. S. Basu and T. Bultan. Choreography conformance via synchronizability. In WWW, pages 795--804. ACM, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. S. Basu, T. Bultan, and M. Ouederni. Synchronizability for verification of asynchronously communicating systems. In VMCAI, volume 7148 of LNCS. Springer, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. S. Basu, T. Bultan, and M. Ouederni. Deciding choreography realizability. In POPL, pages 191--202. ACM, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. F. Bonchi and D. Pous. Checking nfa equivalence with bisimulations up to congruence. In POPL, pages 457--468. ACM, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. D. Brand and P. Zafiropulo. On communicating finite-state machines. JACM, 30(2):323--342, 1983. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. A. Bucchiarone, H. Melgratti, and F. Severoni. Testing service composition. In Proceedings of the 8th Argentine Symposium on Software Engineering (ASSE07), 2007.Google ScholarGoogle Scholar
  16. G. Castagna, M. Dezani-Ciancaglini, and L. Padovani. On global types and multi-party session. LMCS, 8(1), 2012.Google ScholarGoogle Scholar
  17. G. Cécé and A. Finkel. Verification of programs with half-duplex communication. I&C, 202(2):166--190, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. W. W. W. Consortium. Web services choreography description language version 1.0. http://www.w3.org/TR/ws-cdl-10/, 2005.Google ScholarGoogle Scholar
  19. J. Cortadella, M. Kishinevsky, L. Lavagno, and A. Yakovlev. Deriving Petri Nets for Finite Transition Systems. IEEE Trans. Computers, 47 (8):859--882, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. P. Deniélou and N. Yoshida. Multiparty session types meet communicating automata. In ESOP, volume 7211 of LNCS, pages 194--213. Springer, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. P.-M. Deniélou and N. Yoshida. Multiparty compatibility in communicating automata: Characterisation and synthesis of global session types. In ICALP, volume 7966 of LNCS, pages 174--186, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. M. Güdemann, G. Salaün, and M. Ouederni. Counterexample guided synthesis of monitors for realizability enforcement. In ATVA, volume 7561 of LNCS, pages 238--253, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. S. Hallé and T. Bultan. Realizability analysis for message-based interactions using shared-state projections. In SIGSOFT FSE, pages 27--36. ACM, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. K. Honda, N. Yoshida, and M. Carbone. Multiparty asynchronous session types. In POPL, pages 273--284. ACM, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. J. Lange and E. Tuosto. Synthesising Choreographies from Local Session Types. In CONCUR, volume 7454 of LNCS, pages 225--239. Springer, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. R. Lanotte, A. Maggiolo-Schettini, and A. Troina. Weak bisimulation for probabilistic timed automata. Theor. Comput. Sci., 411(50):4291--4322, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. S. McIlvenna, M. Dumas, and M. T. Wynn. Synthesis of orchestrators from service choreographies. In APCCM, volume 96 of CRPIT, pages 129--138. ACS, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. D. Mostrous, N. Yoshida, and K. Honda. Global principal typing in partially commutative asynchronous sessions. In ESOP, volume 5502 of LNCS, pages 316--332. Springer, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. M. Mukund, K. N. Kumar, and M. A. Sohoni. Synthesizing distributed finite-state systems from MSCs. In CONCUR, volume 1877 of LNCS, pages 521--535. Springer, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. A. Muscholl. Analysis of communicating automata. In LATA, volume 6031 of LNCS, pages 50--57. Springer, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. G. Salaün, L. Bordeaux, and M. Schaerf. Describing and reasoning on web services using process algebra. In ICWS, pages 43--. IEEE Computer Society, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Y. Wang, A. Nazeem, and R. Swaminathan. On the optimal Petri net representation for service composition. In ICWS, pages 235--242. IEEE Computer Society, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. D. M. Yellin and R. E. Strom. Protocol specifications and component adaptors. ACM Trans. Program. Lang. Syst., 19(2):292--333, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. From Communicating Machines to Graphical Choreographies

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader
        About Cookies On This Site

        We use cookies to ensure that we give you the best experience on our website.

        Learn more

        Got it!