Techniques of Automatic Program Repair (APR) have the potential of thoroughly facilitating the task of producing quality software. After a promising start, however, progress in making APR practical has been hindered by the lack of a common framework to support the multiplicity of APR ideas and tools, and of target programming languages and environments. In this position paper we outline a general framework to enable the APR community to benefit from each other\'s advances, in particular through a standard language for describing bugs and their fixes. Such a common framework (which is also applicable to work on fault seeding) could be a tremendous benefit to researchers and developers of Interactive Development Environments (IDEs) who are working to make APR an effective part of the practical experience of software developers.
翻译:自动程序修复(APR)技术有望显著提升高质量软件生产的效率。然而,在取得初步进展后,由于缺乏支持多样化的APR思想与工具、以及不同目标编程语言与环境的通用框架,该技术的实用化进程受到阻碍。本立场论文提出一个通用框架,旨在使APR社区能够借鉴彼此的研究成果,特别是通过建立描述缺陷及其修复的标准化语言。这种通用框架(同样适用于故障注入研究)将为致力于将APR融入软件开发实践的研究人员和集成开发环境(IDE)开发者带来巨大裨益。