发明名称 一种基于缺陷报告分析的缺陷源代码定位方法
摘要 本发明公开一种基于缺陷报告分析的缺陷源代码定位方法,首先获得新的待检查缺陷报告;如果不存在缺陷定位模型,建立缺陷定位模型。建立缺陷定位模型:获取大量历史缺陷报告、源代码和缺陷定位标记,构造训练集合;初始化缺陷定位模型;利用当前模型,提取训练集合缺陷报告和源代码的统一特征;计算当前模型的缺陷定位训练误差;若缺陷定位模型的训练误差低于预设阈值,模型训练完成,否则更新缺陷定位模型权重参数,继续训练。利用模型提取待检查的缺陷报告和源代码的统一特征并利用统一特征定位包含缺陷的源代码模块;输出定位到的缺陷源代码模块;若还有缺陷报告尚未检查,继续获取并分析新的待检查缺陷报告,否则缺陷定位过程结束。
申请公布号 CN105930277A 申请公布日期 2016.09.07
申请号 CN201610543653.3 申请日期 2016.07.11
申请人 南京大学 发明人 黎铭;霍轩;周志华
分类号 G06F11/36(2006.01)I 主分类号 G06F11/36(2006.01)I
代理机构 南京苏高专利商标事务所(普通合伙) 32204 代理人 李玉平
主权项 一种基于缺陷报告分析的缺陷源代码定位方法,其特征在于,包括如下步骤:步骤(1)获得新的待检查缺陷报告;步骤(2)判断是否已存在训练完成的缺陷定位模型,如果不存在,转入步骤(3),建立缺陷定位模型;如果存在,转入步骤(9);步骤(3)获取历史缺陷报告、源代码和缺陷定位标记,构造训练集合;步骤(4)初始化缺陷定位模型;步骤(5)利用当前缺陷定位模型,提取训练集合缺陷报告和源代码的统一特征;步骤(6)利用提取的统一特征,计算当前模型的缺陷定位训练误差;步骤(7)若当前模型的训练误差低于预设阈值,模型训练完成,转入步骤(9),否则转入步骤(8);步骤(8)更新缺陷定位模型权重参数,转入步骤(5)继续训练模型;步骤(9)利用缺陷定位模型,提取待检查的缺陷报告和源代码统一特征;步骤(10)利用统一特征定位包含缺陷的源代码模块;步骤(11)输出定位到的缺陷源代码模块,将缺陷情况反馈给模块开发者;步骤(12)若还有缺陷报告尚未检查,转步骤(1),否则缺陷定位过程结束。
地址 210046 江苏省南京市栖霞区仙林大道163号