Litcius/Paper detail

Let’s Talk <i>With</i> Developers, Not <i>About</i> Developers: A Review of Automatic Program Repair Research

Emily Winter, Vesna Nowack, David Bowes, Steve Counsell, Tracy Hall, Sæmundur Ó. Haraldsson, John R. Woodward

2022IEEE Transactions on Software Engineering25 citationsDOIOpen Access PDF

Abstract

Automatic program repair (APR) offers significant potential for automating some coding tasks. Using APR could reduce the high costs historically associated with fixing code faults and deliver significant benefits to software engineering. Adopting APR could also have profound implications for software developers’ daily activities, transforming their work practices. To realise the benefits of APR it is vital that we consider how developers feel about APR and the impact APR may have on developers’ work. Developing APR tools without consideration of the developer is likely to undermine the success of APR deployment. In this paper, we critically review how developers are considered in APR research by analysing how human factors are treated in 260 studies from Monperrus’s Living Review of APR. Over half of the 260 studies in our review were motivated by a problem faced by developers (e.g., the difficulty associated with fixing faults). Despite these human-oriented motivations, fewer than 7% of the 260 studies included a human study. We looked in detail at these human studies and found their quality mixed (for example, one human study was based on input from only one developer). Our results suggest that software developers are often talked <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">about</i> in APR studies, but are rarely talked <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">with</i> . A more comprehensive and reliable understanding of developer human factors in relation to APR is needed. Without this understanding, it will be difficult to develop APR tools and techniques which integrate effectively into developers’ workflows. We recommend a future research agenda to advance the study of human factors in APR.

Topics & Concepts

Computer scienceSoftware engineeringSoftware deploymentSoftwareCoding (social sciences)Software developmentWorld Wide WebProgramming languageStatisticsMathematicsSoftware Engineering ResearchSoftware Testing and Debugging TechniquesSoftware Reliability and Analysis Research
Let’s Talk <i>With</i> Developers, Not <i>About</i> Developers: A Review of Automatic Program Repair Research | Litcius