Title :
Using an RBF Neural Network to Locate Program Bugs
Author :
Wong, W. Eric ; Shi, Yan ; Qi, Yu ; Golden, Richard
Author_Institution :
Dept. of Comput. Sci., Univ. of Texas at Dallas, Dallas, TX
Abstract :
We propose an RBF (radial basis function) neural network-based fault localization method to help programmers locate bugs in a more effective way. An RBF neural network with a three-layer feed-forward structure is employed to learn the relationship between the statement coverage of a test case and its corresponding execution result. The trained network is then given as input a set of virtual test cases, each covering only a single statement. The output of the network for each test case is considered to be the suspiciousness of the corresponding statement; a statement with a higher suspiciousness has a higher likelihood of containing a bug. The set of statements ranked in descending order by their suspiciousness are then examined by programmers one by one until a bug is located. Three case studies on different programs (space, grep and make) were conducted with each faulty version having exactly one bug. An additional program gcc was also used to demonstrate the concept of extending the proposed method to programs with multiple bugs. Our experimental data suggest that an RBF neural network-based fault localization method is more effective in locating a program bug (by examining less code before the first faulty statement containing the bug is identified) than another popular method, Tarantula, which also uses the coverage and execution results to compute the suspiciousness of each statement.
Keywords :
program debugging; radial basis function networks; RBF neural network; Tarantula; fault localization method; program bugs; radial basis function; three-layer feed-forward structure; Artificial neural networks; Biological neural networks; Computer bugs; Computer networks; Feedforward neural networks; Feedforward systems; Neural networks; Neurons; Programming profession; Testing; EXAM score; RBF (radial basis function) neural network; failed test; fault localization; program debugging; successful test; suspiciousness of code;
Conference_Titel :
Software Reliability Engineering, 2008. ISSRE 2008. 19th International Symposium on
Conference_Location :
Seattle, WA
Print_ISBN :
978-0-7695-3405-3
Electronic_ISBN :
1071-9458
DOI :
10.1109/ISSRE.2008.15