Advertisement

Compositional Choreographies

  • Fabrizio Montesi
  • Nobuko Yoshida
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8052)

Abstract

We propose a new programming model that supports a compositionality of choreographies. The key of our approach is the introduction of partial choreographies, which can mix global descriptions with communications among external peers. We prove that if two choreographies are composable, then the endpoints independently generated from each choreography are also composable, preserving their typability and deadlock-freedom. The usability of our framework is demonstrated by modelling an industrial use case implemented in a tool for Web Services, Jolie.

Keywords

Service Process Parallel Composition External Process Typing Judgement Session Type 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
  2. 2.
    Baltazar, P., Caires, L., Vasconcelos, V.T., Vieira, H.T.: A Type System for Flexible Role Assignment in Multiparty Communicating Systems. In: Proc. of TGC (2012)Google Scholar
  3. 3.
    Bettini, L., Coppo, M., D’Antoni, L., De Luca, M., Dezani-Ciancaglini, M., Yoshida, N.: Global progress in dynamically interleaved multiparty sessions. In: van Breugel, F., Chechik, M. (eds.) CONCUR 2008. LNCS, vol. 5201, pp. 418–433. Springer, Heidelberg (2008), Long version at http://www.di.unito.it/~dezani/papers/cdy12.pdf CrossRefGoogle Scholar
  4. 4.
    Business Process Model and Notation, http://www.omg.org/spec/BPMN/2.0/
  5. 5.
    Busi, N., Gorrieri, R., Guidi, C., Lucchi, R., Zavattaro, G.: Choreography and orchestration conformance for system design. In: Ciancarini, P., Wiklicky, H. (eds.) COORDINATION 2006. LNCS, vol. 4038, pp. 63–81. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  6. 6.
    Carbone, M., Honda, K., Yoshida, N.: Structured communication-centered programming for web services. ACM Trans. Program. Lang. Syst. 34(2), 8 (2012)CrossRefGoogle Scholar
  7. 7.
    Carbone, M., Montesi, F.: Deadlock-freedom-by-design: multiparty asynchronous global programming. In: POPL, pp. 263–274 (2013)Google Scholar
  8. 8.
    Chor. Programming Language, http://www.chor-lang.org/
  9. 9.
    Deniélou, P.-M., Yoshida, N.: Dynamic multirole session types. In: Proc. of POPL, pp. 435–446. ACM (2011)Google Scholar
  10. 10.
    Deniélou, P.-M., Yoshida, N., Bejleri, A., Hu, R.: Parameterised multiparty session types. LMCS 8(4) (2012)Google Scholar
  11. 11.
    Honda, K., Mukhamedov, A., Brown, G., Chen, T.-C., Yoshida, N.: Scribbling interactions with a formal foundation. In: Natarajan, R., Ojo, A. (eds.) ICDCIT 2011. LNCS, vol. 6536, pp. 55–75. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  12. 12.
    Honda, K., Vasconcelos, V.T., Kubo, M.: Language primitives and type disciplines for structured communication-based programming. In: Hankin, C. (ed.) ESOP 1998. LNCS, vol. 1381, pp. 122–138. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  13. 13.
    Honda, K., Yoshida, N., Carbone, M.: Multiparty asynchronous session types. In: Proc. of POPL, vol. 43(1), pp. 273–284. ACM (2008)Google Scholar
  14. 14.
  15. 15.
    Jolie. Java Orchestration Language Interpreter Engine, http://www.jolie-lang.org/
  16. 16.
    Lanese, I., Guidi, C., Montesi, F., Zavattaro, G.: Bridging the gap between interaction- and process-oriented choreographies. In: Proc. of SEFM, pp. 323–332. IEEE (2008)Google Scholar
  17. 17.
    Merro, M., Sangiorgi, D.: On asynchrony in name-passing calculi. Mathematical Structures in Computer Science 14(5), 715–767 (2004)MathSciNetzbMATHCrossRefGoogle Scholar
  18. 18.
    Montesi, F., Guidi, C., Zavattaro, G.: Composing Services with JOLIE. In: Proc. of ECOWS, pp. 13–22 (2007)Google Scholar
  19. 19.
    PI4SOA (2008), http://www.pi4soa.org
  20. 20.
    Savara. JBoss Community, http://www.jboss.org/savara/
  21. 21.
    W3C WS-CDL Working Group. Web services choreography description language version 1.0 (2004), http://www.w3.org/TR/ws-cdl-10/

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Fabrizio Montesi
    • 1
  • Nobuko Yoshida
    • 2
  1. 1.IT University of CopenhagenDenmark
  2. 2.Imperial College LondonUK

Personalised recommendations