kirancodes.me
To Proof Maintenance & Beyond!

Extending static analysis by mining project-specific rules

Boya Sun, Gang Shu, Andy Podgurski, Brian Robinson

Abstract

Commercial static program analysis tools can be used to detect many defects that are common across applications. However, such tools currently have limited ability to reveal defects that are specific to individual projects, unless specialized checkers are devised and implemented by tool users. Developers do not typically exploit this capability. By contrast, defect mining tools developed by researchers can discover project-specific defects, but they require specialized expertise to employ and they may not be robust enough for general use. We present a hybrid approach in which a sophisticated dependence-based rule mining tool is used to discover project-specific programming rules, which are then transformed automatically into checkers that a commercial static analysis tool can run against a code base to reveal defects. We also present the results of an empirical study in which this approach was applied successfully to two large industrial code bases. Finally, we analyze the potential implications of this approach for software development practice.

BibTeX
@inproceedings{Sun-al:ICSE12,
  author    = {Boya Sun and
               Gang Shu and
               Andy Podgurski and
               Brian Robinson},
  title     = {Extending static analysis by mining project-specific rules},
  booktitle = {ICSE},
  pages     = {1054--1063},
  publisher = {{IEEE} Computer Society},
  year      = {2012},
}

Related papers