Automatic synthesis of modular connectors via composition of protocol mediation patterns

Ubiquitous and pervasive computing promotes the creation of an environment where Networked Systems (NSs) eternally provide connectivity and services without requiring explicit awareness of the underlying communications and computing technologies. In this context, achieving interoperability among heterogeneous NSs represents an important issue. In order to mediate the NSs interaction protocol and solve possible mismatches, connectors are often built. However, connector development is a never-ending and error-prone task and prevents the eternality of NSs. For this reason, in the literature, many approaches propose the automatic synthesis of connectors. However, solving the connector synthesis problem in general is hard and, when possible, it results in a monolithic connector hence preventing its evolution. In this paper, we define a method for the automatic synthesis of modular connectors, each of them expressed as the composition of independent mediators. A modular connector, as synthesized by our method, supports connector evolution and performs correct mediation.

[1]  Thomas A. Henzinger,et al.  Interface automata , 2001, ESEC/FSE-9.

[2]  Tiziana Margaria,et al.  LearnLib: a framework for extrapolating behavioral models , 2009, International Journal on Software Tools for Technology Transfer.

[3]  Daniel M. Yellin,et al.  Protocol specifications and component adaptors , 1997, TOPL.

[4]  Feng Jiang,et al.  Rule-Based Automatic Generation of Mediator Patterns for Service Composition Mismatches , 2008, 2008 The 3rd International Conference on Grid and Pervasive Computing - Workshops.

[5]  Paola Inverardi,et al.  Dynamic connector synthesis: revised prototype implementation , 2012 .

[6]  Kenneth L. Calvert,et al.  Formal Methods for Protocol Conversion , 1990, IEEE J. Sel. Areas Commun..

[7]  Simon S. Lam Correction to "Protocol Conversion" , 1988, IEEE Trans. Software Eng..

[8]  Jeffrey D. Ullman,et al.  Introduction to Automata Theory, Languages and Computation , 1979 .

[9]  Paola Inverardi,et al.  Automatic synthesis of behavior protocols for composable web-services , 2009, ESEC/FSE '09.

[10]  Katia P. Sycara,et al.  Towards automatic mediation of OWL-S process models , 2007, IEEE International Conference on Web Services (ICWS 2007).

[11]  Roman Neruda,et al.  An Agent for Asymmetric Process Mediation in Open Environments , 2008, SOCASE.

[12]  Diego Calvanese,et al.  The Description Logic Handbook: Theory, Implementation, and Applications , 2003, Description Logic Handbook.

[13]  Andreas Zeller,et al.  Automatically Generating Test Cases for Specification Mining , 2012, IEEE Transactions on Software Engineering.

[14]  Peter Sommerlad,et al.  Pattern-Oriented Software Architecture Volume 1: A System of Patterns , 1996 .

[15]  Bengt Jonsson,et al.  A Compositional Specification Theory for Component Behaviours , 2012, ESOP.

[16]  Jian Wang,et al.  A Pattern-Based Approach to Development of Service Mediators for Protocol Mediation , 2008, Seventh Working IEEE/IFIP Conference on Software Architecture (WICSA 2008).

[17]  Leonardo Mariani,et al.  Automatic generation of software behavioral models , 2008, 2008 ACM/IEEE 30th International Conference on Software Engineering.

[18]  Roberto Bruni,et al.  A basic algebra of stateless connectors , 2006, Theor. Comput. Sci..

[19]  B. F. Castro Buschmann, Frank; Meunier, Regine; Rohnert, Hans; Sommerlad, Peter; Stal, Michael. Pattern-oriented software architecture: a system of patterns, John Wiley & Sons Ltd, 1996 , 1997 .

[20]  Alberto L. Sangiovanni-Vincentelli,et al.  Convertibility verification and converter synthesis: two faces of the same coin , 2002, ICCAD 2002.

[21]  Marlon Dumas,et al.  Adapt or Perish: Algebra and Visual Notation for Service Interface Adaptation , 2006, Business Process Management.

[22]  Yérom-David Bromberg,et al.  Middleware-Layer Connector Synthesis: Beyond State of the Art in Middleware Interoperability , 2011, SFM.

[23]  M. Weiser The Computer for the Twenty-First Century , 1991 .

[24]  Yannis Kalfoglou,et al.  Ontology mapping: the state of the art , 2003, The Knowledge Engineering Review.

[25]  Luciano Lavagno,et al.  Quasi-static scheduling of independent tasks for reactive systems , 2002, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[26]  Gerd Wagner,et al.  Ontologies, Meta-models, and the Model-Driven Paradigm , 2006, Ontologies for Software Engineering and Software Technology.

[27]  Thomas A. Henzinger,et al.  Alternating Refinement Relations , 1998, CONCUR.

[28]  Alexander L. Wolf,et al.  Acm Sigsoft Software Engineering Notes Vol 17 No 4 Foundations for the Study of Software Architecture , 2022 .

[29]  David Garlan,et al.  A formal basis for architectural connection , 1997, TSEM.

[30]  David Garlan,et al.  A compositional formalization of connector wrappers , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[31]  David Lo,et al.  Learning extended FSA from software: An empirical assessment , 2012, J. Syst. Softw..

[32]  Carlos Canal,et al.  Model-Based Adaptation of Behavioral Mismatching Components , 2008, IEEE Transactions on Software Engineering.

[33]  Paola Inverardi,et al.  Application-Layer Connector Synthesis , 2011, SFM.

[34]  William G. Griswold,et al.  Dynamically discovering likely program invariants to support program evolution , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[35]  Paola Inverardi,et al.  Towards a Connector Algebra , 2010, ISoLA.

[36]  Michael R. Genesereth,et al.  The Conceptual Basis for Mediation Services , 1997, IEEE Expert.