-
题名基于马尔可夫模型的软件错误定位方法
被引量:9
- 1
-
-
作者
张云乾
郑征
季晓慧
张文博
张震宇
-
机构
中国科学院软件研究所计算机科学理论国家重点实验室
中国地质大学计算机科学与技术系
北京航空航天大学自动化科学与电气工程学院
中国科学院软件研究所软件工程技术研究开发中心
-
出处
《计算机学报》
EI
CSCD
北大核心
2013年第2期445-456,共12页
-
基金
国家自然科学基金项目"持续集成中的回归测试和错误定位"(61003027)资助~~
-
文摘
软件调试是软件开发的重要环节.统计错误定位技术通过分析程序执行频谱来估计程序中错误所在的位置.针对不同类型的程序频谱,此类技术建立不同的启发式模型描述程序行为.已有研究表明,其准确度同目标错误和程序类型相关,且不存在某种普遍有效的技术.文中从单元测试的特性出发,探讨预测错误类型的可行性,并采用马尔可夫过程对错误类型进行预测,从错误定位技术备选集中选择适合的技术来实施.实验表明文中方法能够更快地定位程序错误.
-
关键词
软件错误定位
软件错误类型
错误类型预测
马尔可夫模型
-
Keywords
software fault localization
fault classification
fault class prediction
Markov model
-
分类号
TP311
[自动化与计算机技术—计算机软件与理论]
-
-
题名基于插桩技术的程序谱构建方法
被引量:4
- 2
-
-
作者
王克朝
李兵
王甜甜
陈京浩
-
机构
哈尔滨学院软件学院
哈尔滨工业大学计算机科学与技术学院
重庆市公安局网络安全保卫总队
-
出处
《科学技术与工程》
北大核心
2014年第18期89-93,共5页
-
基金
国家自然科学基金(61202092
61173021)
+5 种基金
高等学校博士学科点专项科研基金(20112302120052)
中央高校基本科研业务费专项资金(HIT.NSRIF.201178)
哈尔滨科技创新人才专项资金(RC2013QN010001)
黑龙江省高教学会"十二五"重点规划课题项目(HGJXHB1110957)
黑龙江省普通高校青年学术骨干项目(12546037)
黑龙江省大学生创新创业项目资助
-
文摘
为了满足软件测试、软件调试和程序优化等领域对程序谱的需求,提出了基于插桩技术的程序谱构建模型,主要包括插桩预处理、双缓冲处理、有穷自动机处理识别插桩点、植入探针生成插桩代码、编译连接并执行插桩程序以收集执行轨迹构建程序谱。采用双缓冲处理机制,可有效提高源代码处理效率,有穷自动机能够准确识别插桩点。在软件错误定位中的应用结果表明基于插桩技术构建的程序谱可为准确、高效的程序理解和分析提供方便。
-
关键词
程序谱
源代码插桩
程序分析
覆盖测试
软件错误定位
-
Keywords
program spectrum source code instrumentation program analysis coverage testing software fault localization
-
分类号
TP311.11
[自动化与计算机技术—计算机软件与理论]
-
-
题名面向软件错误定位与理解的测试执行离散特征筛选
被引量:3
- 3
-
-
作者
刘梦冷
杨小双
赵磊
王丽娜
-
机构
武汉大学计算机学院
武汉大学空天信息安全与可信计算教育部重点实验室
-
出处
《计算机科学》
CSCD
北大核心
2016年第3期179-187,共9页
-
基金
国家自然科学基金(61303213
61373169)
+1 种基金
国家高技术研究发展计划(863计划)(2015AA016004)
信息保障技术重点实验室开放基金(KJ-13-104)资助
-
文摘
软件错误定位与错误理解是软件调试过程中的重要步骤,然而调试人员利用基于覆盖分析的软件错误定位获取的可疑度,从高到低静态分析每条程序语句的检查方式,与实际软件调试过程并不相符。为了能够筛选更有助于理解错误根源的测试执行,尤其是致使程序失效的失效执行,帮助调试人员进行动态差异化分析,针对失效执行提出基于高可疑度覆盖率、揭示错误潜力和覆盖语句可疑度离散特征的3种优先级策略,针对成功执行提出加权余弦相似度匹配策略。通过将3种失效执行优先级策略与随机选择在常用错误定位技术中进行实验对比,验证了基于覆盖语句可疑度离散特征的失效执行筛选策略能够对筛选前后的错误理解工作量变化产生更强的积极影响和更弱的消极影响,并能够在相同工作量下理解更多的错误,进而更有助于将错误定位结果应用于错误根源的理解。
-
关键词
软件错误定位
错误理解
覆盖分析
测试执行优先级
离散特征
-
Keywords
Software fault localization
Fault understanding
Coverage analysis
Test execution prioritization
Discrete characteristic
-
分类号
TP311
[自动化与计算机技术—计算机软件与理论]
-
-
题名结合Craig插值分析的软件错误诊断方法
被引量:2
- 4
-
-
作者
徐勇
毋国庆
袁梦霆
-
机构
武汉大学计算机学院
广东肇庆学院数学与统计学院
-
出处
《电子学报》
EI
CAS
CSCD
北大核心
2016年第10期2514-2521,共8页
-
基金
国家自然科学基金(No.91118003
No.61003071)
+2 种基金
深圳战略性新兴产业发展专项资金(No.JCYJ20120616135936123)
中央高校基本科研业务费专项资金(No.3101046
No.201121102020006)
-
文摘
基于模型诊断(MBD)的理论应用到软件错误定位中取得了一定的效果.但是经典MBD理论基于元件间独立地发生故障这一假设,导致软件错误定位的结果中存在假阳性的诊断.论文对现有基于MBD的软件错误定位方法进行了改进,提出了冲突中元件的冗余分析方法.该方法既包括了基于Craig插值的元件冗余分析机制,同时利用条件语句取值的二元性(真或假)的特点,对冲突中的条件语句元件进行软件错误的无相关分析.实验结果表明:冲突中的元件冗余分析方法可以有效地减少诊断的假阳性率,将诊断结果数减少了48.4%,碰集树生成的结点数减少了47.6%.
-
关键词
基于模型诊断
软件错误定位
冗余分析
Craig插值
-
Keywords
model-based diagnosis(MBD)
fault localization
redundancy analysis
Craig interpolant
-
分类号
TP311
[自动化与计算机技术—计算机软件与理论]
-
-
题名基于分块切片的软件错误定位技术
被引量:1
- 5
-
-
作者
文万志
陈建平
陈翔
鞠小林
-
机构
南通大学计算机科学与技术学院
-
出处
《计算机工程与设计》
北大核心
2015年第12期3258-3263,3301,共7页
-
基金
国家自然科学基金项目(61202006
61402396)
+1 种基金
南通市应用研究计划基金项目(BK2014056
BK2014055)
-
文摘
鉴于基于谱的软件错误定位技术缺乏依赖分析及存在过多不可区分的语句问题,给出一种基于分块切片的软件错误定位技术BSlicing-SFL(block slicing based software fault localization)的实现方法。基于不可区分块间数据依赖和控制依赖构建系统依赖图并生成分块切片,在此基础之上,统计计算切片内元素可疑度值进行错误定位。通过3个实际应用程序验证了分块切片的约减度及BSlicing-SFL技术的有效性。
-
关键词
程序切片
软件错误定位
程序频谱
系统依赖图
分块切片
-
Keywords
program slicing
software fault localization
program spectrum
system dependence graph
block slice
-
分类号
TP311
[自动化与计算机技术—计算机软件与理论]
-
-
题名融合语句复杂度的软件错误定位轻量级方法
- 6
-
-
作者
何海江
-
机构
长沙学院计算机工程与应用数学学院
-
出处
《计算机工程与科学》
CSCD
北大核心
2022年第12期2187-2195,共9页
-
基金
湖南省科技计划(2015GK3071)。
-
文摘
在程序调试过程中,基于程序谱的软件错误定位(SBFL)技术能提供有效的帮助。为改善SBFL的性能,提出一种组合程序谱、代码行静态属性的软件错误定位排序学习方法,由线性排序支持向量机学习最优错误定位模型。代码行静态属性包括局部变量、类属性、逻辑运算符和方法调用等程序实体的个数。在使用C、C++和Java语言开发的22个实际故障项目上,采用跨工程的形式训练错误定位模型。实验结果表明,新方法比最优SBFL减少了37.1%的最坏策略EXAM和22.6%的平均策略EXAM。还比较了程序语句的3类轻量级特征:结构化类别、变量谱和静态属性。新方法的时间复杂度低,能实时地推荐可能出现故障的语句序列。
-
关键词
软件错误定位
程序谱
变量谱
程序静态属性
排序学习
跨工程
-
Keywords
software fault localization
program spectrum
variable spectrum
program static attribute
learning to rank
cross project
-
分类号
TP311
[自动化与计算机技术—计算机软件与理论]
-