Modeling Environment for Component Model Checking from Hierarchical Architecture

Application of model checking to isolated software components is not directly possible because a component does not form a complete program - the problem of missing environment occurs. A solution is to create an environment of some form for the component subject to model checking. As the most general environment can cause model checking of the component to be infeasible, we model the environment on the basis of a particular context the component is to be used in. More specifically, our approach exploits hierarchical component architecture and component behavior specification defined via behavior protocols, all that provided in ADL. This way, the environment represents the behavior of the rest of the particular application with respect to the target component. We present an algorithm for computing the model of environment's behavior that is based on syntactical expansion and substitution of behavior protocols.

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

[2]  Michael Huth,et al.  Assume-Guarantee Model Checking of Software: A Comparative Case Study , 1999, SPIN.

[3]  Howard Barringer,et al.  Assumption generation for software component verification , 2002, Proceedings 17th IEEE International Conference on Automated Software Engineering,.

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

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

[6]  Stephan Merz,et al.  Model Checking , 2000 .

[7]  Alan Bundy,et al.  Constructing Induction Rules for Deductive Synthesis Proofs , 2006, CLASE.

[8]  Jirí Adámek,et al.  Erroneous architecture is a relative concept , 2004, IASTED Conf. on Software Engineering and Applications.

[9]  Corina S. Pasareanu,et al.  Learning Assumptions for Compositional Verification , 2003, TACAS.

[10]  Jan Kofron,et al.  Model Checking of Software Components: Combining Java PathFinder and Behavior Protocol Model Checker , 2006, 2006 30th Annual IEEE/NASA Software Engineering Workshop.

[11]  Nenad Medvidovic ADLs and dynamic architecture changes , 1996, ISAW '96.

[12]  Shing-Chi Cheung,et al.  Context constraints for compositional reachability analysis , 1996, TSEM.

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

[14]  Frantisek Plasil,et al.  Specification and Generation of Environment for Model Checking of Software Components , 2007, Electron. Notes Theor. Comput. Sci..

[15]  Edmund M. Clarke,et al.  Compositional model checking , 1989, [1989] Proceedings. Fourth Annual Symposium on Logic in Computer Science.