Recent years have seen considerable developments in modeling techniques for automatic fault location in programs. However, much of this research considered the models from a standalone perspective. Instead, this paper focuses on the properties of the testing and measurement process, where capabilities differ strongly from the classical hardware diagnosis paradigm. In particular, in an interactive debugging process user interaction may result in highly complex input to improve the process. This work proposes an heuristic entropy-based measurement selection algorithm, which incorporates high-level properties of the intended behavior of Java programs, specific to a set of test cases. We show how to integrate the approach into previously developed model-based debugging frameworks and to how reasoning about high-level properties of programs can improve fault localization.
[1]
Michael Wolfe,et al.
Beyond induction variables: detecting and classifying sequences using a demand-driven SSA form
,
1995,
TOPL.
[2]
Patrick Cousot,et al.
Abstract interpretation based program testing
,
2000
.
[3]
Markus Stumptner,et al.
Model-Based Debugging using Multiple Abstract Models
,
2003,
ArXiv.
[4]
Raymond Reiter,et al.
A Theory of Diagnosis from First Principles
,
1986,
Artif. Intell..
[5]
William G. Griswold,et al.
Quickly detecting relevant program invariants
,
2000,
Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.
[6]
Brian C. Williams,et al.
Diagnosing Multiple Faults
,
1987,
Artif. Intell..
[7]
Markus Stumptner,et al.
Towards an Integrated Debugging Environment
,
2002,
ECAI.