This research was conducted by Ben Liblit. The invited paper appeared in the 15th International Static Analysis Symposium (SAS 2008).
Cooperative Bug Isolation (CBI) is a feedback-directed approach to improving software quality. Developers provide instrumented applications to the general public, and then use statistical methods to mine returned data for information about the root causes of failure. Thus, users and developers form a feedback loop of continuous software improvement. Given CBI’s focus on statistical methods and dynamic data collection, it is not clear how static program analysis can most profitably be employed. We discuss current uses of static analysis during CBI instrumentation and failure modeling. We propose novel ways in which static analysis could be applied at various points along the CBI feedback loop, from fairly concrete low-level optimization opportunities to hybrid failure-modeling approaches that may cut across current static/dynamic/statistical boundaries.
The full paper is available as a single PDF document. A suggested BibTeX citation record is also available.