买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
申请/专利权人:杭州电子科技大学
摘要:本发明公开了基于上下文感知代码翻译和特征融合的软件缺陷定位方法。本发明首先从缺陷报告和源文件中提取不同类型的信息检索特征,并且利用包含稠密块和过渡块的线性模型将信息检索的不同特征关联起来;然后构建源文件的浅层语义信息和缺陷报告匹配模块以及源文件的深层语义信息和缺陷报告匹配模块,将源文件的代码转化成的自然语言描述作为源文件的深层语义,利用深层语义和缺陷报告进行语义匹配,最后再构建融合模块将各模块的结果进行融合,得到最终的定位结果。本发明克服了现阶段缺陷定位技术中使用不充分的特征表征源文件的局限性,丰富了源文件的特征表达能力,帮助模型更好地理解源文件,从而提高缺陷定位最终预测的准确度。
主权项:1.一种基于上下文感知代码翻译和特征融合的软件缺陷定位方法,包括以下步骤:步骤1、获取缺陷报告和源文件;步骤2、构建传统信息检索与缺陷报告匹配模块:步骤2.1、根据软件工程领域的专业知识,提取步骤1中缺陷报告和源文件的传统信息检索特征,所述特征包括rVSM得分、协同过滤评分、堆栈跟踪评分、圈复杂度、缺陷修复近因、缺陷修复频率;步骤2.2、将步骤2.1得到的传统信息检索特征输入全连接网络DenseNet,得到源文件与缺陷报告在传统信息检索层面的匹配得分wide_score;其特征在于,所述方法还包括以下步骤:步骤3、构建源文件的浅层语义信息和缺陷报告匹配模块:步骤3.1、从步骤1缺陷报告中获取总结信息和描述信息,从步骤1源文件中获取程序信息和片段信息;步骤3.2、将缺陷报告的总结信息、描述信息与源文件的程序信息、片段信息进行两两匹配,计算得到总结-程序信息、总结-片段信息、描述-程序信息、描述-片段信息四个匹配分数,作为浅层语义得分shallow_semantic;步骤4、构建源文件的深层语义信息和缺陷报告匹配模块:步骤4.1、利用编译器和反编译器将步骤1源文件中的文本转化成代码的指令序列;步骤4.2、利用上下文感知的代码翻译技术将指令序列翻译成自然语言描述,所述自然语言描述即为源文件的深层语义信息;步骤4.3、将步骤3.1中缺陷报告的总结信息、描述信息与源文件的自然语言描述进行匹配,计算得到总结-指令信息和描述-指令信息两个匹配分数,作为深层语义得分deep_semantic;步骤5、融合匹配模块结果:步骤5.1、拼接shallow_semantic和deep_semantic,并将拼接结果放入全连接层中,得到总语义得分semantic_score;步骤5.2、将步骤5.1得到的总语义得分semantic_score与步骤2.2得到的缺陷报告的匹配分数与传统信息检索与缺陷报告匹配模块中的匹配分数wide_score进行融合,得到缺陷报告和源文件之间的最终相似度分数;步骤6、根据最终相似度分数对源文件进行降序排序,然后将排序好的源文件列表推荐给开发人员,以辅助进行缺陷定位。
全文数据:
权利要求:
百度查询: 杭州电子科技大学 基于上下文感知代码翻译和特征融合的软件缺陷定位方法
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。