[发明专利]一种基于迁移性分析的跨项目缺陷预测方法有效
申请号: | 201910524720.0 | 申请日: | 2019-06-18 |
公开(公告)号: | CN110175726B | 公开(公告)日: | 2021-03-26 |
发明(设计)人: | 余跃;张迅晖;毛新军;曾雅蓉;王涛;李志星;范强 | 申请(专利权)人: | 中国人民解放军国防科技大学 |
主分类号: | G06Q10/04 | 分类号: | G06Q10/04;G06F17/18;G06F11/36 |
代理公司: | 长沙国科天河知识产权代理有限公司 43225 | 代理人: | 邱轶 |
地址: | 410073 湖*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 迁移性 分析 项目 缺陷 预测 方法 | ||
1.一种基于迁移性分析的跨项目缺陷预测方法,其特征在于:
S1.根据开源社区中开源项目包含的pull request数量及开源语言种类,选取开源社区中开源项目作为迁移分析的项目集合,进行数据采集;
其中数据采集内容包括:项目源代码、历史代码提交信息、代码提交更改信息、代码提交历史轨迹、代码提交更改的文件、代码提交更改的文件对应的历史开发人员数量、代码提交更改文件的平均时间间隔以及缺陷信息;其中缺陷信息包括缺陷报告、缺陷报告标记位和缺陷报告对应的编号,pull request、ReadMe文件;
S2.提取迁移分析项目集合中的每个开源项目对应的历史代码提交信息和缺陷信息,将S1中采集到的数据分为引入缺陷的代码提交和未引入缺陷的代码提交;
S3.将S2中得到的引入缺陷的代码提交分别提取在扩散维度、代码维度、代码更改目的维度、文本信息维度和历史维度下代码提交可能引入缺陷的项目内度量因素,得到代码提交可能引入缺陷的项目内多维度量因素;
S4.利用S2中得到的引入缺陷的代码提交以及S3中提取的可能引入缺陷的项目内多维度量因素,利用随机森林方法训练迁移分析项目集合中每个项目的项目内缺陷预测模型;
S5.统计迁移分析项目集合中不同项目间,在项目维度、技术维度和人员维度下影响项目间缺陷预测的项目间关联关系多维度量因素;
S6.根据S4中得到的迁移分析项目集合中每个项目的项目内缺陷预测模型,计算迁移分析项目集合中每个项目的项目内缺陷预测模型对其他项目缺陷预测的准确率,得到项目间缺陷预测准确率;
S7.利用S5中提取的项目间关联关系多维度量因素以及S6中计算得到的项目间缺陷预测准确率,设计回归分析模型,得出在项目维度、技术维度和人员维度下对跨项目缺陷预测效果的影响;
S8.根据S7中得出的在项目维度、技术维度和人员维度下对跨项目缺陷预测效果的影响,对待预测项目进行跨项目预测模型的选取,通过集体投票的方式得出待预测项目的缺陷预测结果。
2.如权利要求1所述的一种基于迁移性分析的跨项目缺陷预测方法,其特征在于:
S1中所述缺陷报告中缺陷标记位为0时,表示缺陷,当标记位为1时表示非缺陷信息。
3.如权利要求2所述的一种基于迁移性分析的跨项目缺陷预测方法,其特征在于:
所述S2包括:
S21.找到缺陷标记位为0的缺陷报告对应的代码提交;
S22.遍历S21中所有的代码提交,通过历史代码提交信息筛选出所有已经修复了缺陷的代码提交;
S23.找到S22中所有已经修复了缺陷的代码提交对应的代码源文件;
S24.查看步骤S23中找到的代码源文件,上一次被更改时对应的代码提交被认为是引入缺陷的代码提交,其余的代码提交被认为是未引入缺陷的代码提交。
4.如权利要求1所述的一种基于迁移性分析的跨项目缺陷预测方法,其特征在于:
所述S3包括:
S3.1.扩散维度下,代码提交可能引入缺陷的项目内度量因素包括代码提交更改的代码源文件数量和代码更改分布熵;
S3.2.代码维度下,代码提交可能引入缺陷的项目内度量因素包括代码提交前代码文件的行数、新增加的代码行数和删除的代码行数;
S3.3.代码更改目的维度下,代码提交可能引入缺陷的项目内度量因素包括引入当前缺陷的代码提交是否修复了一个缺陷以及引入当前缺陷的代码提交关联的缺陷报告数量;
S3.4.文本信息维度下,代码提交可能引入缺陷的项目内度量因素包括代码提交信息的长度和引入缺陷的可能性;
S3.5.历史维度下,代码提交可能引入缺陷的项目内度量因素包括代码提交者的历史代码贡献次数、代码提交更改的代码源文件对应的历史开发人员数量、本次代码提交更改的代码源文件与上一次代码提交更改的代码源文件之间交集的大小和代码提交更改代码源文件的平均时间间隔。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学,未经中国人民解放军国防科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910524720.0/1.html,转载请声明来源钻瓜专利网。
- 同类专利
- 专利分类
G06Q 专门适用于行政、商业、金融、管理、监督或预测目的的数据处理系统或方法;其他类目不包含的专门适用于行政、商业、金融、管理、监督或预测目的的处理系统或方法
G06Q10-00 行政;管理
G06Q10-02 .预定,例如用于门票、服务或事件的
G06Q10-04 .预测或优化,例如线性规划、“旅行商问题”或“下料问题”
G06Q10-06 .资源、工作流、人员或项目管理,例如组织、规划、调度或分配时间、人员或机器资源;企业规划;组织模型
G06Q10-08 .物流,例如仓储、装货、配送或运输;存货或库存管理,例如订货、采购或平衡订单
G06Q10-10 .办公自动化,例如电子邮件或群件的计算机辅助管理