学位论文 > 优秀研究生学位论文题录展示

基于数据挖掘的软件缺陷预测技术研究

作 者: 陈媛
导 师: 沈湘衡
学 校: 中国科学院研究生院(长春光学精密机械与物理研究所)
专 业: 机械电子工程
关键词: 软件缺陷预测 似然关系模型 高维聚类 缺陷分布模式 混合变量聚类
分类号: TP311.53
类 型: 博士论文
年 份: 2012年
下 载: 465次
引 用: 0次
阅 读: 论文下载
 

内容摘要


软件缺陷是软件的固有属性,是软件开发过程中的“副产品”。其主要危害是影响软件的质量、延长开发周期和增加开发成本。阶段性的测试是及时发现软件错误,提高软件质量的重要手段。而准确地预测软件缺陷的分布情况对软件测试工作有着重要的指导意义。随着计算机技术的不断发展,软件的规模和复杂程度呈几何级数增长,为了能够准确细致地预测软件缺陷的产生和分布情况,人们需要分析的影响因素也越来越多。此时,传统的预测方法已经很难处理具有复杂因果关系的不确定性知识推理预测问题,而且这些方法的预测结果往往由于过于宽泛而失去实用意义。为了解决这一难题,人们开始尝试将其他学科的研究成果应用到软件缺陷预测领域中,其中比较常用的是数据挖掘技术。本文在对数据挖掘技术和软件缺陷相关知识进行深入研究的前提下,开展了对软件缺陷预测技术的研究和应用工作,将数据挖掘技术的两个分支——似然关系模型和聚类技术应用到软件缺陷预测中,提出了三种预测算法,开发了软件缺陷管理预测系统,并应用该系统对三种算法分别进行了实现和实验验证。本文的主要贡献和研究成果如下:1.根据测试方法来对软件缺陷进行分类预测。目前的软件缺陷预测领域主要的研究方向是对软件缺陷数量以及错误级别的预测,为了提高预测结果的实用性,本文根据测试方法来对软件缺陷进行分类预测,测试人员可以根据预测结果来制订有针对性的测试计划,从而使预测结果更具指导意义。2.提出基于似然关系模型的软件缺陷预测算法。似然关系模型(Probabilistic Relational Models,PRM)是一种以贝叶斯网(Bayesian Network)为基础衍变而来的统计关系学习方法。它能够应用在更为复杂的类以及类之间的依赖关系推理问题上,从而对不确定性知识具有更强的表示和推理能力。软件开发中影响软件缺陷产生和分布的各种因素都可以看作是一个实体类,这些实体本身或其自身属性都直接或者间接的影响软件缺陷的产生和分布。因此,软件缺陷预测问题实际就是具有复杂类依赖关系的不确定性知识推理问题。目前,在软件缺陷预测方面,人们对使用似然关系模型对软件缺陷进行预测的研究寥寥无几,因此本文提出了基于似然关系模型的软件缺陷预测算法,将似然关系模型在描述和推理多属性类之间关系及其不确定性知识上的优势应用于软件缺陷预测领域中,并针对该模型的不足进行了优化。3.提出基于高维聚类的面向缺陷分布模式的软件缺陷预测算法。聚类分析(Clustering Analysis)是典型的无监督学习方法,它根据已有实例集中实例的某些参考属性对其进行分类,将数据分成若干个簇,同一个簇的数据对象有很高的相似度,而不同簇中的数据对象有很高的相异度。在软件的开发过程中,由能力相近的开发(测试)人员进行开发(测试)的软件,其测试结果往往具有近似的分布模式。另一方面,将软件缺陷按照测试方法的不同进行细致的分类,随之而来的是存储软件缺陷的数据维度变得越来越高,如何从高维数据中找到隐含的模式就成了亟需解决的问题。此前,高维聚类的相关知识在软件缺陷预测领域中应用较少,因此,本文提出了基于高维聚类的面向缺陷分布模式的软件缺陷预测算法,对多维数据相似度进行了重新定义,通过构造特殊的估价函数来寻找数据中隐含的模式信息,并通过控制聚类过程来合并近似的测试实例,从而得到更为准确的预测结果以指导软件测试工作。4.提出基于人员能力混合变量聚类的软件缺陷预测算法。软件缺陷预测可能会遇到数据的冷启动问题,例如历史数据中没有新近人员的相关记录,那么针对该人员开发或测试软件的缺陷预测也无从谈起。在这种情况下,本文定义了一种衡量人员能力的方法,并据此提出了基于人员能力混合变量聚类的软件缺陷预测算法,该算法能够找到与新近人员能力相似的人员,并根据这些人员的相应历史数据来进行预测。5.开发软件缺陷管理预测系统,并应用此系统对以上三种基于数据挖掘技术的软件缺陷预测算法进行了实现和实验验证。实验结果显示,这三种算法具有各自的特点。其中,基于似然关系模型的软件缺陷预测算法对于大规模数据具有较好的准确性和较低的计算复杂度,但对于较小规模的数据,该算法预测精度较低;相比较而言,基于高维聚类的面向缺陷分布模式的软件缺陷预测算法对于规模较小的数据具有较高的准确性,但对于大规模的数据,存在算法时间复杂度较高的问题;基于人员能力混合变量聚类的软件缺陷预测算法在出现数据冷启动问题时,可以通过寻找近似属性实例的方法给出近似的预测结果。可见,根据实际情况灵活选取适当的算法不但可以提高预测质量,还可以降低预测工作的时间开销,这对提高软件质量和降低开发成本有着重要的意义。本文的研究结果丰富了数据挖掘技术在软件缺陷预测方面的研究和应用,提高了软件缺陷预测结果的实用价值,并对预测工作中的数据冷启动问题提出了一种解决方案,这些工作对提高软件缺陷预测的相关研究都有着积极的意义。

全文目录


摘要  5-8
Abstract  8-12
目录  12-14
图表目录  14-17
第1章 绪论  17-31
  1.1 课题研究背景及意义  17-18
  1.2 软件缺陷预测技术研究现状  18-29
  1.3 本文主要研究内容和结构安排  29-31
第2章 软件缺陷及数据挖掘  31-47
  2.1 软件缺陷的定义  31-32
  2.2 软件缺陷的成因  32-33
  2.3 软件缺陷的分类  33-36
  2.4 数据挖掘定义  36-37
  2.5 数据挖掘过程  37-39
  2.6 数据挖掘方法  39-45
  2.7 本章小结  45-47
第3章 基于似然关系模型的软件缺陷预测算法  47-89
  3.1 似然关系模型概述  47-59
  3.2 似然关系模型应用于软件缺陷预测的理论依据  59-69
  3.3 基于似然关系模型的软件缺陷预测模型 PRM_METHOD  69-76
  3.4 基于弥合数据缝隙的改进算法 PRM_METHOD*  76-79
  3.5 算法实现与实验分析  79-88
  3.6 本章小结  88-89
第4章 基于高维聚类的面向缺陷分布模式的软件缺陷预测算法  89-135
  4.1 聚类方法概述  90-98
  4.2 常用聚类方法概述  98-102
  4.3 高维数据聚类方法  102-105
  4.4 高维聚类应用于软件缺陷预测的理论依据  105-112
  4.5 基于高维聚类的面向缺陷分布模式的软件缺陷预测算法 HDCBP  112-124
  4.6 算法实现  124-128
  4.7 算法比较  128-133
  4.8 本章小结  133-135
第5章 基于人员能力混合变量聚类的软件缺陷预测算法  135-153
  5.1 问题描述  135-137
  5.2 混合类型变量的聚类方法  137-139
  5.3 数据的预处理  139-142
  5.4 混合变量聚类过程  142-145
  5.5 基于人员能力混合变量聚类的软件缺陷预测算法 MCBPC  145-147
  5.6 算法实现与检验  147-152
  5.7 本章小结  152-153
第6章 结论与展望  153-157
  6.1 结论与创新点  153-155
  6.2 研究展望  155-157
参考文献  157-169
在学期间学术成果情况  169-170
指导教师及作者简介  170-171
致谢  171

相似论文

  1. 基于数据挖掘聚类技术的我国高校分类研究,TP311.13
  2. 基于贝叶斯网络的软件缺陷预测管理系统,TP311.53
  3. 基于模糊支持向量回归的软件缺陷预测,TP311.53
  4. 基于衰减窗口与剪枝链表树的高维数据流聚类算法研究,TP311.13
  5. 改进PSO与模糊积分软件缺陷预测方法研究,TP311.53
  6. 关联规则基本技术研究,TP311.13
  7. 数据流中基于区间划分的高维聚类算法研究,TP311.131
  8. 高维数据聚类技术中的若干算法研究,TP301.6
  9. 基于高维空间的聚类技术研究,TP311.13
  10. 基于SVM的Web应用缺陷预测方法,TP393.092
  11. 基于PCA的软件缺陷预测方法研究,TP311.52
  12. 基于贝叶斯网络的软件缺陷预测技术研究与应用,TP311.52
  13. 两种个性化推荐算法的研究及应用,TP301.6
  14. 基于似然关系模型的个性化推荐研究,TP393.092
  15. 基于机器学习的软件缺陷预测技术研究,TP311.53
  16. 软件缺陷预测技术研究,TP181
  17. 基于代价敏感的特征选择及其在软件缺陷预测中的应用,TP311.53
  18. 特征描述方法在软件缺陷预测中的应用研究,TP311.53
  19. 代价敏感特征选择算法及其在软件缺陷预测中的应用,TP311.13
  20. 基于属性离散化的软件缺陷预测模型研究,TP311.53

中图分类: > 工业技术 > 自动化技术、计算机技术 > 计算技术、计算机技术 > 计算机软件 > 程序设计、软件工程 > 软件工程 > 软件维护
© 2012 www.xueweilunwen.com