Automated program repair plays an important role in alleviating the burden of software maintenance and improving both software quality and trustworthy. Although the research on automated program repair has made some important progress, there still exists some apparent shortcomings on the effectiveness of key repair algorithm, benchmark programs, and fault localization techniques based on automated repair. Focusing on these shortcomings in the area of automated program repair, we plan to study the effectiveness of repair algorithm based on code reuse, create a set of benchmark programs with both pervasiveness and representativeness, suggest some rigorous evaluation methods, and investigate fault localization techniques from the viewpoint of automated program repair. Through the research of our project, we attempt to build some prototype systems to confirm our study, and push forward the advance and application of research area on automated program repair.
软件自动修复是减轻软件维护负担,提高软件质量和可信性的重要手段。虽然近来软件自动修复技术取得了重要进展,但是在核心修复算法有效性、基准程序集、面向自动修复的错误定位技术等方面的研究工作仍存在着明显不足。本项目拟根据上述不足,立足于软件自动修复领域,着重研究基于代码复用理论的修复算法有效性,构建普适兼具代表性的基准程序集及标准化的技术评估方案,提出从自动修复角度研究错误定位技术。通过项目研究,建立相应的原型系统验证相关研究成果,推动软件自动修复技术的发展和应用。
软件自动修复是实现软件维护自动化,提高软件质量和可信性的重要手段。课题系统研究了软件自动修复相关方法和技术体系,基于面向软件自动修复的错误自动定位新特点,研究加权随机算法和排序优先算法对自动修复效果的影响,提出了新的面向软件自动修复的错误定位技术评估标准,为错误定位技术领域的发展提供了全新的研究方向;总结目前软件自动修复技术相关评估标准和统计方法,研究具体可行的评估标准和分析方法;针对数值程序精度缺陷特点,提出了应用级和数值库级精度缺陷自动检测修复技术;以开源社区软件资源为搜索空间,研究提出一种基于学习方法的错误修复提交版本关联性识别技术。.在上述研究成果基础上,课题研制了一系列的软件自动修复原型工具:基于语句可疑值排序优先算法的软件自动修复工具RFA-Nopol、基于语句可疑值比例优先算法的软件自动修复工具SFA-Nopol、基于学习方法的错误修复提交版本关联性识别工具SupBCFinder、精度缺陷修复工具AutoRNP。以在学术界广泛使用的Defects4J程序集和GSL数值程序集为基准程序集,基于前述原型工具,完成一系列实验验证,结果表明课题组取得了具有创新性和有效性的研究成果。.课题组共发表论文11篇,包括CCF推荐的A/B/C类论文5篇,SCI/EI检索论文9篇。其中关于软件自动修复中的语句选择方法评估论文发表在SATE 2018,并被会议组推荐至期刊;数值计算精度缺陷触发的高效全局搜索技术论文获得ASPEC 2017最佳论文奖;针对精度缺陷的软件自动修复论文发表在国际顶级会议POPL 2019。课题组申请专利和软件著作权2项,开源公布软件自动修复工具2个。在课题支持下,3位研究生先后获得了博士或硕士学位,1位本科生获得了学士学位。
{{i.achievement_title}}
数据更新时间:2023-05-31
采用深度学习的铣刀磨损状态预测模型
污染土壤高压旋喷修复药剂迁移透明土试验及数值模拟
热塑性复合材料机器人铺放系统设计及工艺优化研究
一类基于量子程序理论的序列效应代数
步行设施内疏散行人拥挤踩踏仿真研究
软件自动修复技术研究
面向软件自动修复的错误定位技术研究
依托开源软件资源的移植型自动修复技术研究
软件崩溃自动化分析的关键技术研究