国内刊号:11-2560/TP
国际刊号:1000-9825
发布日期:
作者:姜佳君,陈俊洁,熊英飞
单位:姜佳君,天津大学智能与计算学部, 天津 30035011,陈俊洁,天津大学智能与计算学部, 天津 30035002,熊英飞,北京大学信息科学技术学院 计算机科学技术系 软件研究所, 北京 100871;高可信软件技术教育部重点实验室(北京大学), 北京 10087103
关键词:软件维护;软件质量保障;软件缺陷修复;程序调试;软件自动化
基金:国家自然科学基金(62002256,61922003);天津市智能制造专项资金项目(20193155)
软件缺陷是软件开发和维护过程中不可避免的.随着现代软件规模的不断变大,软件缺陷的数量以及修复难度随之增加,为企业带来了巨大的经济损失.修复软件缺陷,成为了开发人员维护软件质量的重大负担.软件缺陷自动修复技术有希望将开发者从繁重的调试中解脱出来,近年来成为热门的研究领域之一.搜集了94篇该领域最新的高水平论文,进行了详细的分析和总结.基于缺陷修复技术在补丁生成阶段所使用的技术手段不同,系统性地将软件自动修复技术分为4大类,分别是基于启发式搜索、基于人工模板、基于语义约束和基于统计分析的修复技术.特殊地,根据对近几年最新研究的总结,首次提出了基于统计分析的技术分类,对已有分类进行了补充和完善.随后,基于对已有研究的分析,总结了该领域研究所面临的关键挑战及对未来研究的启示.最后,对缺陷修复领域常用的基准数据集和开源工具进行了总结.
来源:2021年第9期
《软件学报》期刊编辑部