A Service-Based Component Model: Formalism, Analysis and Mechanization

Component-Based Software Engineering (CBSE) is one of the approaches to master the development of large scale software. In this setting, the verification concern is still a challenge. The objective of our work is to provide the designer of components-based systems with the methods to assist his/her use of the components. In particular, the current work adresses the composability of components and their services. A component model is presented, based on services. An associated simple but expressive formalism is introduced; it describes the services as extended LTS and their structuring as components. The composition of components is mainly based on service composition and encapsulation. The composability of component is defined from the composability of services. To ensure the correctness of component composition, we check that an assembly is possible via the checking of the composabiblity of the linked services, and their behavioral compatibility. In order to mechanize our approach, the services and the components are translated into the MEC and LOTOS formalism. Finally the MEC and LOTOS CADP toolbox is used to perform experiments.

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

[2]  J. Michael Spivey,et al.  The Z notation - a reference manual , 1992, Prentice Hall International Series in Computer Science.

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

[4]  Pascal André,et al.  Behavioural Verification of Service Composition , 2005 .

[5]  Nenad Medvidovic,et al.  Towards a taxonomy of software connectors , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[6]  Clemens A. Szyperski,et al.  Component software - beyond object-oriented programming , 2002 .

[7]  Paul Crubillé,et al.  Construction and Analysis of Transition Systems with MEC , 1995, AMAST Series in Computing.

[8]  Naranker Dulay,et al.  Specifying Distributed Software Architectures , 1995, ESEC.

[9]  Paola Inverardi,et al.  Static checking of system behaviors using derived component assumptions , 2000, TSEM.

[10]  Richard N. Taylor,et al.  A Classification and Comparison Framework for Software Architecture Description Languages , 2000, IEEE Trans. Software Eng..

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

[12]  P. Neumann,et al.  Toward a Methodology for Designing Large Systems and Verifying Their Properties , 1974, GI Jahrestagung.

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

[14]  Thierry Coupaye,et al.  Recursive and Dynamic Software Composition with Sharing , 2002 .

[15]  Manfred Broy,et al.  A Formal Model for Componentware , 1999, FBT.

[16]  Jean-Raymond Abrial,et al.  The B-book - assigning programs to meanings , 1996 .

[17]  Fei Xie,et al.  Verified systems by composition from verified components , 2003, ESEC/FSE-11.

[18]  James E. Rumbaugh,et al.  Object-Oriented Modelling and Design , 1991 .

[19]  Alain Kerbrat,et al.  CADP - A Protocol Validation and Verification Toolbox , 1996, CAV.

[20]  Antonio Brogi,et al.  A formal approach to component adaptation , 2005, J. Syst. Softw..

[21]  Antoine Rauzy,et al.  The AltaRica Formalism for Describing Concurrent Systems , 1999, Fundam. Informaticae.

[22]  Jean-Claude Royer,et al.  A Java Implementation of a Component Model with Explicit Symbolic Protocols , 2005, SC@ETAPS.

[23]  Frantisek Plasil,et al.  SOFA/DCUP: architecture for component trading and dynamic updating , 1998, Proceedings. Fourth International Conference on Configurable Distributed Systems (Cat. No.98EX159).

[24]  Massimo Mecella,et al.  When are Two Web Services Compatible? , 2004, TES.

[25]  Mario Südholt,et al.  A Model of Components with Non-regular Protocols , 2005, SC@ETAPS.

[26]  Shing-Chi Cheung,et al.  Behaviour Analysis of Distributed Systems Using the Tracta Approach , 2004, Automated Software Engineering.

[27]  Iso. Lotos,et al.  A Formal Description Technique Based on the Temporal Ordering of Observational Behaviour , 1985 .