期刊文献+

一种基于差异分散化的错误定位方法

A Difference Dispersion Approach to Fault Localization
下载PDF
导出
摘要 错误定位技术是当前的研究热点.在各种错误定位方法中,基于最接近执行比较的方法(NN方法)[1]从成功测试执行中,选择与已发现失败执行最接近的一个,和失败执行进行比较,从而定位错误.NN方法是一种非常重要的方法,然而,实验中却发现,对于一些程序,选择最接近的成功执行与失败执行进行比较,并不能取得好的错误定位效果.为探明原因,文中首先对基于成功-失败执行比较的错误定位模型进行了研究,指出了NN方法存在上述问题的根本原因是在选择成功执行时只考虑了其与失败执行的差异数量,而忽略了差异与错误的距离这一因素.据此,提出了一种基于差异分散化的错误定位方法,其主要思想是在适当控制差异数量的同时,选择与失败执行差异最分散的成功执行,来进行错误定位.利用分散化使得部分差异能够接近错误.实验表明,该方法错误定位效果优于NN方法,性能更佳. Fault localization is a very active research area. In all fault localization methods, the Nearest Neighbor based (NN) method selects a successful run that is closest to the failed run to compare and locate the bugs. NN method is very important and is widely used. However, we found that its fault localization effects sometimes significantly degrade even when a nearest successful run is selected. To get the reason, this paper firstly studies the basic model of the execution comparison based fault localization approaches. With the model, we found that a primary cause of NN method's degradation is that it only considers the number of differences between successful runs and failed runs while ignores the distances from the difference points to the bugs. Based on the above finding, we presented a new fault localization method based on a difference dispersion technique. Its key idea is to choose successful runs with dispersed difference points to the failed run to compare and locate the bugs. The dispersion of differences can make some difference points close to the bug and therefore reduce bug localization efforts. We conducted an experimental study on several widely used benchmark programs. The results indicate that our method is both effective and efficient.
出处 《计算机学报》 EI CSCD 北大核心 2015年第9期1880-1892,共13页 Chinese Journal of Computers
基金 国家自然科学基金(60903026) 南京航空航天大学基本科研业务费(NS2013088 NZ2013306)资助~~
关键词 错误定位 定位模型 分散化 覆盖度 软件测试 fault localization localization model disperse coverage software test
  • 相关文献

参考文献24

  • 1Renieris M, Reiss S. Fault localization with nearest neighbor queries//Proceedings of the International Conference on Automated Software Engineering. Montreal, Canada, 2003: 30-39.
  • 2CollofelloJ S, Woodfield S N. Evaluating the effectiveness of reliability assurance techniques.Journal of Systems and Software, 1989, 9(3): 191-195.
  • 3Vessey I. Expertise in debugging computer programs. InternationalJournal of Man-Machine Studies, 1985, 23(5): 459-494.
  • 4XU Baowen , QianJu , Zhang Xiaofang, et al. A brief survey of program slicing. ACM SIGSOFT Software Engineering Notes, 2005, 30(2): 10-45.
  • 5Mayera W, Stumptner M. Model-based debugging-State of the art and future challenges. Electronic Notes in Theoretical Computer Science, 2007, 174(4): 61-82.
  • 6JonesJ A, Harrold MJ, StaskoJ T. Visualization of test information to assist fault localization//Proceedings of the 24th International Conference on Software Engineering. Orlando, USA, 2002: 467-477.
  • 7Wong W E, Debroy V, Choi B. A family of code coveragebased heuristics for effective fault localization.Journal of Systems and Software, 2010, 83(2): 188-208.
  • 8Naish I., Lee HJ, Ramamohanarao K. A model for spectrabased software diagnosis. ACM Transactions on Software Engineering and Methodology, 2011, 20(3): 1-32.
  • 9Liblit B, Naik M, Zheng A, et al. Scalable statistical bug isolation//Proceedings of the ACM SIGPLAN International Conference on Programming Language Design and Implementation, Chicago, USA, 2005: 15-26.
  • 10Liu C. Fei I., Yan X, et al. Statistical debugging: A hypothesis testing-based approach. IEEE Transactions on Software Engineering, 2006, 32(10): 831-848.

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部