C++代码缺陷检测系统的研究与设计

C++代码缺陷检测系统的研究与设计

论文摘要

随着信息化产业的高速发展,人们对软件系统安全性和可靠性的要求越来越高,软件测试面临着重大挑战。基于静态分析的自动化检测对提高软件质量有着极其重要的意义,它可以在软件开发的各个阶段对程序代码进行检测,有效的提高测试的质量和速度,大幅降低软件测试的成本。本文设计了一个基于XML中间承载模型的缺陷检测模型,该模型通过对程序源代码进行词法语法解析,提取程序代码中有用的状态属性信息,利用XML良好的扩展性和简洁的数据存储特性,将解析出的代码属性信息导入XML中间承载模型中。将安全编程规范中的缺陷规则用缺陷模式来描述,利用Xquery查询语言将缺陷模式转换成对应的Xquery缺陷匹配表达式,通过Xquery缺陷匹配表达式对中间承载模型进行安全检测,查找中间承载模型中与缺陷模式匹配的问题节点,最终,凭借缺陷重定位机制将缺陷精确定位到程序代码中。在此基础上,针对《MISRA C++2008》安全规则集进行了深入分析,设计了一个基于规则的缺陷自动检测系统。该系统能对C/C++语言编写的程序进行全面而准确的安全检测。经大量实际测试表明该系统能有效提高软件系统的安全性和可靠性,具有较高的使用价值。

论文目录

  • 摘要
  • Abstract
  • 1 绪论
  • 1.1 研究背景与意义
  • 1.2 研究内容
  • 1.3 论文组织结构
  • 2 软件测试技术
  • 2.1 概述
  • 2.2 软件测试的发展
  • 2.3 软件测试理论与技术
  • 2.4 静态测试技术
  • 2.5 静态检测工具
  • 2.6 本章小结
  • 3 系统的理论方法研究
  • 3.1 系统的设计流程
  • 3.2 C++匹配承载模型
  • 3.2.1 模型介绍
  • 3.2.2 结构信息模型
  • 3.2.3 状态信息模型
  • 3.3 缺陷检测
  • 3.3.1 软件缺陷定义
  • 3.3.2 缺陷模式描述
  • 3.3.3 形式化表示
  • 3.4 缺陷状态库
  • 3.4.1 XQUERY
  • 3.4.2 缺陷状态库的设计
  • 3.5 本章小结
  • 4 代码审核系统的实现
  • 4.1 系统总体结构设计
  • 4.2 系统前端解析模块
  • 4.2.1 预处理模块
  • 4.2.2 源代码解析模块
  • 4.3 系统后端检测模块
  • 4.3.1 规则匹配模块
  • 4.3.2 多文件解析
  • 4.3.3 检测驱动模块
  • 4.3.4 缺陷定位
  • 4.4 本章小结
  • 5 系统验证
  • 5.1 系统执行验证
  • 5.1.1 缺陷报告
  • 5.1.2 系统运行分析
  • 5.2 系统执行验证
  • 5.2.1 测试用例
  • 5.2.2 实验数据与结果分析
  • 5.3 本章小结
  • 结论
  • 参考文献
  • 致谢
  • 相关论文文献

    • [1].石英腕表表盘缺陷检测机器视觉整机解决方案[J]. 电子技术与软件工程 2020(02)
    • [2].金属增材制造缺陷检测技术[J]. 哈尔滨工业大学学报 2020(05)
    • [3].基于深度学习的车辆零件缺陷检测方法[J]. 辽宁科技大学学报 2020(01)
    • [4].基于探地雷达的工程竹缺陷检测研究[J]. 施工技术 2020(15)
    • [5].基于钻入阻抗法的胶合竹缺陷检测研究[J]. 施工技术 2020(15)
    • [6].图像识别技术在食品包装缺陷检测中的应用[J]. 食品与机械 2020(08)
    • [7].基于机器视觉的印刷品缺陷检测方法综述[J]. 上海包装 2020(10)
    • [8].基于数据挖掘技术的牙刷包装缺陷检测方法研究[J]. 佳木斯大学学报(自然科学版) 2020(03)
    • [9].服务器外观缺陷检测系统[J]. 电子世界 2020(17)
    • [10].复杂受力状态下船体加筋板结构缺陷检测[J]. 舰船科学技术 2020(18)
    • [11].用于产品高速运动下缺陷检测的演示装置[J]. 安徽电子信息职业技术学院学报 2020(05)
    • [12].基于深度学习的点胶缺陷检测[J]. 电子技术与软件工程 2019(13)
    • [13].基于涡流检测的电力线夹缺陷检测与分类方法[J]. 中国科技论文 2017(04)
    • [14].基于敲击信号的刹车片内部缺陷检测[J]. 组合机床与自动化加工技术 2017(10)
    • [15].有关阀门缺陷检测方法的分析[J]. 科技创业家 2013(22)
    • [16].公路桥梁内外缺陷与几何力学特性检测研究[J]. 山东农业工程学院学报 2020(06)
    • [17].基于多视角卡牌模型的需求缺陷检测[J]. 计算机科学 2018(10)
    • [18].机器视觉在TFT-LCD暗画面缺陷检测中的应用[J]. 光学仪器 2017(03)
    • [19].超声相控阵缺陷检测聚焦技术仿真分析[J]. 测控技术 2016(07)
    • [20].机器视觉在木材缺陷检测领域应用研究进展[J]. 世界林业研究 2020(03)
    • [21].面向输电线路的锈蚀缺陷检测[J]. 电工技术 2020(17)
    • [22].一种铝塑泡罩药品包装缺陷检测方法[J]. 包装工程 2019(01)
    • [23].基于深度学习的工业零件缺陷检测算法研究[J]. 信息与电脑(理论版) 2019(18)
    • [24].多电极传感器复合材料缺陷检测系统设计(英文)[J]. 机床与液压 2017(24)
    • [25].基于视觉的绝缘子定位与自爆缺陷检测[J]. 电子测量与仪器学报 2017(06)
    • [26].应用深度卷积的涂布缺陷检测方法[J]. 传感器与微系统 2020(03)
    • [27].基于机器视觉的胶囊缺陷检测装置设计[J]. 贵州大学学报(自然科学版) 2020(03)
    • [28].基于热成像的埋地热力管道缺陷检测试验研究[J]. 仪器仪表学报 2020(06)
    • [29].面向二进制程序的开源软件缺陷检测方法[J]. 华北电力大学学报(自然科学版) 2019(04)
    • [30].基于机器视觉的食品包装缺陷检测研究[J]. 食品研究与开发 2016(24)

    标签:;  ;  ;  

    C++代码缺陷检测系统的研究与设计
    下载Doc文档

    猜你喜欢