Skip to main content
Log in

Self-adaptive multiparty sessions

  • Special Issue Paper
  • Published:
Service Oriented Computing and Applications Aims and scope Submit manuscript

Abstract

To model the notion of self-adaptiveness for multiparty sessions, we propose a formal framework, where participants can access and modify the global state, in such a way that the whole system can react promptly to unforeseen events by reconfiguring itself. The adaptation strategy is triggered by the overall communication choreography, represented by a global type. When the global type is dynamically updated, its projections define new monitors, which set-up novel communication protocols for the participants. The key result of this paper is that self-adaptations are performed in a type-safe way, while providing a high degree of flexibility. Subject Reduction and Progress properties are proven: any session executes all required communications in a type-safe way and never gets stuck.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Anderson G, Rathke J (2012) Dynamic software update for message passing programs. In: APLAS’12, LNCS, vol 7705. Springer, Berlin, pp 207–222

  2. Bettini L, Coppo M, D’Antoni L, De Luca M, Dezani-Ciancaglini M, Yoshida N (2008) Global progress in dynamically interleaved multiparty sessions. In: CONCUR’08, LNCS, vol 5201. Springer, Berlin, pp 418–433

  3. Bocchi L, Chen T.C, Demangeon R, Honda K, Yoshida N (2013) Monitoring networks through multiparty session types. In: FMOODS/FORTE’13, LNCS, vol 7892. Springer, Berlin, pp 50–65

  4. Bravetti M, Carbone M, Hildebrandt T, Lanese I, Mauro J, Perez J.A, Zavattaro G (2014) Towards global and local types for adaptation. In: SEFM’13, LNCS, vol 8368, Springer, Berlin, pp 3–14

  5. Bravetti M, Di Giusto C, Pérez J.A, Zavattaro G (2012) Adaptable processes. Log Methods Comput Sci 8(4):1–71

  6. Bravetti M, Zavattaro G (2007) Towards a unifying theory for choreography conformance and contract compliance. In: SC’07, LNCS, vol 4829. Springer, Berlin, pp 34–50

  7. Bruni R, Corradini A, Gadducci F, Lluch-Lafuente A, Vandin A (2012) A Conceptual framework for adaptation. In: FASE’12, LNCS, vol 7212. Springer, Berlin, pp 240–254

  8. Bugliesi M, Castagna G, Crafa S (2004) Access control for mobile agents: the calculus of boxed ambients. ACM Trans Program Lang Syst 26(1):57–124

    Article  Google Scholar 

  9. Carbone M, Honda K, Yoshida N (2012) Structured communication-centered programming for web services. ACM Trans Program Lang Syst 34(2):8:1–8:78

  10. Castagna G, Dezani-Ciancaglini M, Padovani L (2012) On global types and multi-party sessions. Log Methods Comput Sci 8:1–45

    Article  MathSciNet  Google Scholar 

  11. Chen TC, Bocchi L, Deniélou P.M, Honda K, Yoshida N (2012) Asynchronous distributed monitoring for multiparty session enforcement. In: TGC’11, LNCS, vol 7173. Springer, Berlin, pp 25–45

  12. Coppo M, Dezani-Ciancaglini M, Venneri B (2014) Self-adaptive monitors for multiparty sessions. In: PDP’14, IEEE, pp 688–696

  13. Coppo M, Dezani-Ciancaglini M, Yoshida N, Padovani L (2014) Global progress for dynamically interleaved multiparty sessions. Math Struct Comput Sci (to appear)

  14. Dalla Preda M, Gabbrielli M, Giallorenzo S, Lanese I, Mauro J (2014) Deadlock freedom by construction for distributed adaptive applications. CoRR. arxiv.org:1407.0970

  15. Dalla Preda M, Giallorenzo S, Lanese I, Mauro J, Gabbrielli M (2014) AIOCJ: a choreographic framework for safe adaptive distributed applications. In: SLE’14, LNCS, vol 8706. Springer, Berlin, pp 161–170

  16. Dalla Preda M, Lanese I, Mauro J, Gabbrielli M (2013) Adaptive choreographies. http://www.cs.unibo.it/lanese/publications/adaptchor.gz

  17. Dalla Preda M, Lanese I, Mauro J, Gabbrielli M, Giallorenzo S (2013) Safe run-time adaptation of distributed systems. http://www.cs.unibo.it/lanese/publications/fulltext/safeadapt.gz

  18. Demangeon R, Honda K (2011) Full abstraction in a subtyped pi-calculus with linear types. In: CONCUR’11, LNCS, vol 6901. Springer, Berlin, pp 280–296

  19. Deniélou P.M, Yoshida N (2011) Dynamic multirole session types. In: POPL’11. ACM Press, New York, pp 435–446

  20. Di Giusto C, Pérez JA (2013) Disciplined structured communications with consistent runtime adaptation. In: SAC’13, ACM Press, New York, pp 1913–1918

  21. Ferrari GL, Moggi E, Pugliese R (2002) Guardians for ambient-based monitoring. ENTCS 66(3):52–75

    Google Scholar 

  22. Garralda P, Compagnoni A.B, Dezani-Ciancaglini M (2006) BASS: boxed ambients with safe sessions. In: PPDP’06, ACM Press, New York, pp 61–72

  23. Gay S, Hole M (2005) Subtyping for session types in the Pi calculus. Acta Inf 42(2/3):191–225

    Article  MathSciNet  MATH  Google Scholar 

  24. Gay SJ (2008) Bounded polymorphism in session types. Math Struct Comput Sci 18(5):895–930

    Article  MathSciNet  MATH  Google Scholar 

  25. Ghezzi C, Pradella M, Salvaneschi G (2011) An evaluation of the adaptation capabilities in programming languages. In: SEAMS’11. ACM Press, New York, pp 50–59

  26. Gorla D, Hennessy M, Sassone V (2005) Security policies as membranes in systems for global computing. ENTCS 138(1):23–42

    Google Scholar 

  27. Honda K, Vasconcelos VT, Kubo M (1998) Language primitives and type disciplines for structured communication-based programming. In: ESOP’98, LNCS, vol 1381. Springer, Berlin, pp 22–138

  28. Honda K, Yoshida N, Carbone M (2008) Multiparty asynchronous session types. In: POPL’08, ACM Press, New York, pp 273–284

  29. Kouzapas D, Yoshida N, Honda K (2011) On asynchronous session semantics. In: FMOODS/FORTE’11, LNCS, vol 6722, Springer, Berlin, pp 228–243

  30. Lanese I, Bucchiarone A, Montesi F (2010) A framework for rule-based dynamic adaptation. In: TGC’10, LNCS, vol 6084, Springer, Berlin, pp 284–300

  31. Leite LAF, Oliva GA, Nogueira GM, Gerosa MA, Kon F, Milojicic DS (2013) A systematic literature review of service choreography adaptation. SOCA 7(3):199–216

    Article  Google Scholar 

  32. Mostrous D, Yoshida N, Honda K (2009) Global principal typing in partially commutative asynchronous sessions. In: ESOP’09, LNCS, vol 5502, Springer, Berlin, pp 316–332

  33. Padovani L (2010) Session types = intersection types + union types. In: ITRS’10, EPTCS, vol 45, pp 71–89

  34. Padovani L (2011) Fair subtyping for multi-party session types. In: COORDINATION’11, LNCS, vol 6721, Springer, Berlin, pp 127–141

  35. Padovani L (2013) Fair subtyping for open session types. In: ICALP’13, LNCS, vol 7966, Springer, Berlin. pp 373–384

  36. Psaier H, Juszczyk L, Skopik F, Schall D, Dustdar S (2010) Runtime behavior monitoring and self-adaptation in service-oriented systems. In: SASO’10, IEEE Computer Society, pp 164–173

  37. Vasconcelos VT (2009) Fundamentals of session types. In: SFM’09, LNCS, vol 5569, Springer, Berlin. pp 158–186

Download references

Acknowledgments

The authors gratefully thank the anonymous referees for their accurate and enlightening remarks, that strongly improved both the presentation and the technical development. This work was partially supported by EU Collaborative project ASCENS 257414, ICT COST Action IC1201 BETTY, MIUR PRIN Project CINA Prot. 2010LHT4KM and Torino University/Compagnia San Paolo Project SALT.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mariangiola Dezani-Ciancaglini.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Coppo, M., Dezani-Ciancaglini, M. & Venneri, B. Self-adaptive multiparty sessions. SOCA 9, 249–268 (2015). https://doi.org/10.1007/s11761-014-0171-9

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11761-014-0171-9

Keywords

Navigation