一句话:通过对 Bloomberg 的焦点小组研究,提出以开发者为中心、可定制并融入工作流的自动程序修复工具建议。
本文报告了在 Bloomberg 开展的自动程序修复(APR)定性研究。研究者组织了六个焦点小组,共十七名参与者,包括 APR 工具开发者与使用者,围绕原型工具 Fixie 的开发、开发者早期使用体验以及未来交互期望展开讨论。研究发现,Bloomberg 的 APR 开发日益以用户为中心,强调修复结果的呈现方式和可定制性等特性;使用过 Fixie 的开发者尤其关注何时、如何呈现修复等务实问题。基于这些发现,作者提出一系列建议:APR 工具应“从小处着手”、可定制、契合开发者工作流,并利用修复机器人及可解释 AI 的进展。
This paper reports on qualitative research into automatic program repair (APR) at Bloomberg. Six focus groups were conducted with a total of seventeen participants (including both developers of the APR tool and developers using the tool) to consider: the development at Bloomberg of a prototype APR tool (Fixie); developers’ early experiences using the tool; and developers’ perspectives on how they would like to interact with the tool in future. APR is developing rapidly and it is important to understand in greater detail developers' experiences using this emerging technology. In this paper, we provide in-depth, qualitative data from an industrial setting. We found that the development of APR at Bloomberg had become increasingly user-centered, emphasising how fixes were presented to developers, as well as particular features, such as customisability. From the focus groups with developers who had used Fixie, we found particular concern with the pragmatic aspects of APR, such as how and when fixes were presented to them. Based on our findings, we make a series of recommendations to inform future APR development, highlighting how APR tools should 'start small', be customisable, and fit with developers' workflows. We also suggest that APR tools should capitalise on the promise of repair bots and draw on advances in explainable AI.
@inproceedings{paperbot7095,
title = {Towards developer-centered automatic program repair: findings from Bloomberg},
author = {Emily Rowan Winter and Vesna Nowack and David Bowes and Steve Counsell and Tracy Hall and Sæmundur Haraldsson and John Woodward and Serkan Kirbas and Etienne Windels and Olayori McBello and Abdurahman Atakishiyev and Kevin Kells and Matthew Pagano},
booktitle = {FSE},
year = {2022},
doi = {10.1145/3540250.3558953}
}