首页> 中文学位 >基于约束求解的静态缺陷检测求精技术研究
【6h】

基于约束求解的静态缺陷检测求精技术研究

代理获取

目录

声明

致谢

摘要

1 绪论

1.1 研究背景

1.2 国内外研究现状

1.3 研究内容

1.4 组织结构

1.5 本章小结

2 静态缺陷检测相关技术研究

2.1 静态分析技术

2.2 数据流分析基础

2.3 DTS静态缺陷检测模型

2.4 约束求解技术

2.4.1 约束求解概述

2.4.2 约束问题

2.4.3 约束求解器Choco

2.5 本章小结

3 静态缺陷检测求精方法

3.1 动机示例

3.2 动态执行结合回归分析的区间分析求精

3.2.1 动态执行

3.2.2 回归分析

3.2.3 回归分析算法

3.2.4 实例分析

3.3 基于约束求解的误报消除

3.3.1 误报消除算法

3.3.2 搜索约束相关语句

3.3.3 提取约束表达式

3.3.4 约束适配

3.3.5 约束求解

3.3.6 实例分析

3.4 本章小结

4 实验结果与分析

4.1 实验环境与说明

4.2 实验结果

4.2.1 基于约束求解的误报消除的实验验证

4.2.2 动态执行结合回归分析的区间分析求精的实验验证

4.3 实验分析

4.4 局限性分析

4.5 本章小结

5 结论

5.1 工作总结

5.2 展望

参考文献

作者简历及攻读硕士学位期间取得的研究成果

学位论文数据集

展开▼

摘要

近年来,计算机软件的应用已经渗入到了国防、航天、交通和医疗等各个关键领域,因此提高软件的质量已成为一项十分紧迫的任务。软件测试是保证软件质量的一种重要手段。相比于动态测试,静态缺陷检测是在不运行被测程序的前提下发现程序中的缺陷,可以应用于软件开发周期的早期。因此,如何提高静态缺陷检测的精度,以减少人工确认真正缺陷所耗费的人力和时间,提高静态缺陷检测工具的实用性,成为了该领域的研究热点。
  本文以基于约束求解的静态缺陷检测求精技术为核心研究内容,旨在探索如何提高静态缺陷检测的精度。在前期DTS(缺陷检测系统)分析结果的基础上,本文提出了一种基于约束求解的误报消除方法,对其检测结果进一步求精:一旦静态缺陷检测报告了一个潜在缺陷,就在缺陷路径上提取路径约束,并将提取的所有路径约束以及潜在缺陷点的数据流值作为约束求解器的输入,通过约束求解技术来判断该潜在缺陷的可满足性,若约束求解的结果为无解,则表明该潜在缺陷是个误报。另外,静态分析对诸如循环和函数调用等与程序具体执行状态相关的程序语义的分析较为保守,因此为了获得精确的数据流值,本文提出一种动态执行结合回归分析的求精方法:通过动态执行获得精确的程序运行时信息,同时引入回归分析技术,通过汇总多次动态执行的结果,对待分析变量进行符号替换,并根据不同需求得到较为精确的变量取值区间或生成符号化函数摘要,以此提高静态缺陷检测中变量区间分析的精度,从而进一步提高上述约束求解的精度,使得约束求解的结果更有意义。
  本文通过对若干个开源工程进行静态缺陷检测来验证本文方法的有效性。实验结果表明,本文提出的方法能够减少误报,提高静态缺陷检测的精度。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号