[发明专利]一种基于频谱定位和可视化定位软件缺陷的方法有效
| 申请号: | 201610283644.5 | 申请日: | 2016-04-27 |
| 公开(公告)号: | CN106445801B | 公开(公告)日: | 2019-10-18 |
| 发明(设计)人: | 陈振宇;刘子聪;宋硕;谢晓园;卢依宁 | 申请(专利权)人: | 南京慕测信息科技有限公司 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 210093 江苏省南京*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | 一种基于频谱定位及可视化的用于指导编程人员软件缺陷的方法,旨在为开发人员提供更好的缺陷定位与修复指导,同时弥补由于个人经验等主观因素而可能引发的不精准甚至错误。利用静态分析获得程序的逻辑上的控制流图,结合动态执行所得到的测试用例对于程序的覆盖率以及本身的执行结果,应用于频谱定位,计算得到程序单元包含缺陷的可能性,通过排序、离散化与分组区分可疑程度,最后在开发工具上将可疑程度以可视化的方式实现。 | ||
| 搜索关键词: | 一种 基于 频谱 定位 可视化 软件 缺陷 方法 | ||
【主权项】:
1.一种基于频谱定位及可视化的用于指导编程人员定位并修复软件缺陷的方法,其特征包括以下步骤:1)利用静态分析技术及工具对含缺陷软件进行分析,获取程序的静态结构,主要包括含有程序语句逻辑流向的控制流图,含有程序数据定义和使用的数据流图等,对程序进行静态建模,进而利用静态信息进行分析;2)对于包含缺陷程序进行动态分析:一方面利用基于Java语言的代码分析优化工具对程序进行插桩,向其中插入关键性支持性的服务代码,用于收集程序动态执行信息并加以分析;执行插入的程序代码可以收集执行单元测试用例所得到的对于程序代码的覆盖情况,即对于程序本身进行测试的完备度情况;另一方面对于程序单元进行测试所得到的数据信息也同样被记录下来,两者相结合构成程序的频谱信息,即最终用于可视化并指导开发人员进行缺陷定位与修复的信息;3)根据1)2)两个步骤与利用频谱公式对收集到的程序静态结构信息和程序的动态频谱信息进行分析计算;频谱公式经过计算后会得到程序单元的可疑值,代表了程序单元包含缺陷的可能性,可疑值越高,程序单元越有可能是包含缺陷的;4)利用3)中计算得到的可疑值进行排序与分组,筛选出可疑程度比较高的几组程序单元,按照一定的间隔区分可疑度,并且以红色底色标注可能包含缺陷的程序单元,程序单元的可疑程度越高,其被标注的红色的饱和度就越高,颜色就越深;5)除了对缺陷单元进行计算和可视化,该方法还包含了对于开发人员在进行缺陷定位与修复时候的动作的记录,记录的信息也称为监控信息,为研究提供资料,也可以根据大部分开发人员的习惯或常见错误对开发人员给出一定的指导。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京慕测信息科技有限公司,未经南京慕测信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610283644.5/,转载请声明来源钻瓜专利网。





