Investigating the Relationship between Co-occurring Technical Debt in Python

OnderzoeksoutputAcademicpeer review


Technical debt (TD) reflects issues that may negatively affect software maintenance and evolution. There is currently little evidence on how the different types of TD co-occur; for example, how code smells and design smells affect the same part of the system. This paper investigates how different types of TD co-occur, as well as the time period of the co-occurrence. To that end, we analyzed the co-occurring associations between five types of TD, captured in 42 SonarQube rules, in 3862 files of 20 Python projects from the Apache Software Foundation. We found that this phenomenon is dominant, affecting more than 90% of Python files. We also found that Documentation Debt and Test Debt appear in the majority of the files, although it seems to be mostly by coincidence. Finally, we noticed that co-occurrence of TD seems to happen very quickly: co-occurring issues tend to be introduced within the same week. But once it does happen, it is hard to get rid of. These results can benefit both researchers and practitioners by: aiding the prioritization of TD remediation; leading to novel tools for detecting co-occurring TD and warning potential issues; shedding further light on the explanation of how TD is introduced and can be mitigated.
Originele taal-2English
TitelProceedings of the 46th EUROMICRO conference on Software Engineering and Advanced Applications (SEAA '20)
Plaats van productiePortorož, Slovenia
StatusPublished - 2020
Evenement46th EUROMICRO Conference on Software Engineering and Advanced Applications - Portorož, Slovenia
Duur: 26-aug-202028-aug-2020
Congresnummer: 46th


Conference46th EUROMICRO Conference on Software Engineering and Advanced Applications
Verkorte titelSEAA 2020
Internet adres

Citeer dit