基于代价敏感的源代码警告分类研究
中文摘要 | 第3-4页 |
英文摘要 | 第4-5页 |
1 绪论 | 第8-14页 |
1.1 研究背景及意义 | 第8-9页 |
1.2 国内外研究现状 | 第9-12页 |
1.2.1 国内研究现状分析 | 第9-10页 |
1.2.2 国外研究现状分析 | 第10-12页 |
1.3 主要研究内容 | 第12-13页 |
1.4 论文组织结构 | 第13页 |
1.5 本章小结 | 第13-14页 |
2 相关理论基础 | 第14-23页 |
2.1 静态分析 | 第14-19页 |
2.1.1 分析方法与原理 | 第14-16页 |
2.1.2 常见分析工具 | 第16-17页 |
2.1.3 FindBugs简介 | 第17-19页 |
2.2 神经网络 | 第19-20页 |
2.3 代价敏感方法 | 第20-22页 |
2.3.1 过采样 | 第21页 |
2.3.2 欠采样 | 第21页 |
2.3.3 阈值操作 | 第21-22页 |
2.4 本章小结 | 第22-23页 |
3 实验数据抽取及处理 | 第23-33页 |
3.1 概述 | 第23-24页 |
3.2 实验数据集 | 第24-25页 |
3.3 源代码警告获取 | 第25-28页 |
3.3.1 FindBugs缺陷模式查找方法 | 第25-26页 |
3.3.2 FindBugs分析 | 第26-28页 |
3.4 自动化警告标注 | 第28-32页 |
3.4.1 各版本中有效警告分布 | 第28-31页 |
3.4.2 各文件中有效警告分布 | 第31-32页 |
3.5 本章小结 | 第32-33页 |
4 基于代价敏感神经网络的警告分类 | 第33-42页 |
4.1 概述 | 第33页 |
4.2 警告标注方法的可行性验证 | 第33-37页 |
4.2.1 缺陷数据抽取 | 第33-35页 |
4.2.2 相关性分析 | 第35-37页 |
4.3 源代码警告分类过程 | 第37-41页 |
4.3.1 警告特征提取 | 第38页 |
4.3.2 代价敏感神经网络分类方法 | 第38-41页 |
4.4 本章小结 | 第41-42页 |
5 警告分类实验结果与分析 | 第42-57页 |
5.1 概述 | 第42页 |
5.2 实验数据 | 第42-49页 |
5.2.1 基于类别的警告数据分析 | 第43-45页 |
5.2.2 基于类型的警告数据分析 | 第45-48页 |
5.2.3 基于优先级的警告数据分析 | 第48-49页 |
5.3 评估指标 | 第49-51页 |
5.3.1 警告标注方法可行性评估指标 | 第49-50页 |
5.3.2 分类结果评估指标 | 第50-51页 |
5.4 结果与分析 | 第51-56页 |
5.4.1 警告标注方法有效性结果分析 | 第51-52页 |
5.4.2 警告分类结果分析 | 第52-56页 |
5.5 本章小结 | 第56-57页 |
6 总结与展望 | 第57-59页 |
6.1 总结 | 第57页 |
6.2 展望 | 第57-59页 |
致谢 | 第59-60页 |
参考文献 | 第60-64页 |
附录 | 第64-66页 |
A 各版本相关数据及其密度 | 第64-65页 |
B 各项目在类型下的警告和有效警告分布 | 第65-66页 |
C 作者在攻读学位期间发表的论文目录 | 第66页 |