Abstract
Continuous refactoring is necessary to maintain source code quality and to cope with technical debt. Since manual refactoring is inefficient and error-prone, various solutions for automated refactoring have been proposed in the past. However, empirical studies have shown that these solutions are not widely accepted by software developers and most refactorings are still performed manually. For example, developers reported that refactoring tools should support functionality for reviewing changes. They also criticized that introducing such tools would require substantial effort for configuration and integration into the current development environment. In this paper, we present our work towards the Refactoring-Bot, an autonomous bot that integrates into the team like a human developer via the existing version control platform. The bot automatically performs refactorings to resolve code smells and presents the changes to a developer for asynchronous review via pull requests. This way, developers are not interrupted in their workflow and can review the changes at any time with familiar tools. Proposed refactorings can then be integrated into the code base via the push of a button. We elaborate on our vision, discuss design decisions, describe the current state of development, and give an outlook on planned development and research activities.
Original language | English |
---|---|
Title of host publication | Proceedings - 2019 IEEE/ACM 1st International Workshop on Bots in Software Engineering, BotSE 2019 |
Publisher | Institute of Electrical and Electronics Engineers Inc. |
Pages | 24-28 |
ISBN (Electronic) | 9781728122625 |
DOIs | |
Publication status | Published - 1 May 2019 |
Externally published | Yes |
Event | 1st IEEE/ACM International Workshop on Bots in Software Engineering, BotSE 2019 - Montreal, Canada Duration: 28 May 2019 → … |
Conference
Conference | 1st IEEE/ACM International Workshop on Bots in Software Engineering, BotSE 2019 |
---|---|
Country/Territory | Canada |
City | Montreal |
Period | 28/05/19 → … |