Title :
Refactoring as a Lifeline: Lessons Learned from Refactoring
Author :
Abdel-Hamid, Amr Noaman
Author_Institution :
Software Eng. Competence Center (SECC), IT Ind. Dev. Agency (ITIDA), Cairo, Egypt
Abstract :
Refactoring legacy code can be a major impediment for teams transforming to agile due to the high cost of manual regression testing of frequent (typically 2-week) releases. Also, attempts to implement automated tests may involve technical and cost issues. In this report we present a new and more systematic approach to refactoring we have found to be successful for refactoring legacy code that has few (if any) automated tests. This report describes two experiences: one with 3 teams applying a basic and traditional refactoring approach, and another with 2 teams applying the new approach. This new approach helped achieve better results in covering code with tests, involved senior management to retain their support, and achieved better and more sustainable pace of development powered by continuous refactoring techniques.
Keywords :
software maintenance; covering code; manual regression testing; refactoring legacy code; senior management; software maintainability; Business; Complexity theory; Computer bugs; Maintenance engineering; Measurement; Software; Testing; Continuous Refactoring; Metrics; Refactoring Anti-patterns; Software Maintainability;
Conference_Titel :
Agile Conference (AGILE), 2013
Conference_Location :
Nashville, TN
DOI :
10.1109/AGILE.2013.18