PraPR: practical program repair via bytecode mutation


연구 분야: Verification



학회: ASE '19: Proceedings of the 34th IEEE/ACM International Conference on Automated Software Engineering


초록

Automated program repair (APR) is one of the recent advances in automated software engineering aiming for reducing the burden of debugging by suggesting high-quality patches that either directly fix the bugs, or help the programmers in the course of manual debugging. We believe scalability, applicability, and accurate patch validation are the main design objectives for a practical APR technique. In this paper, we present PraPR, our implementation of a practical APR technique that operates at the level of JVM bytecode. We discuss design decisions made in the development of PraPR, and argue that the technique is a viable baseline toward attaining aforementioned objectives. Our experimental results show that: (1) PraPR can fix more bugs than state-of-the-art APR techniques and can be over 10X faster, (2) state-of-the-art APR techniques suffer from dataset overfitting, while the simplistic template-based PraPR performs more consistently on different datasets, and (3) PraPR can fix bugs for other JVM languages, such as Kotlin. PraPR is publicly available at https://github.com/prapr/prapr.


Author Profile
Ali Ghanbari

University of Texas at Dallas

Austria
Author Profile
Lingming Zhang

University of Texas at Dallas

Austria

📄 논문 정보

발행 연도 2020년
인용수 9
출판 국가 Austria
사이트 ACM
좋아요 수 0

연관 논문 목록 (318건)