On effective fault localization in software debugging

On effective fault localization in software debugging(2008)

引用 23|浏览8
暂无评分
摘要
Software debugging involves much human intervention in localizing and fixing faults in programs. It can be very complicated and time consuming to find faults using an ad-hoc approach or based only on programmers’ intuitive guesswork. Thus, how to effectively find bugs becomes critically important in reducing the cost of software debugging. To this end, we propose three novel fault localization methods to help programmers find bugs in a more effective way. These methods follow a generic fault localization strategy and compute the suspiciousness of each statement using the coverage information with respect to each test case and test result (success and failure). Among these, the crosstab-based statistical method builds a crosstab table for each statement and computes a statistic to determine its suspiciousness value; the cosine similarity-based method computes the suspiciousness of each statement according to the similarity between its coverage vector and the execution result vector; and the heuristic-based method computes the suspiciousness of each statement using the coverage information in failed tests and successful tests. In the output of each fault localization method, a statement with a higher suspiciousness value has a higher likelihood of containing a bug. The set of statements ranked in descending order by their suspiciousness values are then examined by programmers one by one until a bug is located. Three case studies on different programs (the Siemens suite, the Grep program and the Make program) were conducted with each faulty version having exactly one bug. Our experimental data suggest that our proposed fault localization methods are more effective in locating a program bug (by examining less code before the first fault 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. Also, the real applications in case studies demonstrate the practicality of the proposed methods.
更多
查看译文
关键词
crosstab-based statistical method,fault statement,generic fault localization strategy,higher suspiciousness value,coverage information,suspiciousness value,effective fault localization,case study,fault localization method,cosine similarity-based method,software debugging
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要