Information and Software Technology 55 (5): 880-896 (2013)

A General Noise-Reduction Framework for Fault Localization of Java Programs 1

Jian Xu 2 , Zhenyu Zhang 3 , W.K. Chan 4 , T.H. Tse 5 and Shanping Li 2

[paper from ScienceDirect | technical report TR-2012-13]


Context: Existing fault-localization techniques combine various program features and similarity coefficients with the aim of precisely assessing the similarities among the dynamic spectra of these program features to predict the locations of faults. Many such techniques estimate the probability of a particular program feature causing the observed failures. They often ignore the noise introduced by other features on the same set of executions that may lead to the observed failures. It is unclear to what extent such noise can be alleviated.

Objective: This paper aims to develop a framework that reduces the noise in fault-failure correlation measurements.

Method: We develop a fault-localization framework that uses chains of key basic blocks as program features and a noise-reduction methodology to improve on the similarity coefficients of fault-localization techniques. We evaluate our framework on five base techniques using five real-life medium-scaled programs in different application domains. We also conduct a case study on subjects with multiple faults.

Results: The experimental result shows that the synthesized techniques are more effective than their base techniques by almost 10%. Moreover, their runtime overhead factors to collect the required feature values are practical. The case study also shows that the synthesized techniques work well on subjects with multiple faults.

Conclusion: We conclude that the proposed framework has a significant and positive effect on improving the effectiveness of the corresponding base techniques.

Keywords: Fault localization; Key block chain; Noise reduction; Program debugging

1. This research is supported in part by a grant from the Natural Science Foundation of China (project no. 61003027), grants from the General Research Fund of the Research Grants Council of Hong Kong (project nos. 111410 and 717811), and a strategy research grant of City University of Hong Kong (project no. 7002673).
2. Department of Computer Science, Zhejiang University, Hangzhou, China.
3. State Key Laboratory of Computer Science, Institute of Software, Chinese Academy of Sciences, Beijing, China.
4. (Corresponding author.)
Department of Computer Science, City University of Hong Kong, Tat Chee Avenue, Hong Kong.
5. Department of Computer Science, The University of Hong Kong, Pokfulam, Hong Kong.


  Cumulative visitor count