专利汇可以提供一种基于版本提交信息的软件缺陷自动分派方法及系统专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于版本提交信息的 软件 缺陷 自动分派方法,包括以下步骤:步骤1:提取commit信息和bug信息,并建立commit信息模型和bug信息模型;步骤2:bug信息模型基于LDA模型进行计算,得到bug-topic列表;步骤3:对commit信息模型和bug信息模型进行相似度匹配,得出bug-fixer列表;步骤4:将bug-topic列表与bug-fixer列表相互映射,得到fixer-topic列表;步骤5:任意一种bug信息对应的bug-topic列表通过fixer-topic列表进行分派比对,匹配出合适的 软件缺陷 修复者。此方法解决了源码文件 定位 准确率低和修复者工作量巨大的问题,充分挖掘commit库中有价值的信息,精准定位源码文件及其开发者,有效的提高了缺陷分派的准确度,实现了软件缺陷的自动分派,减小了修复者的工作量。,下面是一种基于版本提交信息的软件缺陷自动分派方法及系统专利的具体信息内容。
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列表。
5.如权利要求4所述的基于版本提交信息的软件缺陷自动分派方法,其特征在于,所述进行相似度匹配还包括以下步骤:
步骤3.1:分析与所述bug信息最相似的所述commit信息模型中commit信息,得出相似commit信息,并统计出所述相似commit信息中开发人员修改过的源代码文件的数量N和相似commit提交时间TC;
步骤3.2:根据所述相似commit信息和所述bug信息进行计算,得到相似度权重w(bc),且满足:
其中,b为所述bug信息,c为所述commit信息;WB为所述bug信息中的bug描述信息,WC为所述commit信息中的commit描述信息;N为所述相似commit信息中开发人员修改过的源代码文件的数量,TB为所述bug信息中提交的时间,TC表示与bug相关的commit描述提交时间;
步骤3.3:选取所述相似度权重w(b,c)的最优解与所述bug信息一一对应,从而得出与所述bug信息模型对应的bug-fixer列表。
6.一种基于版本提交信息的软件缺陷自动分派系统,其特征在于,该系统是基于权利要求1-5中任意一项所述的基于版本提交信息的软件缺陷自动分派方法实现的,该系统包括:
信息提取模块,与版本控制工具仓库和软件bug仓库连接,分别提取commit信息和bug信息,并分别建立commit信息模型和bug信息模型;
列表构建模块,与所述信息提取模块连接,构建所述bug信息模型的bug-topic列表和bug-fixer列表;
映射模块,与所述列表构建模块连接,将所述bug-topic列表和所述bug-fixer列表相互映射,获得所述bug信息模型的fixer-topic列表;
分派对比模块,与所述列表构建模块和所述映射模块连接,将所述bug信息对应的bug-topic列表与所述fixer-topic列表进行分派比对。
7.如权利要求6所述的基于版本提交信息的软件缺陷自动分派系统,其特征在于,该系统还包括显示模块,与所述分派对比模块连接,显示出匹配的合适的软件缺陷修复者。
8.如权利要求7所述的基于版本提交信息的软件缺陷自动分派系统,其特征在于,所述信息提取模块包括commit信息提取模块和bug信息提取模块;所述commit信息提取模块的第一端与版本控制工具仓库连接,第二端与所述列表构建模块连接,提取并构建所述commit信息模型;所述bug信息提取模块的第一端与软件bug仓库连接,第二端与所述列表构建模块连接,提取并构建所述bug信息。
9.如权利要求8所述的基于版本提交信息的软件缺陷自动分派系统,其特征在于,所述列表构建模块包括主题列表构建模块和关系列表构建模块;所述主题列表构建模块的第一端与所述bug信息提取模块连接,第二端与所述映射模块连接,第三端与所述分派对比模块连接,构建所述bug信息模型的bug-topic列表;所述关系列表构建模块的第一端与所述commit信息提取模块连接,第二端与所述映射模块连接,构建与所述bug信息模型对应的bug-fixer列表。
10.如权利要求9所述的基于版本提交信息的软件缺陷自动分派系统,其特征在于,所述主题列表构建模块中还设置有LDA模型;所述bug信息模型基于所述LDA模型计算得到所述bug-topic列表。
标题 | 发布/更新时间 | 阅读量 |
---|---|---|
一种基于数据筛选和数据过采样的跨项目缺陷预测方法 | 2020-05-11 | 254 |
一种基于缺陷规则和分类反馈的缺陷发现方法 | 2020-05-16 | 59 |
一种基于测试案例的测试方法、装置、存储介质和服务器 | 2020-05-13 | 129 |
用于应用中的错误诊断的方法、装置和计算机存储介质 | 2020-05-08 | 511 |
面向软件缺陷类分布不平衡的规则学习分类器集成方法 | 2020-05-14 | 327 |
一种针对Java语言的软件缺陷检测与提取方法 | 2020-05-12 | 891 |
一种基于卷积神经网络的软件缺陷定位方法、装置和介质 | 2020-05-19 | 683 |
一种软件缺陷检测方法、装置、计算机设备和存储介质 | 2020-05-08 | 730 |
一种软件的开发方法及开发系统 | 2020-05-08 | 262 |
一种基于度量技术的计量终端软件质量量化评价方法 | 2020-05-20 | 611 |
高效检索全球专利专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。
我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。
专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。