Research of Multiple Fault Localization Based on Cluster Analysis of Program Failures
Xiaoan Bao, Yusen Wang, Junyan Qian, Zijian Xiong, Na Zhang, Chenghai Yu · International Journal of Signal Processing Image Processing and Pattern Recognition · 2017
Locating faults is one of the most expensive and time-consuming components of debugging process. Fault localization technique based on mining associations analyzes the dependencies between application code and narrow down the location of faults.However, the efficiency of this technology will decrease with the increase of the number of faults.This paper presents a new fault location technique based on cluster analysis of program failures.Failures are categorized into different failure classes using cluster analysis method, and the failures are caused by one and only one fault in each class.We also study characteristics of a set of statements covered by failed executions, which are due to the same fault.According to failure classes' difference, we describe a target association algorithm and a corresponding way to examine code.Empirical studies based on SIR benchmarks indicate that, for the subject we studied, our technique has higher efficiency than the popular Tarantula, Ochiai and Jaccard techniques in multiple-fault programs, and can be implemented in effective space and time complexity.