[发明专利]一种基于版本提交信息的软件缺陷自动分派方法及系统在审
申请号: | 201910899785.3 | 申请日: | 2019-09-23 |
公开(公告)号: | CN110674631A | 公开(公告)日: | 2020-01-10 |
发明(设计)人: | 朱云龙;任洪敏;李璐璐 | 申请(专利权)人: | 上海海事大学 |
主分类号: | G06F40/216 | 分类号: | G06F40/216;G06F16/35;G06Q10/06 |
代理公司: | 31323 上海元好知识产权代理有限公司 | 代理人: | 张妍;刘琰 |
地址: | 201306 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 信息模型 分派 软件缺陷 源码文件 工作量 软件缺陷修复 修复 定位准确率 相似度匹配 准确度 精准定位 信息对应 比对 减小 映射 匹配 挖掘 开发 | ||
1.一种基于版本提交信息的软件缺陷自动分派方法,其特征在于,包括以下步骤:
步骤1:从版本控制工具仓库中提取commit信息,从软件bug仓库中提取bug信息,并分别建立commit信息模型和bug信息模型;
步骤2:所述bug信息模型基于LDA模型进行计算,得到所述bug信息模型的bug-topic列表;
步骤3:对所述commit信息模型和所述bug信息模型进行相似度匹配,得出与所述bug信息模型对应的bug-fixer列表;
步骤4:将所述bug-topic列表与所述bug-fixer列表相互映射,得到所述bug信息模型的fixer-topic列表;
步骤5:所述bug信息模型中的任意一种bug信息对应的所述bug-topic列表通过所述fixer-topic列表进行分派比对,匹配出合适的软件缺陷修复者。
2.如权利要求1所述的基于版本提交信息的软件缺陷自动分派方法,其特征在于,所述提取commit信息和提取bug信息是通过NLP技术对版本控制工具仓库和软件bug仓库中的缺陷文本特征进行预处理,从而分别得到所述commit信息和所述bug信息;所述commit信息包括commit描述信息、commit提交日期、开发人员修改过的源代码文件和commit提交者;所述bug信息包括bug摘要、bug描述信息、bug评论和bug提交时间。
3.如权利要求2所述的基于版本提交信息的软件缺陷自动分派方法,其特征在于,所述预处理包括对版本控制工具仓库中和软件bug仓库中提取词干、去除停用词、拆分合成词、词汇归一化方法提取出所述commit信息和所述bug信息。
4.如权利要求3所述的基于版本提交信息的软件缺陷自动分派方法,其特征在于,所述LDA模型进行计算还包括以下步骤:
步骤2.1:将所述bug信息模型上的每个所述bug信息映射在所述LDA模型上,得到bug映射向量p(zi|z-i,w),且满足:
其中,α,β分别为多维变量相互之间权重关系的两个向量,且满足:α=β=1/K;wi为所述bug信息中的第i个单词;zi为所述bug信息中单词的主题;T和V分别为所述bug信息中主题zi的个数和所述bug信息中不同单词w的总数;d为第i个单词wi所在的文档;为单词w分配给主题z的次数;表示所有单词w分配给z的总次数;为所述bug信息中文档d中的单词w分配给z的次数;nd是文档d包含的单词w总数;
步骤2.2:对所述bug映射向量进行多次采样迭代,获得所述bug信息中每个单词w所属的主题概率分布向量;所述主题概率分布向量为θd,z,且满足:
其中,为所述bug信息中文档d中的主题为z的单词数量,nd为所述bug信息中文档d中的单词总数;
步骤2.3:选取所述bug信息中所述主题概率分布向量θa,z的最优解,与所述bug映射向量p(zi|z-i,w)一一对应,得到所述bug信息模型的bug-topic列表。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海海事大学,未经上海海事大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910899785.3/1.html,转载请声明来源钻瓜专利网。