Automated and Unanticipated Flexible Component Substitution

In this paper, we present an automatic and flexible approach for software component substitution. When a component is removed from an assembly, most existing approaches perform component-to-component substitution, relying on the fact that such a candidate component is available, which is hardly to happen because the constraints on its interfaces are too strong. When such a component does not exist, it would be more flexible to allow a single component to be replaced by a whole component assembly. We propose such an automatic substitution mechanism which does not need the changes to be anticipated and preserves the quality of the assembly.

[1]  Ivica Crnkovic Component-based software engineering - new challenges in software development , 2003 .

[2]  Antonio Vallecillo,et al.  Component-Based Software Quality , 2003, Lecture Notes in Computer Science.

[3]  Paola Inverardi,et al.  Formal Specification and Analysis of Software Architectures Using the Chemical Abstract Machine Model , 1995, IEEE Trans. Software Eng..

[4]  Robert J. Allen A formal approach to software architecture , 1997 .

[5]  Antonio Vallecillo,et al.  Component-based software quality : methods and techniques , 2003 .

[6]  Jan Kofron,et al.  Behavior Protocols Verification: Fighting State Explosion , 2004 .

[7]  Kurt C. Wallnau,et al.  Volume III: A Technology for Predictable Assembly from Certifiable Components , 2003 .

[8]  Petr Hnetynka,et al.  SOFA 2.0: Balancing Advanced Features in a Hierarchical Component Model , 2006, Fourth International Conference on Software Engineering Research, Management and Applications (SERA'06).

[9]  Jeff Magee,et al.  Dynamic structure in software architectures , 1996, SIGSOFT '96.

[10]  Cliff B. Jones,et al.  Systematic software development using VDM , 1986, Prentice Hall International Series in Computer Science.

[11]  David Garlan,et al.  A Formal Approach to Software Architectures , 1992, IFIP Congress.

[12]  Peyman Oreizy,et al.  Architecture-based runtime software evolution , 1998, Proceedings of the 20th International Conference on Software Engineering.

[13]  Andrew P. Black ECOOP 2005 - Object-Oriented Programming, 19th European Conference, Glasgow, UK, July 25-29, 2005, Proceedings , 2005, ECOOP.

[14]  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).

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

[16]  William I. Grosky,et al.  SOFSEM 2002: Theory and Practice of Informatics , 2002, Lecture Notes in Computer Science.

[17]  Premek Brada Component Change and Version Identification in SOFA , 1999, SOFSEM.

[18]  C. Chambers,et al.  ArchJava: connecting software architecture to implementation , 2002, Proceedings of the 24th International Conference on Software Engineering. ICSE 2002.

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

[20]  Wilhelm Hasselbring,et al.  On A Software Architecture Description supporting Component Deployment and System Runtime Reconfiguration , 2004 .

[21]  Alan W. Brown,et al.  The Current State , 2016 .

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

[23]  Ralf H. Reussner,et al.  Reasoning about Software Architectures with Contractually Specified Components , 2003, Component-Based Software Quality.

[24]  Jirí Adámek,et al.  Partial bindings of components - any harm? , 2004, 11th Asia-Pacific Software Engineering Conference.

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

[26]  Marianne Huchard,et al.  Automating the Building of Software Component Architectures , 2006, EWSA.

[27]  Cliff B. Jones,et al.  Systematic software development using VDM (2. ed.) , 1990, Prentice Hall International Series in Computer Science.

[28]  Remco M. Dijkman,et al.  Verifying the correctness of component-based applications that support business processes , 2003 .

[29]  Alexander L. Wolf,et al.  Software architecture , 2001 .

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