计算机科学
调试
软件工程
人气
软件开发
数据科学
背景(考古学)
软件
分类学(生物学)
开放式研究
人工智能
程序设计语言
万维网
心理学
社会心理学
古生物学
植物
生物
作者
Kai Huang,Zhengzi Xu,Su Yang,Hongyu Sun,Xuejun Li,Zheng Yan,Yuqing Zhang
摘要
With the rapid development and large-scale popularity of program software, modern society increasingly relies on software systems. However, the problems exposed by software have also come to the fore. The software bug has become an important factor troubling developers. In this context, Automated Program Repair (APR) techniques have emerged, aiming to automatically fix software bug problems and reduce manual debugging work. In particular, benefiting from the advances in deep learning, numerous learning-based APR techniques have emerged in recent years, which also bring new opportunities for APR research. To give researchers a quick overview of APR techniques’ complete development and future opportunities, we review the evolution of APR techniques and discuss in depth the latest advances in APR research. In this paper, the development of APR techniques is introduced in terms of four different patch generation schemes: search-based, constraint-based, template-based, and learning-based. Moreover, we propose a uniform set of criteria to review and compare each APR tool and then discuss the current state of APR development. Finally, we analyze current challenges and future directions, especially highlighting the critical opportunities that large language models bring to APR research.
科研通智能强力驱动
Strongly Powered by AbleSci AI