Technical debt is a metaphor that refers to all the consequences of poorly written code and trade-offs in development. Early technical debt diagnosis is important for software developers because it allows planning for software maintenance and improvement activities, such as refactoring, to prevent system degradation. Several studies have been conducted in the literature on the identification of the technical debt and its consequences, thanks to useful tools for identifying the problem within the source code. On the other hand, this work aims to explore a deep learning approach to predict the rise of technical debt in software code by leveraging the knowledge of changing quality metrics. For validation of the approach, a large dataset was built, related to four known Java software projects, with the collection of numerous class-level code quality metrics. The results obtained show the effectiveness of the proposed approach in predicting the development of Technical Debt within the source code. We obtained an F1 score of 0.99 for two of the chosen software systems and greater than 0.91 for the remaining two.

Technical Debt predictive model through Temporal Convolutional Network

Aversano L.
;
Bernardi M. L.
;
Iammarino M.
2021-01-01

Abstract

Technical debt is a metaphor that refers to all the consequences of poorly written code and trade-offs in development. Early technical debt diagnosis is important for software developers because it allows planning for software maintenance and improvement activities, such as refactoring, to prevent system degradation. Several studies have been conducted in the literature on the identification of the technical debt and its consequences, thanks to useful tools for identifying the problem within the source code. On the other hand, this work aims to explore a deep learning approach to predict the rise of technical debt in software code by leveraging the knowledge of changing quality metrics. For validation of the approach, a large dataset was built, related to four known Java software projects, with the collection of numerous class-level code quality metrics. The results obtained show the effectiveness of the proposed approach in predicting the development of Technical Debt within the source code. We obtained an F1 score of 0.99 for two of the chosen software systems and greater than 0.91 for the remaining two.
2021
978-1-6654-3900-8
Deep Learning
Prediction
Technical Debt
File in questo prodotto:
Non ci sono file associati a questo prodotto.

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/20.500.12070/52479
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 3
  • ???jsp.display-item.citation.isi??? 3
social impact