## 4 Results
### Answers to the Questions of Context and Research Approach
#### 4.1.4 Questions about ML  
**RQ-ML11 What types of machine learning algorithms were used in the articles? **  
It must be clarified that a large number of articles used more than one ML algorithm in their procedures, which is why the numbers presented on the map in Figure 13 exceed 81 articles. In relation to the type of algorithm used, there was a predominance of supervised algorithms. A total of 31 articles indicated that their studies used multilayer perceptron neural networks, convolutional neural networks, and recurrent neural networks. In the same way, \begin{table}
\begin{tabular}{l l l} \hline \hline
**Maintenance Issue** & **Articles** & **Percentage** \\ \hline Technical problems & 78 & 96.3\% \\ Management problems & 2 & 2.5\% \\ Maintenance cost estimation & 1 & 1.2\% \\ Software maintenance measurement & 0 & 0.0\% \\ \hline \hline
**Total** & 81 & 100\% \\ \hline \hline \end{tabular}
\end{table} 
Table 10: Details of studies and maintenance issues studied. Figure 12: Types of maintenance techniques used in the studies. 21 articles incorporated an SVM that was applied to software maintenance. The articles that incorporated naive Bayes (18), decision trees (18), and random forests (17) presented a similar distribution. Only three articles used algorithms inspired by natural processes. Traditionally, such algorithms have been classified as reinforcement learning algorithms. **RQ-ML2: What characteristics did the ML models included present? **  
With regard to the incorporation of previously trained models, the results showed an equal distribution to that of those who did not provide details of any type of model (33%), who did not include a previously trained model (31%), and who incorporated previously trained models in their study (35.8%), but without naming the models specifically (see Figure 14b). However, a surprising 5.4% of those that included previously trained models made their models available for study in a repository or on a website (see Figure14a). **RQ-ML3: What were the main characteristics of the datasets used? **  
Concerning the most common types of datasets (images, text, numeric, audio, time, series, categorical), 61% of the articles pointed out that their datasets were mainly text-based, whereas only 2% of the articles reported exclusively numerical datasets. Additionally, 22% of the articles did not detail the types of datasets used. Only 62% of the datasets in the selected articles were available or had their origin described, with the PROMISE (More information in [[http://promise.site.uottawa.ca/SERepository/](http://promise.site.uottawa.ca/SERepository/)]([http://promise.site.uottawa.ca/SERepository/](http://promise.site.uottawa.ca/SERepository/)) (accessed on 3 October 2022)) dataset being the most commonly used. In addition,  
Figure 14: (a) Availability of the models used; (b) previously trained models. Figure 13: Distribution of the ML algorithms used. 22% mentioned but did not provide their datasets. The rest of the articles (16%) offered no indications of the datasets used. _RQ-ML4 and RQ-ML5: What was the configuration of the software and hardware?_  
For the case of RQ-ML4, only 40% of the articles gave details of the software used (see Figure 15). Then, of that percentage, 36% of the articles included details about the library or ML-related tool, where the most frequently used was Weka, while the least frequently used were Keras and TensorFlow. A total of 27% indicated the tool or maintenance library used for the study, emphasizing tools such as PMD and iPlasma. The articles that detailed an IDE, programming language, library, or development tool and the operating system used were equally distributed (Figure 16a). The results of this analysis are provided in Table A3 of Appendix B. In terms of question RQ-ML5, which looks at the details of the hardware, the situation was quite critical--only 7% of the articles gave indications of their configurations (see Figure 15).