Effective Fault Localization using an Ensemble Classifier

Fault localization is possibly the most time consuming and tedious task in the process of program debugging. To alleviate this issue, we propose an ensemble of fault localization techniques. In our proposed ensemble technique, we have used DStar and Tarantula from the spectrum based fault localization family. Along with these two methods, BPNN and RBFNN are used from neural network based fault localization techniques. We also propose a novel CNN based fault localization method to strengthen the proposed ensemble classifier. We have proposed a new metric to measure the effectiveness of fault localization techniques more accurately. On an average, our proposed ensemble method is 16.76% to 38.47% more effective than the existing fault localization techniques.

[1]  M. L. Chaim,et al.  Spectrum-based Software Fault Localization: A Survey of Techniques, Advances, and Challenges , 2016, ArXiv.

[2]  W. Eric Wong,et al.  The DStar Method for Effective Software Fault Localization , 2014, IEEE Transactions on Reliability.

[3]  Steven P. Reiss,et al.  Fault localization with nearest neighbor queries , 2003, 18th IEEE International Conference on Automated Software Engineering, 2003. Proceedings..

[4]  Xiaofeng Xu,et al.  Ties within Fault Localization rankings: Exposing and Addressing the Problem , 2011, Int. J. Softw. Eng. Knowl. Eng..

[5]  Tarun Jaiswal,et al.  Fundamentals of Software Engineering , 2017, Lecture Notes in Computer Science.

[6]  Lee Naish,et al.  Spectral‐based fault localization using hyperbolic function , 2018, Softw. Pract. Exp..

[7]  Rui Abreu,et al.  A Survey on Software Fault Localization , 2016, IEEE Transactions on Software Engineering.

[8]  Yu Lei,et al.  A Combinatorial Testing-Based Approach to Fault Localization , 2020, IEEE Transactions on Software Engineering.

[9]  John Stasko,et al.  Visualization for Fault Localization , 2003 .

[10]  Michael D. Ernst,et al.  An Empirical Study of Fault Localization Families and Their Combinations , 2018, IEEE Transactions on Software Engineering.

[11]  Mary Jean Harrold,et al.  Empirical evaluation of the tarantula automatic fault-localization technique , 2005, ASE.

[12]  Joseph Robert Horgan,et al.  Dynamic program slicing , 1990, PLDI '90.

[13]  Yu Qi,et al.  Bp Neural Network-Based Effective Fault Localization , 2009, Int. J. Softw. Eng. Knowl. Eng..

[14]  Jimmy Ba,et al.  Adam: A Method for Stochastic Optimization , 2014, ICLR.

[15]  C. Tappert,et al.  A Survey of Binary Similarity and Distance Measures , 2010 .

[16]  David W. Binkley,et al.  Program slicing , 2008, 2008 Frontiers of Software Maintenance.

[17]  H. Cleve,et al.  Locating causes of program failures , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[18]  Bhavani M. Thuraisingham,et al.  Effective Software Fault Localization Using an RBF Neural Network , 2012, IEEE Transactions on Reliability.