Stepwise Refactoring Tools

Anna Maria Eilertsen, Gail C. Murphy · 2021

As part of software change tasks, software developers frequently make repetitive and error-prone code changes. Many of these changes can be automated by refactoring tools that are available in mainstream development environments, but developers seldom choose to use them, in large part due to the all-or-nothing approach of the tools. In this paper, we propose an alternative interaction model in which a refactoring tool instead generates a set of code change entities that the developer can inspect, edit, discard, or apply at will. Between applications, the tool supports manual edits or even starting a new refactoring, thus enabling stepwise and recursive refactoring in a way current tools can not. Our model addresses multiple usability problems with refactoring tools. In this paper, we motivate and describe the proposed model and discuss challenges related to its implementation.

Read the paper · More papers on PaperTik