期刊文献+

基于二次定位策略的软件故障定位 被引量:13

Software Fault Location Based on Double-Times-Locating Strategy
下载PDF
导出
摘要 故障定位是软件调试过程中耗力和耗时的活动之一,尤其是对规模大和复杂性高的软件.目前的一些定位技术可分为两类:基于组件和基于语句.前者太粗,不能准确地定位到地方;后者太细,运算复杂度过大.提出一种新技术,称为二次定位策略(double-times-locating,简称DTL),来定位故障:第1次定位,从程序中抽象出函数调用图,再从函数调用轨迹中建立程序谱,最后用基于模型的诊断(model-based diagnosis,简称MBD)对可能含有故障的函数进行排序;第2次定位,利用DStar定位函数中故障的代码行.实验结果表明,该技术比目前基于统计的方法更有效. Fault localization is a physical and time-consuming activity in the debugging process, especially for the software with large size and high complexity. Existing techniques to locate faults can be classified into two categories: component based and statement based. The former is too coarse to locate the accurate place, while the latter is too fine to contain the computation complexity. This paper proposes a new technique, called double-times-locating (DTL) strategy, to locate software faults. For the first time locating, it abstracts function call graph from the code, builds program spectrum to abstract function traces, and then uses model-based diagnosis (MBD) to sort with probability possible functions candidates that have faults. For the second time locating, it uses DStar to locate faults in the functions. Experimental results show that the proposed technique is more effective than the existing statistics based methods.
出处 《软件学报》 EI CSCD 北大核心 2016年第8期1993-2007,共15页 Journal of Software
基金 国家自然科学基金(61210004 61170015)~~
关键词 故障定位 函数调用图 程序频谱 模型诊断 fault localization function call graph program spectrum model diagnosis
  • 相关文献

参考文献4

二级参考文献131

  • 1Jeffrey D, Gupta N, Gupta R. Fault localization using value replacement//Proceedings of the 2008 International Symposium on Software Testing and Analysis (ISSTA ' 08). Seattle, WA, USA, 2008:167-178.
  • 2Zhang X, Gupta N, Gupta R. Locating faults through automated predicate switching//Proceedings of the 28th International Conference on Software Engineering (ICSE ' 06 ). Shanghai, China, 2006:272 -281.
  • 3Reps T, Ball T, Das M, Larus J. The use of program profiling for software maintenance with applications to the year 2000 problem//Proceedings of the 6th European Software Engineering Conference Held Jointly with the 5th ACM SIG- SOFT International Symposium on Foundations of Software Engineering(ESEC'97/FSE-5). Zurich, Switzerland, 1997.- 432 449.
  • 4Harrold M J, Rothermel G, Sayre K, Wu R, Yi L. An empirical investigation of the relationship between spectra differences and regression faults. Software Testing Verification and Reliability, 2000, 10(3): 171-194.
  • 5Jones J A, Harrold M J, Stasko J. Visualization of test information to assist fault localization//Proceedings of the 24th International Conference on Software Engineering (ICSE' 02). Orlando, Florida, 2002: 467-477.
  • 6Wong E, Wei T, Qi Y, Zhao L. A Crosstab-based statistical method for effective fault localization//Proceedings of the 2008 International Conference on Software Testing, Verification, and Validation (ICST'08). Lillehammer, Norway, 2008:42-51.
  • 7Hao D, Zhang L, Pan Y, Mei H, Sun J. On similarity- awareness in testing-based {ault localization. Automated Software Engineering, 2008, 15(2):07-249.
  • 8Naish L, Lee H, Ramamohanarao K. A model for spectra- based software diagnosis. ACM Transactions on Software Engineering and Methodology, 2011, 20(3): to appear.
  • 9Liblit B, Naik M, Zheng A X, Aiken A, Jordan M I. Scalable statistical bug isolation//Proceedings of the 2005 ACM SIGPLAN Conference on Programming Language Design and Implementation(PLDI'05). 2005:15-26.
  • 10Liu C, Fei L, Yan X, Han J, Midkiff S P. Statistical debugging; A hypothesis testing-based approach. IEEE Transactions on Software Engineering, 2006, 32(10): 831-848.

共引文献64

同被引文献62

引证文献13

二级引证文献31

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

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