A Formal Framework for Component Pr otocols Behavioural Compatibility

In this paper, we present a new and optimistic approach to the definition of component protocols compatibility, and we provide a framework for modeling component protocols together with their composition. This framework is discussed in terms of compatibility and substitutability checks of protocols. According to the optimistic approach, two protocols are compatible if they are composable and their composition leads to a usable protocol, that is a protocol such that there exists an environment ensuring safety and liveness property of the composed protocol, which is obtained by the composition of the involved protocol and that environment. Safety and liveness properties such as deadlock-freeness and proper termination of protocols are considered up to different extents. Based on that, we present two protocols compatibility relations related to the usability concept, together with two behavioural subtyping relations related to the principle of substitutability. We address their soundness by showing the existing link between compatibility and substitutability relations, which have found necessary when dealing with incremental design of protocols.

[1]  Jeannette M. Wing,et al.  A behavioral notion of subtyping , 1994, TOPL.

[2]  Axel Martens,et al.  Analyzing Web Service Based Business Processes , 2005, FASE.

[3]  Tadao Murata,et al.  Petri nets: Properties, analysis and applications , 1989, Proc. IEEE.

[4]  Robin Milner,et al.  A Calculus of Communicating Systems , 1980, Lecture Notes in Computer Science.

[5]  Kees M. van Hee,et al.  Component-based software architectures: a framework based on inheritance of behavior , 2002, Sci. Comput. Program..

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

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

[8]  Carla Simone,et al.  A survey of equivalence notions for net based systems , 1992, Advances in Petri Nets: The DEMON Project.

[9]  Nabil Hameurlain On compatibility and behavioural substitutability of component protocols , 2005, Third IEEE International Conference on Software Engineering and Formal Methods (SEFM'05).

[10]  Oscar Nierstrasz,et al.  Regular types for active objects , 1993, OOPSLA '93.

[11]  Jeannette M. Wing,et al.  Specification matching of software components , 1997 .

[12]  David Garlan,et al.  Formalizing Architectural Connection , 1994, ICSE.

[13]  David Garlan,et al.  Formalizing architectural connection , 1994, Proceedings of 16th International Conference on Software Engineering.

[14]  Frantisek Plasil,et al.  Behavior Protocols for Software Components , 2002, IEEE Trans. Software Eng..

[15]  하수철,et al.  [서평]「Component Software」 - Beyond Object-Oriented Programming - , 2000 .

[16]  Nabil Hameurlain Behavioural Subtyping and Property Preservation for Active Objects , 2002, FMOODS.

[17]  José M. Troya,et al.  Compatibility and inheritance in software architectures , 2001, Sci. Comput. Program..