|
This article is cited in 1 scientific paper (total in 1 paper)
Technical debt in the software development lifecycle: code smells
V. V. Kachanovab, M. K. Ermakova, G. A. Pankratenkoa, A. V. Spiridonova, A. S. Volkova, S. I. Markova a Ivannikov Institute for System Programming of the RAS
b Moscow Institute of Physics and Technology
Abstract:
This paper is dedicated to the review of the most popular code smells, which is one of the technical debt components, in addition to methods and instruments for their detection. We conduct a comparative analysis of multiple instruments such as DesigniteJava, PMD, SonarQube. We apply existing tools to set of open-source projects to deduce detection precision and coherence of the selected instruments. We highlight strengths and weaknesses of the approach based on metrics computation and threshold filtering that is used in instruments. Citing of code smells detected by the instruments shows low percentage of true positives (10% for god class and 20% for complex method). We perform literature review of papers suggesting enhancements of the standard approach and alternative approaches that doesn't involve metrics. To assess the potential of alternative methods we introduce our long method detection prototype with a false positive filtering system based on machine learning methods.
Keywords:
code smells, technical debt, machine learning, source code metrics.
Citation:
V. V. Kachanov, M. K. Ermakov, G. A. Pankratenko, A. V. Spiridonov, A. S. Volkov, S. I. Markov, “Technical debt in the software development lifecycle: code smells”, Proceedings of ISP RAS, 33:6 (2021), 95–110
Linking options:
https://www.mathnet.ru/eng/tisp648 https://www.mathnet.ru/eng/tisp/v33/i6/p95
|
Statistics & downloads: |
Abstract page: | 23 | Full-text PDF : | 22 |
|