A Technique for Verifying Component-Based Software

Leonardo Mariani, Mauro Pezzè
2005 Electronical Notes in Theoretical Computer Science  
Component-based software systems raise new problems for the testing community: the reuse of components suggests the possibility of reducing testing costs by reusing information about the quality of the software components. This paper addresses the problem of testing evolving software systems, i.e., systems obtained by modifying and/or substituting some of their components. The paper proposes a technique to automatically identify behavioral differences between different versions of the system,
more » ... deduce possible problems from inconsistent behaviors. The approach is based on the automatic distilling of invariants from in-field executions. The computed invariants are used to monitor the behavior of new components, and to reveal unexpected interactions. The event generated while monitoring system executions are presented to software engineers who can infer possible problems of the new versions.
doi:10.1016/j.entcs.2004.02.089 fatcat:7o44jwfqmfb4vaiq4zbv27eyua