Disciplined structured communications with disciplined runtime adaptation

Session types offer a powerful type-theoretic foundation for the analysis of structured communications, as commonly found in service-oriented systems. They are defined upon core programming calculi which offer only limited support for expressing requirements related to runtime adaptation. This is unfortunate, as service-oriented systems are increasingly being deployed upon highly dynamic infrastructures in which such requirements are central concerns. In previous work, we developed a process calculi framework of adaptable processes, in which concurrent processes can be replaced, suspended, or discarded at runtime. In this paper, we propose a session type discipline for a calculus with adaptable processes. Our typed framework offers a simple alternative for integrating runtime adaptation mechanisms in the modeling and analysis of structured communications. We show that well-typed processes enjoy safety and consistency properties: while the former property ensures the absence of communication errors at runtime, the latter guarantees that active session behavior is never disrupted by adaptation actions. A model of session communications with located and update processes.A type discipline that ensures absence of communication errors and consistent updates.Several examples of runtime adaptation in the typed process framework.

[1]  Nobuko Yoshida,et al.  Multiparty asynchronous session types , 2008, POPL '08.

[2]  ROBIN MILNER,et al.  Edinburgh Research Explorer A Calculus of Mobile Processes, I , 2003 .

[3]  Gavin M. Bierman,et al.  Mutatis Mutandis: Safe and predictable dynamic software updating , 2007, TOPL.

[4]  Kohei Honda,et al.  Types for Dynamic Interaction , 1993 .

[5]  Mariangiola Dezani-Ciancaglini,et al.  BASS: boxed ambients with safe sessions , 2006, PPDP '06.

[6]  Mario Bravetti,et al.  Adaptable processes , 2011, Log. Methods Comput. Sci..

[7]  Antonio Brogi,et al.  Behavioural Types and Component Adaptation , 2004, AMAST.

[8]  Michele Bugliesi,et al.  Access control for mobile agents: The calculus of boxed ambients , 2004, TOPL.

[9]  Mariangiola Dezani-Ciancaglini,et al.  Self-Adaptive Monitors for Multiparty Sessions , 2014, 2014 22nd Euromicro International Conference on Parallel, Distributed, and Network-Based Processing.

[10]  Vasco Thudichum Vasconcelos,et al.  Language Primitives and Type Discipline for Structured Communication-Based Programming Revisited: Two Systems for Higher-Order Session Communication , 1998, SecReT@ICALP.

[11]  Simon J. Gay,et al.  Subtyping for session types in the pi calculus , 2005, Acta Informatica.

[12]  Ivan Lanese,et al.  Advanced Mechanisms for Service Combination and Transactions , 2011, Results of the SENSORIA Project.

[13]  Antonio Vallecillo,et al.  Typing the Behavior of Objects and Component Using Session Types , 2003, FOCLASA.

[14]  Nobuko Yoshida,et al.  Structured Communication-Centred Programming for Web Services , 2007, ESOP.

[15]  Mariangiola Dezani-Ciancaglini,et al.  On Progress for Structured Communications , 2007, TGC.

[16]  Davide Sangiorgi,et al.  Expressing mobility in process algebras : first-order and higher-order paradigms , 1993 .

[17]  Søren Debois,et al.  A Graphical Approach to Progress for Structured Communication in Web Services , 2010, ICE.

[18]  Alan Schmitt,et al.  Characterizing contextual equivalence in calculi with passivation , 2011, Inf. Comput..

[19]  Nobuko Yoshida,et al.  Structured Interactional Exceptions in Session Types , 2008, CONCUR.

[20]  Ilaria Castellani,et al.  Session Types for Access and Information Flow Control , 2010, CONCUR.

[21]  Jorge A. Pérez,et al.  Disciplined structured communications with consistent runtime adaptation , 2013, SAC '13.

[22]  Julian Rathke,et al.  Dynamic Software Update for Message Passing Programs , 2012, APLAS.

[23]  Robin Milner,et al.  A Calculus of Mobile Processes, II , 1992, Inf. Comput..

[24]  Kohei Honda,et al.  Types for Dyadic Interaction , 1993, CONCUR.

[25]  Roberto Bruni,et al.  A Conceptual Framework for Adaptation , 2012, FASE.

[26]  Nobuko Yoshida,et al.  On Asynchronous Session Semantics , 2011, FMOODS/FORTE.

[27]  Ivan Lanese,et al.  Towards Global and Local Types for Adaptation , 2013, SEFM Workshops.

[28]  Fritz Henglein,et al.  Trustworthy Pervasive Healthcare Services via Multiparty Session Types , 2012, FHIES.

[29]  Nobuko Yoshida,et al.  Two Session Typing Systems for Higher-Order Mobile Processes , 2007, TLCA.

[30]  Nobuko Yoshida,et al.  Language Primitives and Type Discipline for Structured Communication-Based Programming Revisited: Two Systems for Higher-Order Session Communication , 2007, Electron. Notes Theor. Comput. Sci..

[31]  Mariangiola Dezani-Ciancaglini,et al.  Sessions and Session Types: An Overview , 2009, WS-FM.