Locating bugs in a program is one of the most time consuming tasks of the software development process. This project is developing techniques to assist this process. We have created an approach and a tool called Tarantula that partially automates the process of locating bugs in a program. Tarantula also employs the use of novel software visualizations to make its analyses more understandable. The basic intuition of the approach is that program statements that are primarily executed by failed test cases are more suspicious of being faulty than those statements that are primarily executed by passed test cases. Using this idea, the most suspicious statements are identified and illuminated for the programmer looking for the bug. The technique can aid in the search for the bug from the identified statements.
National Science Foundation, CCF 0541049,
Automatic Fault Localization Using Statistics and , Visualization: An Empirical Research Program.