Providing Real-time Assistance for Repairing Runtime Exceptions using Stack Overflow Posts
Sonal Mahajan, Mukul R. Prasad

TL;DR
This paper introduces MAESTRO, a real-time tool that assists developers in repairing runtime exceptions in Java by recommending relevant Stack Overflow posts and synthesizing patches, outperforming baseline methods in accuracy and speed.
Contribution
MAESTRO extends previous work by mining Runtime Exception Patterns from Stack Overflow to improve real-time bug repair recommendations for Java runtime exceptions.
Findings
Correct patch at top position in 27% of cases
Overall useful artifact in 81% of cases
Generates patches in around 1 second on average
Abstract
Runtime Exceptions (REs) are an important class of bugs that occur frequently during code development. Traditional Automatic Program Repair (APR) tools are of limited use in this "in-development" use case, since they require a test-suite to be available as a patching oracle. Thus, developers typically tend to manually resolve their in-development REs, often by referring to technical forums, such as Stack Overflow (SO). To automate this manual process we extend our previous work, MAESTRO, to provide real-time assistance to developers for repairing Java REs by recommending a relevant patch-suggesting SO post and synthesizing a repair patch from this post to fix the RE in the developer's code. MAESTRO exploits a library of Runtime Exception Patterns (REPs) semi-automatically mined from SO posts, through a relatively inexpensive, one-time, incremental process. An REP is an abstracted…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Software System Performance and Reliability · Software Reliability and Analysis Research
