Code Smells and Refactoring: A Tertiary Systematic Review of Challenges and Observations
arXiv:2004.10777 · doi:10.1016/j.jss.2020.110610
Abstract
In this paper, we present a tertiary systematic literature review of previous surveys, secondary systematic literature reviews, and systematic mappings. We identify the main observations (what we know) and challenges (what we do not know) on code smells and refactoring. We show that code smells and refactoring have a strong relationship with quality attributes, i.e., with understandability, maintainability, testability, complexity, functionality, and reusability. We argue that code smells and refactoring could be considered as the two faces of a same coin. Besides, we identify how refactoring affects quality attributes, more than code smells. We also discuss the implications of this work for practitioners, researchers, and instructors. We identify 13 open issues that could guide future research work. Thus, we want to highlight the gap between code smells and refactoring in the current state of software-engineering research. We wish that this work could help the software-engineering research community in collaborating on future work on code smells and refactoring.
References in corpus (1)
Cited by in corpus (7)
- Code smells detection and visualization: A systematic literature review
- A systematic literature review on the code smells datasets and validation mechanisms
- Investigating the Readability of Test Code: Combining Scientific and Practical Views
- Automated Refactoring of Legacy JavaScript Code to ES6 Modules
- Ten simple rules for training scientists to make better software
- Improving the Learnability of Machine Learning APIs by Semi-Automated API Wrapping
- Dirty-Waters: Detecting Software Supply Chain Smells