Controlling Factors in Evaluating Path-sensitive Error Detection Techniques

Abstract

Recent advances in static program analysis have made it possible to detect errors in applications that have been thoroughly tested and are in wide-spread use. The ability to find errors that have eluded traditional validation methods is due to the development and combination of sophisticated algorithmic techniques that are embedded in the implementations of analysis tools. Evaluating new analysis techniques is typically performed by running an analysis tool on a collection of subject programs, perhaps enabling and disabling a given technique in different runs. While seemingly sensible, this approach runs the risk of attributing improvements in the cost-effectiveness of the analysis to the technique under consideration, when those improvements may actually be due to details of analysis tool implementations that are uncontrolled during evaluation. In this paper, we focus on the specific class of path-sensitive error detection techniques and identify several factors that can significantly influence the cost of analysis. We show, through careful empirical studies, that the influence of these factors is sufficiently large that, if left uncontrolled, they may lead researchers to improperly attribute improvements in analysis cost and effectiveness. We make several recommendations as to how the influence of these factors can be mitigated when evaluating techniques.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Jan 01, 2006
Accession Number
ADA459081

Entities

People

  • Matthew B. Dwyer
  • Sebastian Elbaum
  • Suzette Person

Organizations

  • University of Nebraska-Lincoln Department of Computer Science and Engineering

Tags

Communities of Interest

  • Energy and Power Technologies
  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Abstracts
  • Algorithms
  • Communities
  • Computer Science
  • Computers
  • Cost Effectiveness
  • Costs
  • Data Sets
  • Detection
  • Engineering
  • Graphs
  • High Density
  • Language
  • Low Density
  • Regression Analysis
  • Scheduling (Production)
  • Standards

Fields of Study

  • Computer science
  • Engineering

Readers

  • Aviation Safety Risk Assessment.
  • Distributed Systems and Data Platform Development
  • Systems Analysis and Design