## 5 Experimental Results and Discussion
### Methodology  
The third step involved examining three subgroups of algorithms within itself. The initial part of the third step discussed five separate conventional machine learning algorithms displayed in Figure 2, in addition to addressing the versions of these algorithms using Rotation Forest ensemble models. The second part of the third step concentrated on deep learning algorithms such as CNN, LSTM, and BiLSTM. The final part of the third step, on the other hand, discussed the RNN-based deep learning approach (RNNBDL) algorithm. These chosen algorithms were tested in the fourth step using the 10-fold cross-validation method. Finally, the fifth step summarized the performances, statistical outcomes, values, and evaluation metrics acquired from the tests run. The pipeline of the workflow and its complete architecture are given in Figure 2. This section covered the methodology followed in the study in five consecutive steps. The initial step studied the data sets listed in the 4 th section, while the second step focused on the training procedures of these datasets with the 10-fold cross-validation method. In Algorithm 1, the main stages of the workflow and its complete architecture have been briefly summarized.  
\begin{table}
\begin{tabular}{l c c c} \hline \hline
**Metrics Type** & **Eclipse** & **Apache Active MQ** & **SFP XP-TDD** \\ \hline Mc Cabe & - & 4 & 4 \\ CK Metrics & 6 & 6 & - \\ OO Metrics & 11 & 11 & 2 \\ Basic Halstead & - & 9 & 2 \\ Derived Halstead & - & 8 & 1 \\ Other Basic Metric & - & 8 & 2 \\ Entropy Metrics & 5 & 5 & - \\ Change Metrics & 15 & 15 & - \\ \hline \hline \end{tabular}
\end{table}
Table 6: The general metrics type information of all data sets.  
```
//Step 1: Input & Output //Input  DataSets[]:array [Eclipse,SFP-XP-TDD, Active MQ]:  MLAlg []: array [KNN,NB,RT,KSTAR,SVM];  eMLAlg []: array [eKNN,eNB,eRT,eKSTAR,eSVM];  DLAlg []: array [CNN,LSTM,BiLSTM,RNNNBDL];  int location = 0; //TFCC meaning Ten Fold Cross Validation //Output  MLResults_ACC[]: array;  eMLResults_ACC[]: array;  DLResults_ACC[]: array; //Step 2: Training  MLTrainResults[]:array [TFCV(MLAlg[DataSets])]:  eMLTrainResults[]:array [TFCV(EnsMLAlg[DataSets])];  DLTrainResults: array [TFCV(DLearningAlg[DataSets])]; //Step 3 & 4: Execute the Method & Test  while (location < DataSets[].length) {  for (i = 0?i < MLAlg.length;i++) {  MLRresults_ACC [] = Test(MLTrainResults[]);  eMLResults_ACC[] = Test(eMLTrainResults[]);  for (i = 0?i < DLAlg.length;i++) {  DLResults_ACC [] = Test(DLTrainResults[]); }  location++; } //Step 5: Evaluation Metrics  location = 0;  while (location < DataSets[].length) {  printf(\"Machine Learing ACC Results\");  for (i = 0?i < MLAlg.length;i++){  printf(MLResults_ACC[i];)  printf(\"Ensemble Machine Learning ACC Results\"); for (i = 0?i < eMLAlg.length;i++){  printf(\"Deep Learing ACC Results\"); for (i = 0?i < DLAlg.length;i++){  printf(DLResults_ACC[i];) }
```  
**Algorithm 1** Pseudo-code of the proposed scheme.  
Figure 2: The pipeline of the workflow and its complete architecture.  
SVM, KNN, NB, and CNN are non-sequential models frequently used in tasks such as classification and regression. The input data for these tasks does not retain a temporal dimension. While LSTM- and RNN-based sequential models are designed for sequential datasets such as time series or natural language, they are potentially utilized for classification in datasets without time series[51]. Besides, using non-sequential and sequential models together might enable each model to display its own power. In such systems, a non-sequential model may serve as a feature extractor, and then the extracted features may be utilized as input to a sequential model. However, the current study achieved performances on ACC and FM-based metrics separately using the SFP datasets with no temporal dimension on sequential and non-sequential models.