During the development phase, software programmers usually introduce code that contains issues intentionally left for additional treatment. To allow for future fixing, they mark such code using textual comments, resulting in Self-Admitted Technical Debt (SATD). Detecting SATD contained in source code has become crucial in the development cycle since it helps program-mers locate issues that need to be solved, thus improving code quality. We introduce PILOT, a technical debt detector built on top of a combination of different natural language processing (NLP) and machine learning (ML) techniques. First, the semantic among SATD comments is captured using feature extraction steps. Then, neural network algorithms are applied to classify comments, represented as vectors. We built a PILOT prototype with a feed-forward neural network and evaluated it using real-world datasets as proof of concept. The empirical evaluation shows that PILOT obtains an encouraging performance and outperforms a well-established baseline. We anticipate that our tool will come in handy, as once being embedded in the IDE, it can help developers recognize SATD manifested in their code, allowing them to conveniently identify and fix issues.

Di Salle, A., Rota, A., Nguyen, P., Di Ruscio, D., Arcelli Fontana, F., Sala, I. (2022). PILOT: Synergy between Text Processing and Neural Networks to Detect Self-Admitted Technical Debt. In Proceedings - International Conference on Technical Debt 2022, TechDebt 2022 (pp.41-45). IEEE [10.1145/3524843.3528093].

PILOT: Synergy between Text Processing and Neural Networks to Detect Self-Admitted Technical Debt

Arcelli Fontana, Francesca
;
2022

Abstract

During the development phase, software programmers usually introduce code that contains issues intentionally left for additional treatment. To allow for future fixing, they mark such code using textual comments, resulting in Self-Admitted Technical Debt (SATD). Detecting SATD contained in source code has become crucial in the development cycle since it helps program-mers locate issues that need to be solved, thus improving code quality. We introduce PILOT, a technical debt detector built on top of a combination of different natural language processing (NLP) and machine learning (ML) techniques. First, the semantic among SATD comments is captured using feature extraction steps. Then, neural network algorithms are applied to classify comments, represented as vectors. We built a PILOT prototype with a feed-forward neural network and evaluated it using real-world datasets as proof of concept. The empirical evaluation shows that PILOT obtains an encouraging performance and outperforms a well-established baseline. We anticipate that our tool will come in handy, as once being embedded in the IDE, it can help developers recognize SATD manifested in their code, allowing them to conveniently identify and fix issues.
paper
Neural Networks; NLP techniques; Self-Admitted Technical Debt
English
International Conference on Technical Debt, TechDebt 2022 - 17 May 2022through 18 May 2022
2022
Proceedings - International Conference on Technical Debt 2022, TechDebt 2022
9781450393041
2022
2022
41
45
none
Di Salle, A., Rota, A., Nguyen, P., Di Ruscio, D., Arcelli Fontana, F., Sala, I. (2022). PILOT: Synergy between Text Processing and Neural Networks to Detect Self-Admitted Technical Debt. In Proceedings - International Conference on Technical Debt 2022, TechDebt 2022 (pp.41-45). IEEE [10.1145/3524843.3528093].
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/10281/396070
Citazioni
  • Scopus 4
  • ???jsp.display-item.citation.isi??? 2
Social impact