RATCHET : Retrieval augmented transformer for program repair
Publication Type
Conference Proceeding Article
Publication Date
10-2024
Abstract
Automated Program Repair (APR) presents the promising momentum of releasing developers from the burden of manual debugging tasks by automatically fixing bugs in various ways. Recent advances in deep learning inspire many works in employing deep learning techniques to fixing buggy programs. However, several challenges remain unaddressed: (1) state-of-the-art fault localization techniques often require additional artifacts, such as bug-triggering test cases or bug reports. These artifacts are not always available in the early development phases; (2) Sequence-to-Sequence model-based APR often requires additional contexts with high quality to generate patches. Yet, it is challenging to identify high-quality contexts that are not common in programs.In this paper, with the redundancy assumption in program repair, we propose a dual deep learning-based APR tool, RATCHET, for localizing (RATCHET-FL) and repairing (Ratchet-PG) buggy programs. Ratchet-FL localizes buggy statements based on the feature learned by a simple BiLSTM model from the code, without any bug-triggering test cases or bug reports. Ratchet-PG relies on our proposed retrieval augmented transformer to learn the historical patches and generate patches for fixing bugs. We evaluate the effectiveness of Ratchet with in-the-lab DrRepair dataset and in-the-wild dataset Ratchet-DS (curated in this work). Our experimental results show that Ratchet outperforms state-of-the-art deep learning approaches on fault localization with 39.8-96.4% accuracy and patch generation with 18.4-46.4% repair accuracy.
Keywords
Automated Program Repair, Deep learning, Bugs fixing, Program repair, Bug-triggering test, Fault localization
Discipline
Artificial Intelligence and Robotics
Research Areas
Intelligent Systems and Optimization
Publication
Proceedings of the 35th IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW 2024) : Tsukuba, Japan, October 28-31
First Page
427
Last Page
438
Identifier
10.1109/ISSRE62328.2024.00048
Publisher
IEEE
City or Country
Tsukuba
Citation
WANG, Jian; LIU, Shangqing; XIE, Xiaofei; KAI, Siow Jingkai; LIU, Kui; and LI, Yi.
RATCHET : Retrieval augmented transformer for program repair. (2024). Proceedings of the 35th IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW 2024) : Tsukuba, Japan, October 28-31. 427-438.
Available at: https://ink.library.smu.edu.sg/sis_research/9857
Additional URL
https://doi.org/10.1109/ISSRE62328.2024.00048