期刊文献+

程序缺陷自动修复研究进展及关键问题 被引量:1

Research Progress and Key Issues of Automatic Program Repair
下载PDF
导出
摘要 程序缺陷自动修复是指针对程序中存在的缺陷,自动生成相应的程序补丁,进而使程序恢复正常运行.首先,根据补丁生成方式的不同,将程序缺陷自动修复方法划分为4类,分别为基于搜索的、基于语义的、基于机器学习的以及基于错误报告驱动的程序缺陷自动修复方法.基于搜索的程序缺陷自动修复方法运用启发式算法在搜索空间内通过搜索生成程序补丁;基于语义的程序缺陷自动修复方法将修复约束作为合成程序补丁的规约,最后通过约束求解器生成程序补丁;基于机器学习的程序缺陷自动修复方法使用数据集训练并生成修复模型,通过修复模型生成程序补丁;基于错误报告驱动的程序缺陷自动修复方法通过利用程序执行以及用户反馈的错误信息生成程序补丁.本文对以上4类程序缺陷自动修复方法进行了详细阐述;其次,总结了检验程序缺陷自动修复方法及工具修复效果所用到的缺陷库;最后,分析了程序缺陷自动修复在工业界的应用现状并总结了该领域面临的关键问题及未来研究的方向. Automatic program repair refers to automatically generating the corresponding program patches for the defects existing in the program,and then restoring the normal operation of the program.First,automatic program repair methods are classified into four categories based on the different patch generation methods,which are search-based,semantic-based,machine learning-based,and bug report-driven automatic program repair methods.Search-based automatic program repair methods use heuristic algorithms to generate program patches by searching in the search space.Semantic-based automatic program repair methods use repair constraints as a statute for synthesizing program patches,and finally generate the program patches through a constraint solver.Machine learning-based automatic program repair methods use datasets to train and generate repair models,and generate program patches through the repair models.Bug report-driven automatic program repair methods generate program patches by using the error information of the program execution and user feedback.The above four types of automatic program repair methods are described in detail.Second,the defect libraries used to test the repair effect of automatic program repair methods and tools are summarized.Finally,the application status of automatic program repair in industry is analyzed,and the key issues and future research directions in this area are summarized.
作者 曹鹤玲 刘昱 赵晨阳 王玉华 CAO He-ling;LIU Yu;ZHAO Chen-yang;WANG Yu-hua(College of Information Science and Engineering,Henan University of Technology,Zhengzhou 450001,China;Key Laboratory of Grain Information Processing and Control(Henan University of Technology),Ministry of Education,Zhengzhou 450001,China)
出处 《小型微型计算机系统》 CSCD 北大核心 2022年第3期644-654,共11页 Journal of Chinese Computer Systems
基金 国家自然科学基金项目(61602154)资助。
关键词 程序缺陷自动修复 约束求解 机器学习 错误报告 缺陷库 automatic program repair constraint solving machine learning bug report defect library
  • 相关文献

参考文献7

二级参考文献24

共引文献80

同被引文献2

引证文献1

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部