30 Years of Software Refactoring Research:A Systematic Literature Review

07/04/2020
by   Chaima Abid, et al.
0

Due to the growing complexity of software systems, there has been a dramatic increase and industry demand for tools and techniques on software refactoring in the last ten years, defined traditionally as a set of program transformations intended to improve the system design while preserving the behavior. Refactoring studies are expanded beyond code-level restructuring to be applied at different levels (architecture, model, requirements, etc.), adopted in many domains beyond the object-oriented paradigm (cloud computing, mobile, web, etc.), used in industrial settings and considered objectives beyond improving the design to include other non-functional requirements (e.g., improve performance, security, etc.). Thus, challenges to be addressed by refactoring work are, nowadays, beyond code transformation to include, but not limited to, scheduling the opportune time to carry refactoring, recommendations of specific refactoring activities, detection of refactoring opportunities, and testing the correctness of applied refactorings. Therefore, the refactoring research efforts are fragmented over several research communities, various domains, and objectives. To structure the field and existing research results, this paper provides a systematic literature review and analyzes the results of 3183 research papers on refactoring covering the last three decades to offer the most scalable and comprehensive literature review of existing refactoring research studies. Based on this survey, we created a taxonomy to classify the existing research, identified research trends, and highlighted gaps in the literature and avenues for further research.

READ FULL TEXT

page 3

page 4

page 6

page 13

page 14

page 15

page 23

research
06/24/2022

A Literature Review on Serverless Computing

Serverless computing is an emerging cloud computing paradigm. Moreover, ...
research
05/27/2023

Edge to Cloud Tools: A Multivocal Literature Review

Edge-to-cloud computing is an emerging paradigm for distributing computa...
research
12/31/2017

A Systematic Mapping Study on Requirements Engineering in Software Ecosystems

Software ecosystems (SECOs) and open innovation processes have been clai...
research
04/18/2021

Small-Scale 5G Testbeds for Network Slicing Deployment: A Systematic Review

Developing specialized cloud-based and open-source testbeds is a practic...
research
07/04/2018

Mapping the research software sustainability space

A growing number of largely uncoordinated initiatives focus on research ...
research
04/07/2020

The State of Research on Function-as-a-Service Performance Evaluation: A Multivocal Literature Review

Function-as-a-Service (FaaS) is one form of the serverless cloud computi...
research
06/16/2023

Cybersecurity Career Requirements: A Literature Review

This study employs a systematic literature review approach to identify t...

Please sign up or login with your details

Forgot password? Click here to reset