Explainable Software Bot Contributions: Case Study of Automated Bug Fixes

Explainable Software Bot Contributions: Case Study of Automated Bug Fixes
复制标题

可解释的软件机器人贡献:自动错误修复的案例研究

DOI:
10.1109/botse.2019.00010
复制
发表时间:
2019
期刊:
2019 IEEE/ACM 1st International Workshop on Bots in Software Engineering (BotSE)
影响因子:
--
通讯作者:
Monperrus Martin
Monperrus Martin
中科院分区:
--
文献类型:
--
作者:
Monperrus Martin

文献摘要

被引文献

相似文献

在软件项目中,特别是在开源项目中,贡献是对项目所做的有价值的工作:编写代码,报告错误,翻译,改进文档,创建图形等。我们现在正处于一个激动人心的时代的开始,软件机器人将做出与人类相似的贡献。没有解释的枯燥贡献经常被忽略或拒绝,因为贡献本身是不可理解的,因为它们没有放在更大的背景下,因为它们不是基于核心开发人员社区共享的习惯用法。我们已经运行了一个名为Repairnator的程序修复机器人2年,并注意到“干补丁”的问题:一个补丁没有说它修复了哪个bug,或者没有解释补丁对系统的影响。我们设想程序修复系统,产生一个“可解释的错误修复”:一个集成的包,至少1)补丁,2)它的解释在自然或控制的语言,和3)突出的行为差异与例子。在本文中,我们概括并建议软件机器人的贡献必须是可解释的,必须将它们置于全球软件开发对话的背景下。
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.