Skip to main content

Modular Verification of Software Systems

Kathi Fisler

Worcester Polytechnic Institute




Aspect-oriented programming (AOP) has become an increasingly important programming paradigm. AOP is one of a family of means for expressing abstractions that cut across the program's dominant modularity; these techniques enable the construction of software by composing features. Despite their importance, feature-based programming methods lack supporting computer-aided verification techniques, which are necessary for increasing reliability and developing confidence in systems.


This talk presents a technique for verifying feature-based programs (expressed as state machines). By analogy with modular compilation, we support modular verification, to both enable independent development and to reduce the computational cost of verification. We present the analysis and discuss subtleties that arose as we applied our prototype verifiers to real case studies.






Kathi Fisler is an Assistant Professor of Computer Science at WPI. Her research centers around formal approaches to understanding and predicting functional behavior of hardware and software systems. She has a particular interest in the role of diagrammatic representations in verification. Her current work explores modular analysis of feature-oriented software systems, the computational advantages of timing diagrams as a logic for temporal specifications, and change-impact analysis for access-control policies. Kathi earned her PhD in 1996 from Indiana University, did a postdoc at Rice University and internships at Bell Labs and Intel before starting at WPI in 2000.