Decision-Making Framework for Refactoring

Refactoring has been de ned as improving code quality without a ffecting its functionality. When refactoring is overlooked in daily development, the likelihood of larger refactorings increases with time. Disadvantages of larger refactorings include that they disrupt the daily work, require additional planning e ort, and often they need to be justi ed to stakeholders. In this paper, we investigate with interviews how professionals make refactoring decisions. As a result, we present a framework for decision making for larger refactoring operations describing the key stages in a refactoring work ow. Furthermore, one actual industry case of refactoring decision making is presented in detail.

Presented at 2015 IEEE 7th International Workshop on Managing Technical Debt

Marko Leppänen, Samuel Lahtinen, Kati Kuusinen (Tampere University of Technology), Simo Mäkinen, Tomi Männistö (University of Helsinki), Juha Itkonen (Aalto University), Jesse Yli-Huumo (Lappeenranta University of Technology), Timo Lehtonen (Solita):  Decision-Making Framework for Refactoring