Explainable Software Bot Contributions: Case Study of Automated Bug Fixes

05/07/2019
by   Martin Monperrus, et al.
0

In a software project, esp. in open-source, a contribution is a valuable piece of work made to the project: writing code, reporting bugs, translating, improving documentation, creating graphics, etc. We are now at the beginning of an exciting era where software bots will make contributions that are of similar nature than those by humans. Dry contributions, with no explanation, are often ignored or rejected, because the contribution is not understandable per se, because they are not put into a larger context, because they are not grounded on idioms shared by the core community of developers. We have been operating a program repair bot called Repairnator for 2 years and noticed the problem of "dry patches": a patch that does not say which bug it fixes, or that does not explain the effects of the patch on the system. We envision program repair systems that produce an "explainable bug fix": an integrated package of at least 1) a patch, 2) its explanation in natural or controlled language, and 3) a highlight of the behavioral difference with examples. In this paper, we generalize and suggest that software bot contributions must explainable, that they must be put into the context of the global software development conversation.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
11/24/2018

How to Design a Program Repair Bot? Insights from the Repairnator Project

Program repair research has made tremendous progress over the last few y...
research
04/30/2021

Explanation-Based Human Debugging of NLP Models: A Survey

To fix a bug in a program, we need to locate where the bug is, understan...
research
07/16/2021

Towards a Benchmark Set for Program Repair Based on Partial Fixes

Software bugs significantly contribute to software cost and increase the...
research
08/01/2019

Set-Based Models for Cryptocurrency Software

Emin Gün Sirer once said: It's clear that writing a robust, secure smart...
research
07/12/2019

iFixR: Bug Report driven Program Repair

Issue tracking systems are commonly used in modern software development ...
research
04/05/2023

Explainable Automated Debugging via Large Language Model-driven Scientific Debugging

Automated debugging techniques have the potential to reduce developer ef...
research
08/28/2023

STEAM: Simulating the InTeractive BEhavior of ProgrAMmers for Automatic Bug Fixing

Bug fixing holds significant importance in software development and main...

Please sign up or login with your details

Forgot password? Click here to reset