The search functionality is under construction.

IEICE TRANSACTIONS on Information

Supporting Proactive Refactoring: An Exploratory Study on Decaying Modules and Their Prediction

Natthawute SAE-LIM, Shinpei HAYASHI, Motoshi SAEKI

  • Full Text Views

    0

  • Cite this

Summary :

Code smells can be detected using tools such as a static analyzer that detects code smells based on source code metrics. Developers perform refactoring activities based on the result of such detection tools to improve source code quality. However, such an approach can be considered as reactive refactoring, i.e., developers react to code smells after they occur. This means that developers first suffer the effects of low-quality source code before they start solving code smells. In this study, we focus on proactive refactoring, i.e., refactoring source code before it becomes smelly. This approach would allow developers to maintain source code quality without having to suffer the impact of code smells. To support the proactive refactoring process, we propose a technique to detect decaying modules, which are non-smelly modules that are about to become smelly. We present empirical studies on open source projects with the aim of studying the characteristics of decaying modules. Additionally, to facilitate developers in the refactoring planning process, we perform a study on using a machine learning technique to predict decaying modules and report a factor that contributes most to the performance of the model under consideration.

Publication
IEICE TRANSACTIONS on Information Vol.E104-D No.10 pp.1601-1615
Publication Date
2021/10/01
Publicized
2021/06/28
Online ISSN
1745-1361
DOI
10.1587/transinf.2020EDP7255
Type of Manuscript
PAPER
Category
Software Engineering

Authors

Natthawute SAE-LIM
  Tokyo Institute of Technology
Shinpei HAYASHI
  Tokyo Institute of Technology
Motoshi SAEKI
  Nanzan University

Keyword