Modular Verification of Reconfigurable Components

This chapter presents a framework for modular verification of reconfigurable real-time components. The framework enables proving that the reconfiguration of components via aspect weaving provides expected functional and temporal behavior in the reconfigured component. Within the framework we formally represent components and aspects as augmentations of timed automata. The verification is based on two algorithms: an algorithm that extracts necessary information into component verification interfaces, and an algorithm that checks, on an aspect, whether the property is preserved upon reconfiguration. Hence, the method ensures that components are verified only once for a particular property, while the property satisfaction under reconfiguration is checked only on aspects. Verification interfaces for a given property can be reused for multiple aspects and reconfigurations.

[1]  Jörgen Hansson,et al.  COMET: A Component-Based Real-Time Database for Automotive Systems , 2004, ICSE 2004.

[2]  Wang Yi,et al.  Timed Automata: Semantics, Algorithms and Tools , 2003, Lectures on Concurrency and Petri Nets.

[3]  Kathi Fisler,et al.  Verifying aspect advice modularly , 2004, SIGSOFT '04/FSE-12.

[4]  Jörgen Hansson,et al.  Data management issues in vehicle control systems: a case study , 2002, Proceedings 14th Euromicro Conference on Real-Time Systems. Euromicro RTS 2002.

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

[6]  Mira Mezini,et al.  On aspectualizing component models , 2003, Softw. Pract. Exp..

[7]  Thomas A. Henzinger,et al.  Symbolic model checking for real-time systems , 1992, [1992] Proceedings of the Seventh Annual IEEE Symposium on Logic in Computer Science.

[8]  John A. Stankovic VEST - A Toolset for Constructing and Analyzing Component Based Embedded Systems , 2001, EMSOFT.

[9]  Rajeev Alur,et al.  Model-checking for real-time systems , 1990, [1990] Proceedings. Fifth Annual IEEE Symposium on Logic in Computer Science.

[10]  Seongsoo Hong,et al.  Real-Time and Embedded Computing Systems and Applications , 2004, Lecture Notes in Computer Science.

[11]  Wang Yi,et al.  Compositional and symbolic model-checking of real-time systems , 1995, Proceedings 16th IEEE Real-Time Systems Symposium.

[12]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[13]  Kathi Fisler,et al.  Verifying cross-cutting features as open systems , 2002, SIGSOFT '02/FSE-10.

[14]  Kathi Fisler,et al.  Interfaces for modular feature verification , 2002, Proceedings 17th IEEE International Conference on Automated Software Engineering,.

[15]  Wolfgang Reisig,et al.  Lectures on Concurrency and Petri Nets , 2003, Lecture Notes in Computer Science.

[16]  A Stankovic John VEST: A Toolset for Constructing and Analyzing Component Based Operating Systems For Embedded and Real-Time Systems , 2000 .

[17]  Aleksandra Tesanovic Towards Aspectual Component-Based Real-Time System Development , 2003 .

[18]  Satoshi Matsuoka,et al.  ECOOP'97 — Object-Oriented Programming , 1997, Lecture Notes in Computer Science.

[19]  Wolfgang Schröder-Preikschat,et al.  AspectC++: an aspect-oriented extension to the C++ programming language , 2002 .

[20]  Jörgen Hansson,et al.  Towards Aspectual Component-Based Development of Real-Time Systems , 2003, RTCSA.

[21]  Gregor Kiczales,et al.  Aspect-oriented programming , 1996, CSUR.

[22]  Jörgen Hansson,et al.  Aspects and components in real-time system development: Towards reconfigurable and reusable software , 2005, J. Embed. Comput..

[23]  Rajeev Alur,et al.  Timed Automata , 1999, CAV.

[24]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..

[25]  Gregor Kiczales,et al.  Using aspectC to improve the modularity of path-specific customization in operating system code , 2001, ESEC/FSE-9.