期刊文献+
共找到1篇文章
< 1 >
每页显示 20 50 100
基于软件历史仓库和抽象语法树的相似缺陷识别方法 被引量:7
1
作者 龚丹 王甜甜 +1 位作者 苏小红 董美含 《系统工程与电子技术》 EI CSCD 北大核心 2020年第10期2399-2408,共10页
软件开发过程中,软件开发人员常常通过搜索软件历史仓库(historical software repository,HSR),再经复制/粘贴以实现软件复用。HSR中会保存被复用的代码的缺陷及修复信息,辅助处理相似缺陷。基于此,提出一种基于HSR挖掘的相似缺陷识别... 软件开发过程中,软件开发人员常常通过搜索软件历史仓库(historical software repository,HSR),再经复制/粘贴以实现软件复用。HSR中会保存被复用的代码的缺陷及修复信息,辅助处理相似缺陷。基于此,提出一种基于HSR挖掘的相似缺陷识别方法。首先,基于变更日志的分析,从HSR中提取出已知缺陷的模块,建立bug模块库。然后,采用基于抽象语法树(abstract syntax tree,AST)的相似代码检测方法,识别待测试软件与bug模块库中相似的代码,并借助HSR中保存的相应缺陷及修复信息,完成待测试软件中可能包含潜在缺陷的模块的识别。同时,为提高相似代码的识别精度,优化基于AST的代码特征度量。在18个C程序、164对克隆代码上进行实验,结果表明所提方法能够识别出全部相似代码且性能优于已有工具。在人工构建的bug模块库上验证了代码相似性对相似缺陷识别的作用。最后,在8个真实的大型C项目上进行验证,平均缺陷召回率达到94%,表明挖掘HSR可以有效地为跨项目传播的相似代码提供缺陷理解支持。 展开更多
关键词 软件复用 软件历史仓库 克隆代码 相似缺陷 抽象语法树
下载PDF
上一页 1 下一页 到第
使用帮助 返回顶部