一种融合缺陷历史抛掷关系的缺陷自动分派方法与系统技术方案

技术编号:29400429 阅读:23 留言:0更新日期:2021-07-23 22:37
本发明专利技术公开了一种融合缺陷历史抛掷关系的缺陷自动分派方法及系统,包括:获取缺陷报告的元数据信息和文本特征信息,基于所述缺陷报告的历史修复信息提取开发者们之间对缺陷报告的Tossing关系;将获取的数据进行处理后输入到训练好的缺陷分派模型中,所述缺陷分派模型获取由半途开发者转移到最终修复者的概率,生成转移概率矩阵;基于首次分派的概率与所述转移概率矩阵,得到与缺陷报告最匹配的开发者排序,根据所述排序将缺陷报告推荐给相应的开发者。本发明专利技术方法可通过基于缺陷报告本身的特征在进行二次分派时考虑开发者自身修复该缺陷报告的可能性。

【技术实现步骤摘要】
一种融合缺陷历史抛掷关系的缺陷自动分派方法与系统
本专利技术涉及缺陷报告自动分派
,尤其涉及一种融合缺陷历史抛掷关系的缺陷自动分派方法与系统。
技术介绍
本部分的陈述仅仅是提供了与本专利技术相关的
技术介绍
信息,不必然构成在先技术。在软件开发和维护的整个生命周期中,缺陷(Bug)的出现是不可避免的。如果缺陷没有被及时修复,就会影响软件系统的正常使用,导致系统升级更新延迟、用户体验度降低,甚至带来严重的后果。修复这些缺陷是一项耗时并且成本高昂的任务,一般软件维护成本至少占与软件产品相关总成本的50%,有时会超过90%,一些估计则认为维护成本是初始软件版本成本的几倍。提高缺陷修复的效率会缩短项目周期、减少修复的工作量并降低软件生产的成本。为了正确的跟踪每个缺陷报告(BugReport)的处理过程,通常将软件测试时发现或用户使用过程中遇到的缺陷作为一条条的记录输入到缺陷跟踪管理系统中,记录的缺陷信息一般包含发现的软件错误类型,错误出现的产品、组件、硬件信息,错误的严重等级,错误的标题和具体的描述信息,必要的附图,测试注释等,处理信息包括处理者姓名,处理时间,处理步骤,错误记录的当前状态,通过这些信息就能回溯任一时间的缺陷记录和相应的修改信息.这种缺陷跟踪系统的一个普遍例子就是Bugzilla,它是Mozilla公司提供的一款开源免费的缺陷跟踪系统,最初在MozillaWeb浏览器的开发中引入,现在被普遍应用于许多其他项目中。缺陷跟踪管理系统在开源软件开发中尤其重要,因为在开源软件开发中,团队成员可能分散在世界各地,开发人员和其他项目贡献者很少见面,这就为修复工作增加了难度。而缺陷跟踪管理系统正好解决了这一问题,Bugzilla不仅可以跟踪问题报告和特性请求,而且可以协调开发人员之间的工作,当提交新的缺陷报告时,高级开发人员或项目负责人将选择具有修复缺陷报告技能的开发人员去负责修复,在缺陷修复过程中,开发人员和缺陷报告者将通过评论进行交流,他们可以上传额外的资源(如截图),用来支持缺陷报告的修复,这种把缺陷报告分配给适当的开发人员的过程叫做缺陷分派(BugTriage)。但事实上,首次分派的开发人员可能会由于没有解决特定类型缺陷报告的专业知识或者缺陷报告太过复杂,很难由一个开发者完成修复任务,所以必须进行重新分派,直至修复工作完成,这个缺陷报告重新分派的过程称为BugTossing。缺陷报告的重新分派是一个冗长而昂贵的过程,一些实证研究表明,平均来说,将一个缺陷报告分配给Eclipse项目中的第一个开发人员大约需要40天,然后将缺陷报告重新分配给第二个开发人员需要额外的100天或更长的时间。同样,在Mozilla项目中,第一次分配需要180天,如果第一次分配的开发人员无法修复,则需要额外的250天进行再次分配。而在Eclipse和Mozilla网站中,37%和44%的缺陷报告至少往外抛出了一次(抛掷路径≥1),10%的缺陷报告甚至会被重新分配五次或更多次。在缺陷测试过程中,不正确的分配和抛掷会增大缺陷的修复时间,这也会严重推迟软件的交付周期。为了更好的将出现的缺陷报告分派给能够解决该缺陷的开发者,研究人员们提出了各种缺陷分派的方法,现有的缺陷分派通常有以下几类:第一类采用信息检索技术,使用缺陷报告的文本信息,通过构造缺陷报告和开发者之间的表示,然后将缺陷报告与最相关的开发者匹配;第二类采用机器学习技术,通过提取缺陷报告的特征或学习表示,并将开发者视为标签,缺陷报告的属性信息视为特征,以分类的方式训练和推荐合适的开发者;此外,研究人员们还提出了几种结合机器学习和Tossing图的方法来减少抛掷路径的长度,提高预测的精度。但是,上述的缺陷分派算法仍然存在以下问题:1)二次分派过程当中,只考虑了自身无法修复缺陷,二次分派给其它修复者的概率,并没有综合考虑自身修改该缺陷的概率。2)二次分派过程当中,仅用可枚举的特征(例如:产品类型、组件等)作为分配依据,而没有综合考虑缺陷报告的信息(例如缺陷报告的描述信息),缺少了抛掷的可解释性。3)二次分派过程当中,没有考虑到首次分配的概率密度信息。
技术实现思路
为了解决上述问题,本专利技术提出了一种融合缺陷历史抛掷关系的缺陷自动分派方法与系统,能够在进行缺陷分派时同时考虑缺陷报告的特征和开发者之间的Tossing关系,实现自动的将缺陷报告分派给开发者。在一些实施方式中,采用如下技术方案:一种融合缺陷历史抛掷关系的缺陷自动分派方法,包括:获取缺陷报告的元数据信息和文本特征信息,基于所述缺陷报告的历史修复信息提取开发者们之间对缺陷报告的Tossing关系;将获取的数据进行处理后输入到训练好的缺陷分派模型中,所述缺陷分派模型获取由半途开发者转移到最终修复者的概率,生成转移概率矩阵;基于首次分派的概率与所述转移概率矩阵,得到与缺陷报告最匹配的开发者排序,根据所述排序将缺陷报告推荐给相应的开发者。在另一些实施方式中,采用如下技术方案:一种融合缺陷历史抛掷关系的缺陷自动分派系统,包括:数据获取模块,用于获取缺陷报告的元数据信息和文本特征信息,基于所述缺陷报告的历史修复信息提取开发者们之间对缺陷报告的Tossing关系;缺陷报告分派模块,用于将获取的数据进行处理后输入到训练好的缺陷分派模型中,所述缺陷分派模型获取由半途开发者转移到最终修复者的概率,生成转移概率矩阵;基于首次分派的概率与所述转移概率矩阵,得到与缺陷报告最匹配的开发者排序,根据所述排序将缺陷报告推荐给相应的开发者。在另一些实施方式中,采用如下技术方案:一种终端设备,其包括处理器和存储器,处理器用于实现各指令;存储器用于存储多条指令,所述指令适于由处理器加载并执行上述的融合缺陷历史抛掷关系的缺陷自动分派方法。在另一些实施方式中,采用如下技术方案:一种计算机可读存储介质,其中存储有多条指令,所述指令适于由终端设备的处理器加载并执行上述的融合缺陷历史抛掷关系的缺陷自动分派方法。与现有技术相比,本专利技术的有益效果是:本专利技术方法可通过基于缺陷报告本身的特征在进行二次分派时考虑开发者自身修复该缺陷报告的可能性;本专利技术方法有助于增强缺陷报告特征的表示学习能力以及对同时考虑开发者之间Tossing关系的建模潜力;本专利技术方法提供了一个矩阵相乘的方案,针对特定报告信息,综合考虑首次分配的概率密度与修复者的转移概率的二次分配排序;本专利技术的其他特征和附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本方面的实践了解到。附图说明图1是缺陷报告处理流程示意图;图2是缺陷报告抛掷图示意图;图3是本专利技术实施例的融合缺陷报告特征与历史缺陷关系的模型;图4是本专利技术实施例的根据历史抛掷关系生成的转移矩阵模型。具体实施方式应该指出,以下详细说明都是例示性的,旨在对本申请提供进一步的说明。除本文档来自技高网
...

【技术保护点】
1.一种融合缺陷历史抛掷关系的缺陷自动分派方法,其特征在于,包括:/n获取缺陷报告的元数据信息和文本特征信息,基于所述缺陷报告的历史修复信息提取开发者们之间对缺陷报告的Tossing关系;/n将获取的数据进行处理后输入到训练好的缺陷分派模型中,所述缺陷分派模型获取由半途开发者转移到最终修复者的概率,生成转移概率矩阵;/n基于首次分派的概率与所述转移概率矩阵,得到与缺陷报告最匹配的开发者排序,根据所述排序将缺陷报告推荐给相应的开发者。/n

【技术特征摘要】
1.一种融合缺陷历史抛掷关系的缺陷自动分派方法,其特征在于,包括:
获取缺陷报告的元数据信息和文本特征信息,基于所述缺陷报告的历史修复信息提取开发者们之间对缺陷报告的Tossing关系;
将获取的数据进行处理后输入到训练好的缺陷分派模型中,所述缺陷分派模型获取由半途开发者转移到最终修复者的概率,生成转移概率矩阵;
基于首次分派的概率与所述转移概率矩阵,得到与缺陷报告最匹配的开发者排序,根据所述排序将缺陷报告推荐给相应的开发者。


2.如权利要求1所述的一种融合缺陷历史抛掷关系的缺陷自动分派方法,其特征在于,将获取的数据转化成特征数据的向量进行拼接,作为缺陷分派模型的输入数据,具体过程包括:
对于获取到的缺陷报告的元数据信息,通过Embedding方法,将序号映射成一个向量表示;对于获取到的文本特征信息,通过Bert模型映射成一个向量表示;通过拼接不同维度特征获取缺陷报告的向量化表示。


3.如权利要求1所述的一种融合缺陷历史抛掷关系的缺陷自动分派方法,其特征在于,所述缺陷分派模型获取由半途开发者转移到最终修复者的概率,生成转移概率矩阵,具体包括:
将缺陷报告的向量化表示、半途开发者相对于所述缺陷报告的向量化表示以及最终修复者相对于所述缺陷报告的向量化表示进行拼接得到向量表示;
将所述向量表示经由全连接神经网络和sigmoid函数,获得所述缺陷报告经由半途开发者,转移到最终修复者的概率;
生成转移概率矩阵。


4.如权利要求3所述的一种融合缺陷历史抛掷关系的缺陷自动分派方法,其特征在于,
通过Attention机制计算缺陷报告与半途开发者的历史修复记录的相似度,得到半途开发者相对于所述缺陷报告的向量化表示;
通过Attention机制计算缺陷报告与最终修复者的历史修复记录的相似度,得到最终修复者...

【专利技术属性】
技术研发人员:杜军威任新双李浩杰江峰于旭陈卓胡强
申请(专利权)人:青岛科技大学
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1