* ICSE 2018 *
Sun 27 May - Sun 3 June 2018 Gothenburg, Sweden
Wed 30 May 2018 11:00 - 11:20 at H1 room - Software Repair I Chair(s): Lars Grunske

Because of its potential impacts, search-based automated program repair has received great attention in the research community. However, its effectiveness is limited in the number of correct patches that can be successfully generated. There are two causes of such limitation. First, the search space does not contain the correct patch. Second, the search space is huge and therefore the correct patch cannot be generated (\ie correct patches are either generated after incorrect plausible ones or not generated within the time budget).

To increase the likelihood of including correct patches in the search space, we propose to work at a fine granularity in terms of AST nodes. This, however, will further enlarge the search space, increasing the challenge to find the correct patches. We address the challenge by devising a strategy to prioritize the candidate patches based on their likelihood of being correct. Specifically, we study the use of AST nodes’ context information to estimate the likelihood.

In this paper, we propose \textsc{CapGen}, a context-aware patch generation technique. The novelty which allows \textsc{CapGen} to produce more correct patches lies in three aspects: (1) The fine-granularity design enables it to find more correct fixing ingredients; (2) The context-aware prioritization of mutation operators enables it to constrain the search space; (3) Three context-aware models enable it to rank correct patches at high positions before incorrect plausible ones. We evaluate \textsc{CapGen} on \textsc{Defects4J} and compare it with the state-of-the-art program repair techniques. Our evaluation shows that \textsc{CapGen} outperforms and complements existing techniques. \textsc{CapGen} achieves a high precision of $84.00%$ and can prioritize the correct patches before $98.78%$ of the incorrect plausible ones.

Conference Day
Wed 30 May

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

11:00 - 12:30
Software Repair IJournal first papers / Technical Papers at H1 room
Chair(s): Lars GrunskeHumboldt-Universität zu Berlin
11:00
20m
Talk
Context-Aware Patch Generation for Better Automated Program Repair
Technical Papers
Ming WenThe Hong Kong University of Science and Technology, Junjie ChenPeking University, Rongxin WuDepartment of Computer Science and Engineering, The Hong Kong University of Science and Technology, Dan HaoPeking University, Shing-Chi CheungDepartment of Computer Science and Engineering, The Hong Kong University of Science and Technology
Pre-print
11:20
20m
Talk
Towards Practical Program Repair with On-Demand Candidate Generation
Technical Papers
Jinru Hua, Mengshi ZhangUniversity of Texas at Austin, USA, Kaiyuan Wang, Sarfraz KhurshidUniversity of Texas at Austin
File Attached
11:40
20m
Talk
A Correlation Study between Automated Program Repair and Test-Suite Metrics
Journal first papers
Jooyong YiInnopolis University, Shin Hwei Tan, Sergey MechtaevNational University of Singapore, Marcel BöhmeMonash University, Abhik RoychoudhuryNational University of Singapore
Pre-print
12:00
20m
Talk
Do Automated Program Repair Techniques Repair Hard and Important Bugs?
Journal first papers
Manish MotwaniUniversity of Massachusetts, Amherst, Sandhya Sankaranarayanan, René JustUniversity of Massachusetts, USA, Yuriy BrunUniversity of Massachusetts, Amherst
Link to publication DOI Pre-print
12:20
10m
Talk
Q&A in groups
Technical Papers