A model for spectra-based software diagnosis

Lee Naish*, Hua Jie Lee, Kotagiri Ramamohanarao

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

373 Citations (Scopus)


This article presents an improved approach to assist diagnosis of failures in software (fault localisation) by ranking program statements or blocks in accordance with to how likely they are to be buggy. We present a very simple single-bug program to model the problem. By examining different possible execution paths through this model program over a number of test cases, the effectiveness of different proposed spectral ranking methods can be evaluated in idealised conditions. The results are remarkably consistent to those arrived at empirically using the Siemens test suite and Space benchmarks. The model also helps identify groups of metrics that are equivalent for ranking. Due to the simplicity of the model, an optimal ranking method can be devised. This new method out-performs previously proposed methods for the model program, the Siemens test suite and Space. It also helps provide insight into other ranking methods.

Original languageEnglish
Article number11
Pages (from-to)11:1-11:32
Number of pages32
JournalACM Transactions on Software Engineering and Methodology
Issue number3
Publication statusPublished - Aug 2011
Externally publishedYes


  • Fault localization
  • Program spectra
  • Statistical debugging

Cite this