开源软件缺陷修复时间分析与预测研究

来源 :中国科学院大学 | 被引量 : 0次 | 上传用户:MAGICDHJ
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
缺陷修复是软件维护过程中重要的活动。有研究表明,软件开发过程中80%的工作量和花费用在了软件维护阶段的缺陷修复上。随着开源软件的迅速兴起,越来越多的公司和自由开发者加入到开源社区,参与开源软件的开发与维护工作。这一方面给开源软件的发展提供了海量的人力资源,而另一方面,由于开源软件的分布式开放模式和松散的管理,开源社区中的人员流动性大,导致难以有效管理承担开源软件维护任务的人员。在开源软件维护工作中,缺陷修复类任务的比重十分突出。缺陷能否得到及时、有效的修复对软件的质量和产品更新的速度有着重要影响。预测缺陷修复时间为科学地管理软件缺陷修复过程提供了基础。而随着软件的日趋开放和快速演化,使得软件资产库中的历史数据和文档规模越来越大,同时,开源软件新的开发模式也使得涉众间的关系更加复杂,这给开源软件的维护,特别是缺陷修复时间的预测带来了新的问题和挑战。例如,如何全面系统地了解开源软件维护工作相关研究的现状,特别是缺陷修复时间预测研究、如何在不可控的开源环境下度量人员对缺陷修复时间的影响、如何准确地预测开原软件缺陷修复时间等。  为了解决上述问题,本论文首先对于开源软件项目维护工作量估算方面的研究进行了全面系统地文献综述。通过系统地搜索和筛选,识别出了29篇相关的原始研究,对设定的研究问题进行了系统的综述,总结了现有研究中采用的度量元、预测方法及其效果,并指出了现有研究存在的问题,为后续研究提出了方向。  很多研究都发现在开源社区中,传统的基于工作量估算工作时间的方法不能达到效果,这是由于开源社区的人员自治行为导致工作量与工作时间解耦,即很多人接受任务后,并非全时投入任务。这个挑战使得开源软件的缺陷修复时间估算变得非常困难。本论文梳理了开源软件缺陷修复的过程,形成一个包含三个阶段的规范过程。在此基础上,详细分析了目前较为公用的一些因子对各阶段时间的影响以及变化。本论文基于两个大型开源软件项目的数据进行了案例分析。分析结果表明,一些因子在各个阶段存在变化,并与各阶段时间的统计相关性存在差异。这些分析结果启示应该分阶段进行缺陷修复时间的分析和预测。此外,分析结果还表明,缺陷修复阶段是开源软件缺陷修复整个过程中最重要的阶段。  开源社区参与者自治行为导致了开源软件开发方式的巨大变革。参与者的行为、意愿等因素愈发凸显对开源软件缺陷修复类任务的重要作用。本论文进一步基于开源软件缺陷修复的历史数据,从缺陷修复人的修复经验、在社区中的活跃度及其代码提交三个维度提出了用于刻画缺陷修复人能力的度量元,并基于开源操作系统Linux的缺陷数据进行案例分析,验证了所定义的绝大部分缺陷修复人能力的度量元与缺陷修复阶段时间显著相关,这为构建开源软件缺陷修复时间的预测模型提供了新的参考因素。  最后,本论文研究并提出了基于缺陷修复人能力的开源软件缺陷修复时间预测方法,并以开源操作系统Linux的缺陷数据为案例研究,分别采用四种机器学习算法建立预测模型。案例研究结果表明,本论文所得模型的预测性能比仅基于缺陷报告因子的缺陷修复时间预测模型性能最高综合提升40%,同时也优于绝大多数现有研究的结果。为进一步分析缺陷修复人能力影响缺陷修复时间的原因,本论文对采用决策树方法得到的预测结果进行规则集的挖掘,并基于所得规则集分析了Linux项目中缺陷修复花费时间较长(大于1个月)的原因。基于该方法总结的规则特征可以为开源软件项目管理者深入了解社区参与者能力与缺陷修复任务的关系提供重要信息,同时为优化开源软件的缺陷分配过程提供决策支持。
其他文献
IPSec作为一种实施于网络层(IP)的安全协议,具有抗攻击、保护数据完整性、机密性和完美向前保密的诸多优点.IPSec安全联盟是IPSec协议的核心,如何对之进行安全有效的配置和管
将数据挖掘技术应用到Web上是一个新兴的课题,同时也具有很大的使用价值。本文作了四个层面的探讨:首先对数据挖掘技术进行了介绍和分析。其次,分析了数据挖掘中所使用的关联规
人机界面是计算机直接与人打交道的途径,是计算机系统的重要组成部分.人机界面的开发工作量占系统的40-60﹪,不同人群对界面的要求不同,是计算机软件开发中的一个最困难的部分
该文论述了以鞍山钢铁公司11号高炉为背景的高炉炉况评价与参数学习两个系统的设计与实现.高炉炉况评价系统功能是判定炉况是否顺行还是异常,采用了类似Go-Stop系统的评价方
需求分析技术和面向Agent软件设计技术都是当前计算机科学研究领域中的热门技术.将Agent思想用于软件建摸,将形成一种新的在更高抽象层次上建模技术,是对传统的软件需求分析
本文讨论了组播安全中实现机密性和身份验证的算法,并提出一种新的改进的组播密钥管理协议。针对具体应用情况,采用与IPSec技术相结合的方式,实现了组播安全的密钥管理技术。文
针对目前普遍采用的电子选举FOO模型,描述了模型的具体过程,分析了模型内部存在的安全漏洞和弊端,找出了造成这些漏洞和弊端的原因。针对这些问题提出了相应的改进策略,利用
在临床诊疗活动中,医生医学知识的储备对临床诊疗服务的质量有着至关重要的影响。但是由于临床医学学科的复杂性,加上医生自身记忆和认知能力的局限性,在临床诊疗活动中医生往往
网络经济模式下,面对市场不断变化的需求,企业间往往需要组成动态联盟共同实现商机.其中,能够快速、灵活地合成联盟成员间的业务流程十分关键.Web服务的出现使企业可以提供"
密码协议安全性分析是网络安全的一个难题,运用形式化方法对密码协议进行分析一直是该领域的研究热点.形式化分析由于其精炼、简洁和无二义性逐步成为分析密码协议的一条可靠