The appearance of technical debt (TD) becomes a critical problem, posing challenges related to software maintainability and its quality within the context of fast modern software development. The presented research focuses on the issue of TD appearance in the context of Python software development by employing a hybrid approach involving perception and predictive approaches. Within the scope of research, the perceptions of 86 IT practitioners and developers have been studied with regard to their reactions, adaptation, and prioritization of different types of TDs. According to the qualitative results, cyclic architectural debt stems from low test coverage, documentation deficiency, and complicated code structure. Based on the aforementioned information, the research team developed a dataset consisting of 130 Python codes in real conditions with the following characteristics: code complexity, comments-to-code ratio, code smells, and software maintainability indexes being used. Thereafter, the application of DT, LR, NB, SVM, KNN, and RF predictive models allowed detecting TDs. The presented results reveal the possibility of predicting TDs with the use of machine learning methods, with optimal performance provided by random forest and optimized logistic regression models.
Fırıncı et al. (Fri,) studied this question.