DeepAI AI Chat
Log In Sign Up

How to trust auto-generated code patches? A developer survey and empirical assessment of existing program repair tools

08/30/2021
by   Yannic Noller, et al.
National University of Singapore
Association for Computing Machinery
0

Automated program repair is an emerging technology that seeks to automatically rectify bugs and vulnerabilities using learning, search, and semantic analysis. Trust in automatically generated patches is necessary for achieving greater adoption of program repair. Towards this goal, we survey more than 100 software practitioners to understand the artifacts and setups needed to enhance trust in automatically generated patches. Based on the feedback from the survey on developer preferences, we quantitatively evaluate existing test-suite based program repair tools. We find that they cannot produce high-quality patches within a top-10 ranking and an acceptable time period of 1 hour. The developer feedback from our qualitative study and the observations from our quantitative examination of existing repair tools point to actionable insights to drive program repair research. Specifically, we note that producing repairs within an acceptable time-bound is very much dependent on leveraging an abstract search space representation of a rich enough search space. Moreover, while additional developer inputs are valuable for generating or ranking patches, developers do not seem to be interested in a significant human-in-the-loop interaction.

READ FULL TEXT
11/23/2022

Program Repair

Automated program repair is an emerging technology which consists of a s...
02/03/2023

Parfum: Detection and Automatic Repair of Dockerfile Smells

Docker is a popular tool for developers and organizations to package, de...
04/16/2021

High-Quality Automated Program Repair

Automatic program repair (APR) has recently gained attention because it ...
04/19/2020

Interactive Patch Filtering as Debugging Aid

It is widely recognized that program repair tools need to have a high pr...
10/26/2019

Automated Classification of Overfitting Patches with Statically Extracted Code Features

Automatic program repair (APR) aims to reduce the cost of manually fixin...
08/25/2022

Social Diversity for ATL Repair

Model transformations play an essential role in the Model-Driven Enginee...