ESP Journal of Engineering & Technology Advancements |
© 2021 by ESP JETA |
Volume 1 Issue 1 |
Year of Publication : 2021 |
Authors : Abhinav Balasubramanian |
![]() |
Abhinav Balasubramanian ,2021. "Improving Legacy Software Quality through AI-Driven Code Smell Detection ", ESP Journal of Engineering & Technology Advancements 1(1): 245-252.
Legacy systems are often plagued by code smells - indicators of poor design and implementation choices - that compromise software quality and increase technical debt. Addressing these issues is essential for ensuring system maintainability and long-term health. Traditional static code analysis tools, while widely used, are prone to generating false positives and require considerable manual effort, making them less suitable for large, complex codebases.This paper proposes a conceptual framework for using machine learning to detect code smells efficiently and accurately. The framework leverages static code metrics, such as cyclomatic complexity, method length, and coupling, as features for supervised learning models like decision trees and gradient boosting. By combining software metrics with machine learning, this approach aims to improve detection precision and reduce the burden of manual review.The paper also discusses how such a framework could be integrated into development environments to provide developers with actionable insights for refactoring. This proposal highlights the potential of machine learning to support software quality improvement efforts, particularly in the context of legacy systems.
[1] A. Fatima, S. Bibi, and R. Hanif, “Comparative study on static code analysis tools for C/C++,” in 15th International Bhurban Conference on Applied Sciences and Technology (IBCAST), 2018, pp. 465–469.
[2] H. K. Brar and P. Kaur, “Comparing detection ratio of three static analysis tools,” International Journal of Computer Applications, vol. 124, pp. 35–40, 2015.
[3] M. A. K. Maduranga, D. C. Mahagamage, P. Madhavi, J. A. H. Madushan, and C. Wijesiriwardana, “Domain-specific infrastructure for code smell detection in large-scale software systems,” unpublished, 2016.
[4] A. Jesudoss, S. Maneesha, and T. L. N. Durga, “Identification of code smell using machine learning,” in 2019 International Conference on Intelligent Computing and Control Systems (ICCS), 2019, pp. 54–58.
[5] F. Fontana, M. Mäntylä, M. Zanoni, and A. Marino, “Comparing and experimenting machine learning techniques for code smell detection,” Empirical Software Engineering, vol. 21, pp. 1143–1191, 2016.
[6] T. Guggulothu and S. A. Moiz, “Code smell detection using multi-label classification approach,” Software Quality Journal, vol. 28, pp. 1063–1086, 2019.
[7] A. Tahmid, M. N. A. Tawhid, S. Ahmed, and K. Sakib, “Code sniffer: A risk-based smell detection framework to enhance code quality using static code analysis,” International Journal of Software Engineering and Technology Applications, vol. 2, p. 41, 2017.
[8] Tushar, "How to track code smells effectively," Medium, Apr. 04, 2018. [Online]. Available: https://tusharma.medium.com/how-to-track-code-smells-effectively-48dbf5ba659d.
Artificial Intelligence (AI), Code Smell Detection, Software Maintainability, Software Quality Improvement, Machine Learning in Software Engineering.