A Model for Spectra-based Software Diagnosis
Lee Naish, Hua Jie Lee, Kotagiri Ramamohanarao
This paper presents an improved approach to assist diagnosis of failures
in software (fault localisation) by ranking program statements or
blocks according 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
which 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.
Lee