引用本文:文万志,李必信,孙小兵,刘翠翠.一种基于层次切片谱的软件错误定位技术.软件学报,2013,24(5):977-992
【打印本页】   【下载PDF全文】   查看/发表评论  【EndNote】   【RefMan】   【BibTex】
←前一篇|后一篇→ 过刊浏览    高级检索
本文已被:浏览 5898次   下载 6093 本文二维码信息
码上扫一扫!
分享到: 微信 更多
一种基于层次切片谱的软件错误定位技术
文万志, 李必信, 孙小兵, 刘翠翠
东南大学计算机科学与工程学院, 江苏 南京 211189
摘要:
传统的软件错误定位技术通常利用测试覆盖信息计算程序语句发生错误的可疑度进行软件错误定位,但是这种定位技术没有充分考虑程序本身固有的依赖信息,缺乏语句筛选,从而使错误定位的精度受限.提出了一种基于层次切片谱的错误定位技术,以提高面向对象程序中的错误定位效率.这种技术首先分析程序不同粒度层次元素(包、类、方法以及语句)之间的依赖信息,对可能发生错误的元素进行筛选,缩小错误查找范围;在此基础上,建立了层次切片谱模型,并定义了一种可疑度度量方法;最后根据该可疑度结果从大到小的顺序进行错误定位.通过实验验证了基于层次切片谱的错误定位技术的有效性,且比基于程序谱的Tarantula 技术、Union 技术、Intersection 技术效率更高.
关键词:  层次切片模型  层次切片谱  可疑度  错误定位  程序谱
DOI:10.3724/SP.J.1001.2013.04342
分类号:
基金项目:国家自然科学基金(60973149, 61202006); 高等学校博士学科点专项科研基金(20100092110022); 中国科学院计算机科学国家重点实验室开放基金(SYSKF1110)
Technique of Software Fault Localization Based on Hierarchical Slicing Spectrum
WEN Wan-Zhi, LI Bi-Xin, SUN Xiao-Bing, LIU Cui-Cui
School of Computer Science and Engineering, Southeast University, Nanjing 211189, China
Abstract:
A commonly-used software fault localization technique mainly utilizes testing coverage information to calculate the suspiciousness of each program statement to find the faulty statement. However, this technique does not fully take dependences of the program into account; thus, its capacity for precisely locating faults is limited. This paper proposes a more effective hierarchical slicing spectrum-based software fault localization (HSS-SFL) technique for object-oriented programs. HSS-SFL first analyzes the dependence among the elements at different granularity levels including package level, class level, method level and statement level, and deletes some elements which are unrelated to the failed testing outputs. Next, the technique builds the hierarchical slicing spectrum model for these hierarchical slices obtained from the previous step, and further defines a suspiciousness method for each slice element. Finally, the faulty statement is located according to the suspiciousness results. Experimental results on real application programs show that HSS-SFL is more effective to locate the fault than program spectrum-based Tarantula technique, Union technique and Intersection technique.
Key words:  hierarchical slicing model  hierarchical slicing spectrum  suspiciousness  fault localization  program spectrum