摘要
缺陷定位是软件调试的重要阶段,依赖程序频谱信息实现软件缺陷定位,是当前比较行之有效的方法.基于频谱缺陷定位方法应用的前提是,程序频谱和执行结果之间存在的潜在关联.通过经验性分析两者之间的内在关联,借助于统计学的条件概率思想,构建了用以量化分析两者关系强弱的P模型,并基于此提出了基于条件概率的缺陷定位方法.以Siemens套件中的7个程序、Space程序和3个Unix工具程序为基准评测对象,与已有的15种经典缺陷定位方法进行了对比实验.实证研究结果表明,该方法总体上具有更好的缺陷定位效果.
Fault localization is an essential step of software debugging, and spectrum-based fault localization(SFL) is currently amongst the most effective methods. The fundamental premise underlying SFL is that there exists a potential relationship between program spectra and the corresponding execution results. To formally describe and accurately quantify this relation, this paper introduces the conception of conditional probability to construct a P model by using the statistical analysis of experimental data. In addition, based on the presented P model, a fault localization method is proposed to effectively locate the faulty statement of the program under test. Finally, taking seven programs contained in the Siemens suite, Space program and three real-life Unix utility programs as the benchmark, a detailed experiment is conducted to evaluate the effectiveness and efficiency of the proposed method. Compared with fifteen classic fault localization methods, the experimental results show that the presented approach is more promising.
作者
舒挺
黄明献
丁佐华
王磊
夏劲松
SHU Ting;HUANG Ming-Xian;DING Zuo-Hua;WANG Lei;XIA Jin-Song(School of Information Science and Technology, Zhejiang Sci-Tech University, Hangzhou 310018, China)
出处
《软件学报》
EI
CSCD
北大核心
2018年第6期1756-1769,共14页
Journal of Software
基金
国家自然科学基金(61101111
61572441)
浙江省自然科学基金(LY17F020033)~~
关键词
缺陷定位
程序频谱
条件概率
软件调试
测试例
fault localization
program spectrum
conditional probability
software debugging
test case