一种基于文本分类和评分机制的软件缺陷分派方法研究

来源 :武汉大学 | 被引量 : 1次 | 上传用户:hu8245
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
在过去的二十年中,我们目睹了软件对人类社会日益增长的影响。这一趋势与Marc Andreessen在2011年发表的著名宣言“软件正在吞噬世界”相呼应。此外,软件定义的任何东西被Gartner确定为2014年的十大战略技术趋势之一,这意味着我们正在进入一个软件定义的信息社会新纪元。与专有软件相比,开源软件为软件开发和分发方式带来了根本性的转变。由于较低的成本、较强的安全性、不被供应商锁定、更好的质量等因素,越来越多的企业及公司采用开源软件产品作为它们的IT系统的重要组成部分。开源软件项目的缺陷管理和修复是保障其软件质量及软件开发效率的重要手段。目前,大多数大型的开源软件项目使用缺陷跟踪系统来对缺陷进行管理,如Bugzilla、GNATS等,缺陷跟踪系统主要完成对缺陷报告的记录、分析和状态更新等管理。软件开发人员、测试人员以及普通用户都能以缺陷报告的形式将缺陷提交至缺陷跟踪系统。但是,随着软件项目规模的不断增大,大量的缺陷被发现和提交,这导致缺陷的人工管理变得越来越困难,特别是如何将大量的缺陷及时分配给合适的开发者去修复。为了提高缺陷分配的效率、降低相应的人力和时间成本,到目前为止,已有不少的研究者提出了各种缺陷自动分配的方法。从使用的数据、算法、再分配图模型等维度,现有方法大致分为三类:基于文本内容、基于开发者关系和混合类型。但大多数已有方法认为,不管是参与分派和讨论缺陷的开发者还是最终修复缺陷的开发者都是对缺陷分派有贡献的人。因此,它们通常把所有与缺陷相关的开发者都看作是缺陷的标签,从而能够在预测时得到较高的召回率。针对缺陷的自动分派问题,本文首先提出了一种基于文本分类和评分机制的单一修复者的预测方法,其核心思想是综合考虑基于机器学习的文本分类和基于软件缺陷从属特征的评分机制来构建预测模型。针对大型开源软件项目Eclipse和Mozilla的十万级已修复软件缺陷的实验表明,在“十折”增量验证模式下,本文方法的最好平均准确率分别达到了 78.39%和64.94%,比基准方法(机器学习分类+再分配图)的最高平均准确率分别增加了 17.34%和10.82%,从而验证了其有效性。另外,我们根据缺陷的历史修复数据分析开发者之间的合作关系,计算分配概率,构建缺陷的分配概率图,然后结合文本分类和评分机制对与缺陷修复过程中涉及的开发者进行推荐。针对Eclipse和Mozilla两个开源项目的缺陷数据,取得了较高的推荐召回率,分别达到了 78.20%和71.98%。与FastText+评分机制+缺陷分配图基准方法相比,平均召回率分别增加了 25.53%和27.74%,同时也比ML-KNN+开发者相似度方法的最高平均召回率分别增加了 14.17%和13.25%,从而验证了该方法对缺陷所涉及的开发者推荐的有效性。
其他文献
铁路道口安全问题是制约铁路运输业发展的一个重要因素。在封闭式铁路改建过程中,道口视频监控系统能有效缓解道口安全问题。现有的道口视频监控系统只是将道口视频通过网络传
无线传感器网络(Wireless Sensor Network, WSN)具有部署灵活、感应灵敏、价格低廉等众多优点,拥有广阔的应用前景。但由于技术条件的限制一直未能大规模应用。近年来随着微
花卉植物由于其形态结构复杂,在可视化过程中存在计算量大、算法复杂、人工干预多等缺点。然而对于具有相似形态、不同层次花瓣的花卉建模时,可以考虑针对相似的形态建立一个
软件复用技术可有效的提高开发效率,降低维护成本。在特定领域内使用软件复用技术尤为有效。本文以工程造价领域为例,利用领域分析方法对该领域进行了领域需求分析,建立行业
智能交通系统(Intelligent Transport System,简称ITS)是解决城市道路交通拥堵问题的重要方式之一,就城市道路交通管理部门的管理对象而言,无论是基础设施还是交通管理设施都