摘要 | 第4-6页 |
Abstract | 第6-7页 |
1 绪论 | 第11-19页 |
1.1 课题背景及研究意义 | 第11页 |
1.2 国内外研究现状 | 第11-15页 |
1.2.1 代码坏味检测 | 第11-14页 |
1.2.2 不平衡数据分类算法 | 第14-15页 |
1.3 课题研究主要内容 | 第15-16页 |
1.4 论文的组织架构 | 第16-19页 |
2 代码坏味的检测概述 | 第19-29页 |
2.1 代码坏味的定义和分类 | 第19-22页 |
2.1.1 过度膨胀(TheBloaters) | 第19页 |
2.1.2 面向对象滥用(TheObject-orientationAbusers) | 第19-20页 |
2.1.3 妨碍修改(TheChangePreventers) | 第20页 |
2.1.4 可有可无情况(TheDispensables) | 第20-21页 |
2.1.5 封装问题(TheEncapsulators) | 第21页 |
2.1.6 过度耦合(TheCouplers) | 第21-22页 |
2.1.7 其他情况(Others) | 第22页 |
2.2 长方法与特征依恋 | 第22-24页 |
2.2.1 长方法 | 第22-23页 |
2.2.2 特征依恋 | 第23-24页 |
2.3 代码坏味的检测方法 | 第24-28页 |
2.3.1 检测的一般过程 | 第24-25页 |
2.3.2 基于贝叶斯网络的检测方法 | 第25-27页 |
2.3.3 基于SVM的检测方法 | 第27-28页 |
2.4 本章小结 | 第28-29页 |
3 不平衡数据的分类算法 | 第29-37页 |
3.1 解决不平衡数据的基本思想 | 第29页 |
3.2 面向数据集的方法 | 第29-31页 |
3.2.1 欠采样 | 第30页 |
3.2.2 过采样 | 第30-31页 |
3.3 面向算法的方法 | 第31-32页 |
3.4 不平衡数据的分类应用领域 | 第32-33页 |
3.5 代码坏味检测不平衡数据处理方法 | 第33-34页 |
3.6 本章小结 | 第34-37页 |
4 代价敏感的不平衡数据分类算法 | 第37-45页 |
4.1 代价敏感分析基本思想 | 第37页 |
4.2 代价敏感贝叶斯算法 | 第37-39页 |
4.3 认知复杂度 | 第39-42页 |
4.4 代价矩阵的表示形式 | 第42-43页 |
4.5 代价敏感集成分类器 | 第43-44页 |
4.6 本章小结 | 第44-45页 |
5 面向坏味检测的实验与分析 | 第45-55页 |
5.1 实验准备 | 第45-52页 |
5.1.1 实验环境的准备 | 第45页 |
5.1.2 实验数据的收集 | 第45-47页 |
5.1.3 抽象语法树(AST) | 第47-48页 |
5.1.4 代码坏味特征值提取 | 第48-52页 |
5.2 实验设计 | 第52页 |
5.3 实验结果的评价标准 | 第52-53页 |
5.4 实验结果及结果对比 | 第53-54页 |
5.5 本章小结 | 第54-55页 |
6 总结与展望 | 第55-57页 |
6.1 工作总结 | 第55-56页 |
6.2 进一步研究展望 | 第56-57页 |
参考文献 | 第57-63页 |
致谢 | 第63-65页 |
攻读学位期间取得的科研成果清单 | 第65页 |