kirancodes.me
To Proof Maintenance & Beyond!

Residual dynamic typestate analysis exploiting static analysis: results to reformulate and reduce the cost of dynamic analysis

Matthew B. Dwyer, Rahul Purandare

Abstract

Programmers using complex libraries and frameworks are faced with the difficult task of ensuring that their implementations comply with complex and informally described rules for proper sequencing of API calls. Recent advances in static and dynamic techniques for checking explicit specifications of program typestate properties have shown promise in addressing this challenge. Unfortunately, static typestate analyses are limited in their scalability and dynamic analyses can suffer from significant run-time overhead. In this paper, we present an approach that exploits information calculated by flow-sensitive static typestate analyses to reformulate the original analysis problem as a residual dynamic typestate analysis. We demonstrate that residual analyses retain the error reporting of unoptimized dynamic analysis while offering the potential for significantly reducing analysis cost

BibTeX
@inproceedings{Dwyer-Purandare:ASE07,
  author    = {Matthew B. Dwyer and
               Rahul Purandare},
  title     = {Residual dynamic typestate analysis exploiting static analysis: results to reformulate and reduce the cost of dynamic analysis},
  booktitle = {ASE},
  pages     = {124--133},
  publisher = {{ACM}},
  year      = {2007},
}

Related papers