[发明专利]基于距离度量和统计分析结合的软件故障定位系统及方法有效
申请号: | 201310132421.5 | 申请日: | 2013-04-16 |
公开(公告)号: | CN103268280A | 公开(公告)日: | 2013-08-28 |
发明(设计)人: | 段振华;平永侠;田聪;张南;王小兵;罗玲 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京科亿知识产权代理事务所(普通合伙) 11350 | 代理人: | 汤东凤 |
地址: | 710071 陕西省*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 距离 度量 统计分析 结合 软件 故障 定位 系统 方法 | ||
1.基于距离度量和统计计算结合的软件故障定位系统及方法,包括目标软件,其特征在于,所述系统包括:
总体输入模块,所述输入模块是用于向所述系统的总体输入,包括当前失效路径、测试路径集以及程序源代码。其中所述当前失效路径通过实时地记录所述目标软件的执行路径获得,所述测试路径通过实时记录所述目标软件的执行路径和执行结果获得,所述程序源代码用于获取所述目标软件的静态控制流信息,提高定位准确率。
基于距离度量的故障定位模块,所述模块用于计算所述目标软件语句的可疑度和非可疑度,其中包括利用所述目标软件的源代码绘制DD图,然后通过DD图中的控制流关系计算系统无约束边,再利用无约束边的替换策略为所述当前失效路径生成相似路径集,其次采用路径对比的方法,对比挑选的成功路径集和失效路径集中的路径,并找出两条路径的分支点,最后计算得出可疑度值和非可疑度值。
基于统计分析的故障定位模块,所述模块用于计算所述目标软件语句的可疑度,其中包括将所述总体输入中的当前失效路径和测试路径集混合构成历史路径集,然后利用统计的方法,计算出历史路径集中每一条语句在失效路径集中出现的频率,最后计算得出可疑度值。
定位结果展示模块,所述模块用于展示所述目标软件的故障定位结果图,其中包括了综合所述基于距离度量的故障定位模块和所述基于统计分析的故障定位模块所述获得的可疑度值和非可疑度值,通过图形化的方式将故障定位结果、DD图以及生成的所述当前失效路径的相似路径集进行展示。
2.根据权利要求1所述的软件故障定位系统,其特征在于,所述当前失效路径和所述测试路径集对于任意语言编写的程序源代码都能唯一地记录其实际执行过程,所述测试路径集中的每一条测试路径包括路径和执行结果,其中所述路径是指当前本次运行的实际路径,其格式与所述当前失效路径的格式相同;所述执行结果是指当次执行是否成功,即当前运行的结果与预期结果是否一致。
3.根据权利要求1所述的软件故障定位系统,其特征在于,通过替换无约束边为当前失效路径生成相似路径集的过程以当前失效路径中的无约束边为基准,用户可以选择同时替换的无约束边的条数。
4.根据权利要求1所述的软件故障定位系统,其特征在于,所述定位结果展示可将可疑度值和非可疑度值用不同颜色条标识对应的代码。
5.一种根据权利要求1的软件故障定位方法,其特征在于,包括以下步骤:
(1)利用基于距离度量的故障定位模块计算目标软件语句的可疑度和非可疑度:
a.根据所述总体输入模块中程序源代码为所述目标软件绘制系统的DD图;
b.根据所获得的DD图计算系统的无约束边,所述无约束边通过多次遍历并约减DD图所计算得出;
c.根据计算出的系统无约束边和系统的DD图为当前失效路径生成相似路径集;
d.在测试路径集中查找相似路径的执行结果组成相似测试路径集,若测试路径集中不存在相似路径,则通过替代策略选择其他的路径代替相似路径;
e.将所述相似测试路径集按执行结果分为成功路径集和失效路径集;
f.分别针对两种路径集中的每两条路径,即成功路径集和失效路径集中的两条路径、成功路径集中两条不同的路径以及失效路径集中两条不同的路径进行路径对比,找出两条路径出现不同是的分支语句;
g.根据公式计算语句的可疑度和非可疑度。
(2)利用基于统计分析的故障定位方法计算语句的可疑度:
a.提取所述目标软件每一条原始测试路径中的文件位置和行号等相关信息;
b.计算成功路径与失效路径的总数,以及一条语句在成功路径集和失效路径集中出现的频率;
c.计算语句的可疑度。
(3)结合所述(1)和(2)故障定位的结果:
a.将(1)中步骤a计算得到的系统的DD图用图形显示,同时支持边和结点的拖拽及缩放效果;
b.将(1)中步骤c计算的当前失效路径的相似路径集展示出来,其中包括整体替换后的结果以及中间替换的结果;
c.将(1)和(2)中计算的语句的可疑度和非可疑度根据权值综合起来,然后用不同颜色条覆盖在源代码上显示,且具有提示效果,显示实际的可疑度值或非可疑度值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310132421.5/1.html,转载请声明来源钻瓜专利网。
- 上一篇:反向调试方法、反向调试系统、主机及单板
- 下一篇:RAID-5的数据恢复方法