Abstract
Software refactoring is one of the most critical aspects of software maintenance. It improves the quality of the software, reduces potential occurrence of bugs and keeps the code easier to maintain, extend and read. The process of refactoring supports and enables the developers to improve the design of software without changing the behavior. However, the automation of this process is complex for developers and software engineers since it is subjective, time and resource consuming. In this context, many literature reviews have analyzed the existing effort made by researchers to facilitate refactoring, as a core software engineering practice. This paper, aims in integrating all the existing research outcomes by performing a tertiary study on all the secondary studies, done in the area of refactoring. Based on our analysis we notice that there are many area of software refactoring that are under studied. As an outcome of this review, several classifications of existing studies were provided to showcase all the studies targeting the automation of refactoring along with explaining what metrics and objectives were used as means to drive refactoring and how it was assessed. This thesis also aims in unveiling areas of future directions for the research community in order to consolidate their efforts in improving the refactoring as a practice.
Library of Congress Subject Headings
Software refactoring--Bibliography; Software refactoring--Research
Publication Date
5-4-2018
Document Type
Thesis
Student Type
Graduate
Degree Name
Software Engineering (MS)
Department, Program, or Center
Software Engineering (GCCIS)
Advisor
MohamedWiem Mkaouer
Advisor/Committee Member
Christian Newman
Advisor/Committee Member
Yasmine El-Glaly
Recommended Citation
Alotaibi, Mazen, "Advances and Challenges in Software Refactoring: A Tertiary Systematic Literature Review" (2018). Thesis. Rochester Institute of Technology. Accessed from
https://repository.rit.edu/theses/9755
Campus
RIT – Main Campus
Plan Codes
SOFTENG-MS