An Approach for Fault Localization Based on Program Slicing and Bayesian

The key issue of reducing software cost and improving software reliability is locating defective codes precisely and efficiently. In this paper, we propose a fault localization method which combines program slicing and Bayesian method. First, we perform dynamic program slicing according to the slicing criteria. Then, we calculate the posterior probability according to Bayesian Theory. Finally, we take the posterior probability as the suspicion degree of the statement and rank the statements in the descending order based on suspicion degree. We apply our approach to six open-source programs. The results of the experiments show that the method we propose can improve the precision of fault localization to some extent.

[1]  Feng Yin,et al.  Software Fault Localization Based on Testing Requirement and Program Slice , 2007, 2007 International Conference on Networking, Architecture, and Storage (NAS 2007).

[2]  A.J.C. van Gemund,et al.  On the Accuracy of Spectrum-based Fault Localization , 2007, Testing: Academic and Industrial Conference Practice and Research Techniques - MUTATION (TAICPART-MUTATION 2007).

[3]  Mary Jean Harrold,et al.  An empirical study of the effects of test-suite reduction on fault localization , 2008, 2008 ACM/IEEE 30th International Conference on Software Engineering.

[4]  Janusz W. Laski,et al.  Dynamic Program Slicing , 1988, Inf. Process. Lett..

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

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

[7]  Eric A. Brewer,et al.  Pinpoint: problem determination in large, dynamic Internet services , 2002, Proceedings International Conference on Dependable Systems and Networks.

[8]  Yu Qi,et al.  An execution slice and inter-block data dependency-based approach for fault localization , 2004, 11th Asia-Pacific Software Engineering Conference.

[9]  Wei Li,et al.  Fault Localization for Null Pointer Exception Based on Stack Trace and Program Slicing , 2012, 2012 12th International Conference on Quality Software.

[10]  Liao Jian Heuristic Fault Localization Algorithm Based on Bayesian Suspected Degree , 2010 .

[11]  Franz Wotawa,et al.  Spectrum Enhanced Dynamic Slicing for better Fault Localization , 2012, ECAI.

[12]  Frank Tip,et al.  Fault Localization for Dynamic Web Applications , 2012, IEEE Transactions on Software Engineering.

[13]  Mark Weiser,et al.  Programmers use slices when debugging , 1982, CACM.

[14]  W. Eric Wong,et al.  Software Fault Localization Using DStar (D*) , 2012, 2012 IEEE Sixth International Conference on Software Security and Reliability.

[15]  Jim Gray,et al.  A census of Tandem system availability between 1985 and 1990 , 1990 .

[16]  John T. Stasko,et al.  Visualization of test information to assist fault localization , 2002, ICSE '02.

[17]  Marcelo d'Amorim,et al.  Fault-localization using dynamic slicing and change impact analysis , 2011, 2011 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011).

[18]  Raúl A. Santelices,et al.  Lightweight fault-localization using multiple coverage types , 2009, 2009 IEEE 31st International Conference on Software Engineering.

[19]  Martin R. Woodward,et al.  The Efficiency of Critical Slicing in Fault Localization , 2005, Software Quality Journal.

[20]  T. H. Tse,et al.  Fault Localization Based Only on Failed Runs , 2012, Computer.