<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Predicting Software Maintainability using Ensemble Techniques and Stacked Generalization</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Sara Elmidaoui</string-name>
          <email>sara.elmidaoui@um5s.net.ma</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Laila Cheikhi</string-name>
          <email>laila.cheikhi@um5.ac.ma</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ali Idri</string-name>
          <email>ali.idri@um5.ac.ma</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Alain Abran</string-name>
          <email>alain.abran@etsmtl.ca</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Software Engineering &amp; Information Technology</institution>
          ,
          <addr-line>ETS, Montréal</addr-line>
          ,
          <country country="CA">Canada</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>SPM Team, ENSIAS, Mohammed V University in Rabat</institution>
          ,
          <country country="MA">Morocco</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The prediction of software maintainability has emerged as an important research topic to address industry expectations for reducing costs, in particular maintenance costs. In the last decades, many studies have used single techniques to predict software maintainability but there is no agreement as to which technique can achieve the best prediction. Ensemble techniques, which combine two or more techniques, have been investigated in recent years. This study investigates ensemble techniques (homogeneous as well as heterogeneous) for predicting maintainability in terms of line code changes. To this end, well-known homogeneous ensembles such as Bagging, Boosting, Extra Trees, Gradient Boosting, and Random Forest are investigated first. Then the stacked generalization method is used to construct heterogeneous ensembles by combining the most accurate ones per dataset. The empirical results suggest that Gradient Boosting and Extra Trees are the best ensembles for all datasets, since they ranked first and second, respectively. Moreover, the findings of the evaluation of heterogeneous ensembles constructed using stacked generalization showed that they gave better prediction accuracy compared to all homogeneous ensembles. 1</p>
      </abstract>
      <kwd-group>
        <kwd>Software Maintainability Prediction</kwd>
        <kwd>Machine Learning</kwd>
        <kwd>Ensemble techniques</kwd>
        <kwd>Stacked Generalization</kwd>
        <kwd>Stacking</kwd>
        <kwd>Homogeneous</kwd>
        <kwd>Heterogeneous</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Maintenance of a software product is recognized as a very time-consuming activity,
and several attempts have been made to reduce its high cost by improving
maintainability [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], which is defined as “the degree of effectiveness and efficiency with which a
product or system can be modified by the intended maintainers” [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Several attempts
have been made to predict software product maintainability (SPM) through empirical
studies. However, predicting maintainability remains an open research area since the
maintenance behaviors of software systems are complex and difficult to predict [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. In
fact, many systematic literature reviews (SLRs) have been conducted on software
product maintainability prediction (SPMP) to provide an up-to-date review of this topic,
1 Copyright ©2020 for this paper by its authors. Use permitted under Creative Commons License
      </p>
      <p>
        Attribution 4.0 International (CC BY 4.0).
such as [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ], [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. The results show that most studies have investigated single
techniques to identify the most accurate ones, while ensembles have received less
attention; more studies are therefore required in order to identify the best ones.
Furthermore, researchers have been unable to identify the best guidelines for developing an
accurate technique; indeed, all SPMP techniques are prone to error as they depend to
some degree on the empirical context, and no single technique can give a correct result
in all circumstances.
      </p>
      <p>
        To tackle this issue, researchers have begun to investigate the use of many single
techniques together, known as Ensemble Techniques (ETs). As stated in [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]–[
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], these
can take one of two forms: Heterogeneous (HT), which combines at least two different
techniques, and Homogeneous (HM), in which the single techniques (two at least) are
of the same type. Two types of HM technique are proposed: one that combines the same
base techniques with at least two configurations, and one that combines one
metamodel with one base technique. Since ETs have proved their usefulness in improving
accuracy in many areas such as in software effort estimation [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], software fault
prediction [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] and face recognition [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ], this study investigates whether they can
improve the accuracy of software maintainability prediction.
      </p>
      <p>
        In this context, a set of empirical studies that investigated ETs for SPMP were
selected in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] and summarized in Table 1, with the corresponding techniques used (ML
techniques or base learners), the type of ensembles used (HM or HT), the rules used to
combine the ML techniques, the datasets, and the accuracy criteria. As seen in the table,
HM ensembles were used by means of Bagging [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ], RF [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ], [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] and
Boosting (i.e., AdaBoost, LogitBoost) [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ]. HT ensembles were used with different
variants, such as combining multilayer perceptron (MLP), radial basis function (RBF),
support vector machine (SVM), and M5 for inducing trees of regression models (M5P)
using the best in training (BTE) [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], average (AVG) and weighted averages (WT) [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]
rules. The ensembles were also evaluated by means of different datasets (e.g., User
Interface Management System (UIMS) and QUality Evaluation System (QUES)) and a
variety of accuracy criteria such as Mean Magnitude of Relative Error (MMRE),
Standard deviation of Magnitude of Relative Error (Std.MRE), Percentage of Relative Error
Deviation (Pred), True Positive Rate (TPR), and False Positive Rate (FPR). Moreover,
from the above studies, it was found that ensembles provide greater or at least similar
prediction accuracy compared to single techniques [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], and one study suggested
investigating other combination rules for constructing HT ensembles [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. None of the
studies reported evidence on the best combination rules, or used Stacked Generalization
(SG) [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ], or investigated HM ensembles such as Extra Trees (ExTrees) and Gradient
Boosting (GradBoost) for predicting software maintainability. This study is the first
work that applies those variants of HM ensembles and combines the best of them using
SG to construct HT ensembles.
      </p>
      <p>The objective of this study is twofold: (1) investigate the use of five variants of HM
ensembles: Bagging, Adaptive Boosting (AdaBoost), GradBoost, RF, and ExTrees with
their default base techniques, and (2) investigate the use of HT ensembles that are
constructed from the most accurate HM ensembles, per dataset, using the SG method. This
objective is achieved by addressing the following three research questions (RQs):
 RQ1: Among the five HM ensembles, which one generates the best SPMP accuracy?
 RQ2: Do the HT ensembles constructed with SG improve SPMP accuracy?
 RQ3: Which ensemble gives the best performance regardless of the dataset used?</p>
      <p>The rest of the paper is structured as follows: Section 2 gives an overview of the five
HM ensembles used. Section 3 presents the method used to construct the HT ensembles.
Section 4 presents the empirical design of this study. Section 5 presents and discusses
the empirical results obtained for HM as well as HT. Section 6 presents threats to the
validity of this study. Section 7 contains the conclusion and suggestions for future work.</p>
    </sec>
    <sec id="sec-2">
      <title>Bagging</title>
      <sec id="sec-2-1">
        <title>Homogeneous Ensemble Techniques</title>
        <p>
          This section provides an overview of the five HM ensembles investigated in this
empirical study, namely Bagging, AdaBoost, RF, ExTrees, and GradBoost.
Bagging (also known as Bootstrap aggregation) is a well-known HM ensemble
proposed by Breiman [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ]. Bagging is based on the bootstrap method for creating a
distribution of datasets with replacement from an original dataset [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ]. Bagging trains each
regression model (i.e., base learner) with the different training sets generated by
sampling with replacement from the training data, then it averages the predictions of each
constructed regression model to perform the final prediction [
          <xref ref-type="bibr" rid="ref23">23</xref>
          ]. To build a model
based on bagging, the following steps are performed: “(1) Split the dataset into training
set and test set, (2) get a bootstrap sample from the training data and train a predictor
using the sample. Repeat the steps a random number of times. The models from the
samples are combined (i.e., aggregated) by averaging the output for regression or voting
for classification” [
          <xref ref-type="bibr" rid="ref24">24</xref>
          ]. Through this process, bagging turns weak learners into strong
ones [
          <xref ref-type="bibr" rid="ref25">25</xref>
          ], reduces variance, helps to avoid overfitting [
          <xref ref-type="bibr" rid="ref24">24</xref>
          ], and improves regression
models in terms of stability and accuracy [
          <xref ref-type="bibr" rid="ref24">24</xref>
          ]. Moreover, bagging has presented good
results whenever the learning technique is unstable [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ].
2.2
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Adaptive Boosting (AdaBoost)</title>
      <p>
        AdaBoost is one of the first practical boosting methods introduced by Freund and
Schapire [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ]. In AdaBoost, weak learners are combined and “boosted” to improve
ensemble accuracy and produce a strong technique [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ]. AdaBoost works as follows:
“(…) creates a sample from the training data using the sampling weight vector. The
base learner uses this sample to create a hypothesis that links the input to the output
data. This hypothesis is applied to all the data to create predictions. The absolute
relative error is calculated for each prediction and compared against a threshold, which is
used to classify the predicted values as correct or incorrect. The sampling weight of
incorrectly predicted samples is increased for the next iteration” [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ]. AdaBoost is also
“adaptive in that it adapts to the error rates of the individual weak hypotheses” [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ] and
“tends not to over-fit; on many problems, even after hundreds of rounds of boosting,
the generalization error continues to drop, or at least does not increase” [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ].
2.3
      </p>
    </sec>
    <sec id="sec-4">
      <title>Random Forest (RF)</title>
      <p>
        RF is an ensemble learner proposed by Breiman in 2001 [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ] which “adds an additional
layer of randomness to bagging. In addition to constructing each tree using a different
bootstrap sample of the data, RFs change how the regression trees are constructed. In
standard trees, each node is split using the best split among all variables. In a random
forest, each node is split using the best among a subset of predictors randomly chosen
at that node” [
        <xref ref-type="bibr" rid="ref30">30</xref>
        ]. In other words, RF uses both bagging—a successful approach for
combining unstable learners [
        <xref ref-type="bibr" rid="ref31">31</xref>
        ] —and random variable selection for tree building
[
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. This strategy performs very well compared to many other ML techniques,
including SVR and ANN [
        <xref ref-type="bibr" rid="ref30">30</xref>
        ]. RF is robust against overfitting [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ], it can achieve both low
bias and low variance [
        <xref ref-type="bibr" rid="ref32">32</xref>
        ], “it is very user-friendly in the sense that it has only two
parameters (the number of variables in the random subset at each node and the number
of trees in the forest), and is usually not very sensitive to their values” [
        <xref ref-type="bibr" rid="ref30">30</xref>
        ].
2.4
      </p>
    </sec>
    <sec id="sec-5">
      <title>Extra Trees (ExTrees)</title>
      <p>
        ExTrees (short for Extremely Randomized Trees) is a new tree-based ensemble method
for supervised classification and regression problems, proposed by Geurts et al. [
        <xref ref-type="bibr" rid="ref33">33</xref>
        ].
ExTrees “builds an ensemble of an unpruned decision or regression tree according to
the classical top-down procedure. Its two main differences with other tree-based
ensemble methods are that it splits nodes by choosing cut-points fully at random and that
it uses the whole learning sample to grow the trees” [
        <xref ref-type="bibr" rid="ref33">33</xref>
        ]. The technique for splitting
“consists of choosing randomly a number of inputs at each node and the minimum
sample size for splitting a node with the full original data to generate a number of trees that
construct the ensembles. Then, the predictions of the trees are aggregated to yield the
final prediction, by arithmetic average in the regression problems” [
        <xref ref-type="bibr" rid="ref33">33</xref>
        ]. The advantage
of ExTrees is its capability “to reduce variance and minimize bias due to the use of the
full original sample rather than bootstrap replicas” [
        <xref ref-type="bibr" rid="ref33">33</xref>
        ].
2.5
      </p>
    </sec>
    <sec id="sec-6">
      <title>Gradient Boosting (GradBoost)</title>
      <p>
        GradBoost (or Gradient boosted tree) is an ensemble learner proposed by Friedman
[
        <xref ref-type="bibr" rid="ref34">34</xref>
        ]. GradBoost constructs “additive regression models by sequentially fitting a simple
parameterized function (base learner) to current "pseudo" residuals by least-squares at
each iteration. The pseudo residuals are the gradient of the loss functional being
minimized, with respect to the model values at each training data, evaluated at the current
step. It uses a gradient descent algorithm for the shortcomings of weak learners instead
of using a re-weighting mechanism. This algorithm is used to minimize the loss
function (also called the error function) by moving in the opposite direction of the gradient
and finds (ou “finding”? vérifier le texte source) a local minimum” [
        <xref ref-type="bibr" rid="ref35">35</xref>
        ]. The main
advantage is that “both the approximation accuracy and execution speed of Gradient
Boosting can be substantially improved by incorporating randomization into the
procedure” [
        <xref ref-type="bibr" rid="ref35">35</xref>
        ].
3
      </p>
      <sec id="sec-6-1">
        <title>Heterogeneous Ensemble Techniques</title>
        <p>
          As mentioned earlier, none of the SPMP models used the SG method to construct HT
ensembles. SG is a different way of combining multiple models that introduces the
concept of a meta-learner proposed in 1992 by Wolpert [
          <xref ref-type="bibr" rid="ref36">36</xref>
          ]. The learning procedure is
illustrated in the following algorithm and consists of the following steps “(1) learn
firstlevel classifiers based on the original training dataset, (2) construct a new dataset based
on the output of base classifiers. Here, the output predicted labels of the first-level
classifiers are regarded as new features, and the original class labels are kept as the labels
in the new dataset, (3) learn a second-level classifier based on the newly constructed
dataset. Any learning method could be applied to learn the second-level classifier” [
          <xref ref-type="bibr" rid="ref37">37</xref>
          ].
end for
end for
Algorithm Stacking [
          <xref ref-type="bibr" rid="ref37">37</xref>
          ]
Input: Training data 
Output: An ensemble classifier 
Step 1: Learn first-level classifiers
for  ← 1 to T do
Learn a base classifier ℎ based on 
Step 2: Construct new datasets from 
for  ← 1 to 
do
        </p>
        <p>
          = {  ,   } =1 {  ∈   ,   ∈  }
Construct a new dataset that contains { ′ ,   },  ℎ
 ′ = {ℎ1(  ), ℎ2(  ), … , ℎ (  )}
Step 3: Learn a second-level classifier
Learn a new classifier ℎ′ based on the newly constructed dataset
return  ( ) = ℎ′(ℎ1( ), ℎ2( ), … , ℎ ( ))
In this study, we investigate the use of HT ensembles in SPMP by combining the most
accurate HM ensembles using SG. The process adopted for SG consists of taking the
predictions of each HM ensembles that appeared in the best cluster generated by the
SK test per dataset in the first level and using them as input variables in the second
level learning. In the second level, an algorithm (i.e., in our case, we used linear
regression since it is a simple technique for modeling the relationship between dependent and
independent variables [
          <xref ref-type="bibr" rid="ref38">38</xref>
          ], [
          <xref ref-type="bibr" rid="ref39">39</xref>
          ]) and is trained to optimally combine the models’
predictions to form a new set of predictions [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ]. Note that the second level modeling is
not restricted to any simple technique. The relationship between the predictions can be
more complex, opening the door to other ML techniques [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ]. The main advantages of
SG are that it correctly classifies the target, thereby correcting any mistakes made by
the models constructed in the first level [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ], and it offers robust performance [
          <xref ref-type="bibr" rid="ref37">37</xref>
          ].
Moreover, “it is flexible and does not require particular expertise in deployment, due
to its robust performance” [
          <xref ref-type="bibr" rid="ref40">40</xref>
          ].
4
        </p>
      </sec>
      <sec id="sec-6-2">
        <title>Empirical Design</title>
        <p>
          This section presents the empirical design used. Note that the same strategy has been
adopted previously in [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ], [
          <xref ref-type="bibr" rid="ref41">41</xref>
          ] for software development effort estimation, but using
different datasets and ML techniques.
4.1
        </p>
      </sec>
    </sec>
    <sec id="sec-7">
      <title>Datasets</title>
      <p>
        Five publicly available datasets were used in this study, including two popular public
datasets (UIMS and QUES [
        <xref ref-type="bibr" rid="ref42">42</xref>
        ], provided by researchers from the software engineering
community) and three open-source software (Log4j2, Xalan3, and JEdit4, provided in
the PROMISE repository).
      </p>
      <p>
        The UIMS and QUES datasets are object-oriented (OO) software maintainability
datasets from Li and Henry (L&amp;H) [
        <xref ref-type="bibr" rid="ref42">42</xref>
        ], developed using Ada. The UIMS contains
class-level metrics data collected from 39 classes of a user interface management
system, whereas the QUES contains the same metrics collected from 71 classes of a quality
evaluation system. Both datasets contain 10 independent variables (five OO metrics
from Chidamber and Kemerer(C&amp;K) [
        <xref ref-type="bibr" rid="ref43">43</xref>
        ], four OO metrics from L&amp;H [
        <xref ref-type="bibr" rid="ref42">42</xref>
        ], and the
traditional lines of code). The maintainability is expressed in terms of maintenance
effort measured by the number of lines changed per class; a line change could be an
addition or a deletion, and a change of the content of a line is counted as a deletion and
an addition [
        <xref ref-type="bibr" rid="ref42">42</xref>
        ].
      </p>
      <p>
        The JEdit, Log4j, and Xalan datasets are based on open-source software projects
written in Java and of different sizes: 161, 153, and 756, respectively. These three
datasets each contain 20 features including the six C&amp;K metrics and other OO metrics.
The dependent variable was expressed in terms of bugs in the existing datasets. Since
the focus of this study is to evaluate maintainability in terms of code line changes, we
calculated the change between the same classes from two versions of the software
projects JEdit, Log4j, and Xalan using the Beyond compare tool5. It should be noted that
the same methodology was used in [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ], [
        <xref ref-type="bibr" rid="ref44">44</xref>
        ]–[
        <xref ref-type="bibr" rid="ref46">46</xref>
        ].
4.2
      </p>
    </sec>
    <sec id="sec-8">
      <title>Accuracy criteria</title>
      <p>Accuracy criteria are essential in SPMP techniques. This study focused on the
prediction data mining task where the most commonly used techniques (see Table 1) were
MMRE and Pred(0.25), which are based on the Magnitude of Relative Error (MRE)
MMRE
1</p>
      <p>= ∑
  =0 

(2)</p>
      <p>Pred
= 100 ∑

 =1 {10   ℎ
 ≤ 0.25
(0.25) (3)
(1), (2), and (3).</p>
      <p>MRE</p>
      <p>
        Since the MRE has been criticized for being biased and unbalanced [
        <xref ref-type="bibr" rid="ref47">47</xref>
        ], [
        <xref ref-type="bibr" rid="ref48">48</xref>
        ], [
        <xref ref-type="bibr" rid="ref49">49</xref>
        ],
in this study we applied some unbiased accuracy criteria that do not present asymmetric
distribution [
        <xref ref-type="bibr" rid="ref50">50</xref>
        ], namely: Mean Balanced Relative Error (MBRE) [
        <xref ref-type="bibr" rid="ref48">48</xref>
        ], [
        <xref ref-type="bibr" rid="ref51">51</xref>
        ], Mean
Inverted Balanced Relative Error (MIBRE) [
        <xref ref-type="bibr" rid="ref48">48</xref>
        ], [
        <xref ref-type="bibr" rid="ref51">51</xref>
        ], and Mean Absolute Error (MAE),
which is based on Absolute Error (AE). These accuracy criteria are described in (4),
(5), (7), and (6), respectively.
3 Xalan Homepage. http://xalan.apache.org/index.html
4 JEdit Homepage.http://www.jedit.org/
5 https://www.scootersoftware.com/
      </p>
      <p>|  − ̂ |
 =1 min(  , ̂ )
(4)</p>
      <p>
        MIBRE =1 ∑

better   is than random guessing. Clearly, a value close to zero is discouraging and a
negative value would be worrisome” [
        <xref ref-type="bibr" rid="ref52">52</xref>
        ]. It is recommended to use the 5% quantile of
random guessing: “the interpretation of the 5% quantile for  0is similar to the use of α
for conventional statistical inference, that is, any accuracy value that is better than this
threshold has a less than one in twenty chance of being a random occurrence” [
        <xref ref-type="bibr" rid="ref52">52</xref>
        ].
      </p>
      <p>LSD=</p>
      <p>
        √∑ =1
(  +  22)²
 −1
(8)
Where:   = ln(  ) − ln(  ̂ ).  2 is an estimator of the variance of the residual
  . 
 0is the sample standard deviation of the random guessing strategy. 
  is
defined as the 
of the prediction method   . 
 0 is the mean of a large number—
typically 1000—of runs of random guessing. Note that the above accuracy criteria were
used all together previously in [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], [
        <xref ref-type="bibr" rid="ref41">41</xref>
        ] for software development effort estimation but
have never been used in previously published SPMP studies [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] (see Table 1).
4.3
      </p>
    </sec>
    <sec id="sec-9">
      <title>Scott–Knott significance statistical test</title>
      <p>
        Scott-Knott (SK) [
        <xref ref-type="bibr" rid="ref53">53</xref>
        ] is a hierarchical clustering algorithm used as an exploratory data
analysis tool for analysis of variance (ANOVA). It was developed by Scott and Knott
as a way to find distinct identical comparison groups of treatment means considering
type I error [
        <xref ref-type="bibr" rid="ref53">53</xref>
        ]. In this study, the SK test was used to statistically investigate whether
there is a significant difference between the ensembles based on MAE, i.e., to cluster
the techniques that have identical predictions potential. Note that several studies in the
software engineering field have used the SK test to rank investigated techniques [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ],
[
        <xref ref-type="bibr" rid="ref41">41</xref>
        ], [
        <xref ref-type="bibr" rid="ref54">54</xref>
        ].
5
      </p>
      <sec id="sec-9-1">
        <title>Results and Discussion</title>
        <p>This section evaluates and discusses the prediction performance of HM and HT
ensembles used in this study on the five datasets. Fig. 1 presents the process followed to
perform this empirical study. Two main steps are identified:
 Step 1: Identify the most accurate HM ensembles (Bagging, AdaBoost, GradBoost,
RF, and ExTrees). This step includes:
─ Use of the five historical datasets, namely UIMS, QUES, JEdit, Log4j, and Xalan.
─ Application of the LOOCV method, which consists in using one instance from a
dataset as the test set and the remaining N-1 instances as the training set N times,
where N is the number of instances in a specific dataset.
─ Evaluate the performance of the HM ensembles in terms of SA and effect size
accuracy criteria, and eliminate those that have an SA value less than 5% quartile.
─ Use of the SK test to statistically compare the HM ensembles.
─ Use of the Borda count voting method to rank the HM ensembles that appeared
in the best cluster using MAE, Pred(25), MBRE, MIBRE, and LSD.
 Step 2: The most accurate HM ensembles (from Step1) are combined using the SG
to construct HT ensembles per dataset.
To perform this empirical study, different tools were used. A software prototype for
each ML technique and each HM ensemble based on Scikit-learn API was developed
using Python. The statistical tests (SK and Kolmogorov-Smirnov, and the Box-Cox
transformation) were performed through R software.
5.1</p>
      </sec>
    </sec>
    <sec id="sec-10">
      <title>Results and discussion – HM</title>
      <p>Table 2 reports the performance of HM ensembles based on SA and effect size accuracy
criteria over the five datasets. The second row of Table 2 shows the 5% quantile SA of
random guessing for each dataset ( 5%). It can be seen that all HM ensembles
generated better predictions than random guessing since their SA values were higher
than  5%. Moreover, all HM ensembles across all datasets showed a large
improvement over guessing since their effect size test results are larger than 0.8. The following
summarizes the results for each dataset and then for all datasets: For the UIMS dataset,
GradBoost achieved good accuracy compared to other ensembles with an SA value of
0.883, followed by ExTrees with 0.863. The Bagging and AdaBoost also gave good
results compared to RF, which ranked last. For the QUES dataset, GradBoost provided
the best prediction results with an SA value of 0.957, followed by ExTrees (SA= 0.935).
Other ensembles: Bagging, RF, and AdaBoost were more or less equal in terms of SA
values (≈ 0.91). For the JEdit dataset, GradBoost ranked first with an SA value of
0.961, followed by ExTrees (0.959). Bagging and RF gave the same results, 0.943 and
0.942, respectively. The AdaBoost ensemble ranked last with an SA value of 0.890. For
the Xalan dataset, GradBoost achieved the best results (SA= 0.981) compared to the
other ensembles. Bagging and RF were more or less equal with an SA value of 0.972
and 0.971, respectively, followed by ExTrees (SA= 0.963), while AdaBoost scored
lowest among the other ensembles with an SA value of 0.831. For the Log4j dataset,
GradBoost came first with an SA value of 0.932, followed by ExTrees (SA= 0.927),
then RF and Bagging, which were more or less equal with a SA values of 0.904 and
0.903, respectively. AdaBoost ranked last with an SA value of 0.865.</p>
      <p>The results for all datasets are as follows: All HM ensembles across all datasets
achieved better predictions than random guessing. GradBoost ranked first in all
datasets. Bagging and RF achieved generally the same results in all datasets, while in the
UIMS dataset, RF ranked last. AdaBoost ensemble ranked last in four datasets and 4th
in one dataset.</p>
      <p>Dataset</p>
      <p>
        %
HM
Technique
Bagging
ExTrees
RF
GradBoost
AdaBoost
Furthermore, Fig. 2 shows the plot of SK testing of constructed ensembles per dataset.
The x-axis represents the selected ensembles and the y-axis represents the transformed
AEs. Every vertical line shows the variation of transformed AEs for each technique,
and the small circle represents the mean of transformed AEs. The farther to the right a
technique is positioned, the better its performance, and the brown box indicates the best
cluster. Note that we transformed AE values using the Box-Cox method [
        <xref ref-type="bibr" rid="ref55">55</xref>
        ] since the
data (i.e., AE) do not follow a normal distribution in all cases. As can be seen from Fig.
2, two groups were generated in all datasets, except for the Xalan, in which four groups
were generated by the SK test. Note that the green box in the right-hand group for each
dataset indicates the best group. ExTrees, GradBoost, Bagging, and RF appear in the
best cluster in three datasets: JEdit, Log4j, and UIMS, This means that these ensembles
are indifferent. For QUES and Xalan datasets, only GradBoost and ExTrees appear in
the best cluster. The AdaBoost technique appears in the last cluster in all datasets.
      </p>
      <p>
        Table 3 presents the ranks of the HM ensembles that appear in the best cluster
calculated by the Borda count method over five accuracy criteria (MAE, Pred(25), MBRE,
MIBRE, and LSD). GradBoost ranked first and ExTrees second in all datasets. This
leads to the conclusion that some ensembles are solid and scalable to datasets of
different software systems and can be used across software systems for predicting
maintainability [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. As for Bagging and RF, they ranked third or fourth on three datasets, leading
us to conclude that these two ensembles generate the same results in predicting software
maintainability.
The HM ensembles generated by SK in the best cluster (Table 3) per dataset were
combined using the SG. Table 4 presents the constructed HT ensembles. Bagging,
GradBoost, ExTrees, and RF were combined for the UIMS, JEdit, and Log4j datasets, while
GradBoost and ExTrees were combined for the Xalan and QUES datasets.
      </p>
      <p>The results of SG in Table 4 indicate that the HT ensembles give the best results
when Bagging, GradBoost, ExTrees, and RF are used for UIMS, JEdit, and Log4j
datasets. The same results were obtained for QUES and Xalan by combining GradBoost
and ExTrees. We can conclude that SG with the proposed combination for each dataset
achieves good results with an SA value of 1.00. In fact, such a result was expected,
since all the HM ensembles used to construct the HT ones belong to the best cluster of
SK (i.e., Bagging, GradBoost, ExTrees, and RF), with SA values ranging from 0.783
to 0.981. The use of SG further improved the results to this good level of accuracy.
However, the result obtained in this step is too good to be true, and replicated studies
are needed to confirm this finding.</p>
      <sec id="sec-10-1">
        <title>Threats to Validity</title>
        <p>
          This section presents the threats to the three aspects of validity of this empirical study
(e.g., internal, external, and construct validity) according to [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ], [
          <xref ref-type="bibr" rid="ref56">56</xref>
          ], [
          <xref ref-type="bibr" rid="ref57">57</xref>
          ].
        </p>
        <p>
          Internal validity is related to the use of a biased validation method to assess the
performance of prediction techniques. Many SPMP studies use the whole data or
holdout method, so that the evaluation focuses only on a unique subset of data, which can
result in a biased and unreliable assessment of performance. To overcome this
limitation, LOOCV is used as a validation method. It can generate the same results when the
empirical study is replicated using a particular dataset, which is not the case for
crossvalidation [
          <xref ref-type="bibr" rid="ref58">58</xref>
          ].
        </p>
        <p>External validity is related to the degree of generalizability of the results. The
proposed ensembles were evaluated over five datasets from different sources and different
application domains. The datasets used in this study are varied in terms of size, number
of features, and application domains, and this makes them adequate for evaluating our
techniques. Besides, this study deals only with numerical data; hence, the findings of
this study may differ from other studies that use other types of data.</p>
        <p>
          Construct validity is related to the reliability and credibility of the accuracy criteria
used to assess performance. This study used SA that is an unbiased accuracy criterion
and less vulnerable to asymmetry assumption, proposed by Shepperd and MacDonell
[
          <xref ref-type="bibr" rid="ref52">52</xref>
          ]. Moreover, five accuracy criteria were used: MAE, Pred(25), MBRE, MIBRE, and
LSD, aggregated by means of the Borda count coting method. The most widely used
accuracy criterion in SPMP area, MMRE, was not used in this study because many
researchers have criticized it for favoring underestimation [
          <xref ref-type="bibr" rid="ref48">48</xref>
          ], [
          <xref ref-type="bibr" rid="ref52">52</xref>
          ], [
          <xref ref-type="bibr" rid="ref59">59</xref>
          ].
7
        </p>
      </sec>
      <sec id="sec-10-2">
        <title>Conclusion and Future Work</title>
        <p>In this empirical study, the performance of five HM ensembles (Bagging, AdaBoost,
GradBoost, RF, and ExTrees) for predicting software maintainability was assessed over
five datasets using the LOOCV method based on SA and effect size. The SK test and
the Borda count were used to statistically compare and rank the HM ensembles based
on five accuracy criteria: MAE, Pred(25), MBRE, MIBRE, and LSD. In addition, we
took the HM ensembles that appeared in the best cluster in each dataset and combined
them using SG to construct HT ensembles. The findings with respect to the research
questions are the following:
 RQ1: Among the five HM ensembles, which one generates the best accuracy of
software product maintainability prediction? The empirical evaluations showed
that the GradBoost technique achieved the best results compared to other HM
ensembles in all datasets.
 RQ2: Do the HT ensembles constructed with SG improve SPMP accuracy? The
ensembles combined using SG outperformed the HM ensembles in all datasets and
generally gave good results in terms of SA values (SA=1.00 for all combinations).
 RQ3: Which ensemble gives the best performance regardless of the dataset
used? For all datasets, GradBoost ranked first and ExTrees second. This shows that
these two techniques perform better in different datasets.</p>
        <p>Ongoing work in SPMP involves using other HM ensembles such as Light Gradient
Boosting and eXtreme Gradient Boosting, as well as investigating the HT ensemble by
combining base learners with other combination rules such as average, weighted
average, best in training, etc. Moreover, replicating this empirical study with other datasets
may help to confirm or refute our conclusions. Generalized results regarding the
prediction of software product maintainability are therefore still not available to meet
software industry needs and the expectations for software maintainability prediction.</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>A.</given-names>
            <surname>Abran</surname>
          </string-name>
          and
          <string-name>
            <given-names>H.</given-names>
            <surname>Nguyenkim</surname>
          </string-name>
          , “
          <article-title>Measurement of the maintenance process from a demandbased perspective,”</article-title>
          <string-name>
            <given-names>J.</given-names>
            <surname>Softw</surname>
          </string-name>
          .
          <source>Maint. Res. Pract</source>
          ., pp.
          <fpage>63</fpage>
          -
          <issue>90</issue>
          ,
          <issue>5</issue>
          (
          <issue>2</issue>
          ), (
          <year>1993</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2. “ISO/IEC 25010:
          <article-title>2011 Systems and software engineering - Systems and software Quality Requirements and Evaluation (SQuaRE) - System and software quality models</article-title>
          ,” Geneva, Switzerland, (
          <year>2011</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>A.</given-names>
            <surname>Kaur</surname>
          </string-name>
          and
          <string-name>
            <given-names>K.</given-names>
            <surname>Kaur</surname>
          </string-name>
          , “
          <article-title>Statistical comparison of modelling methods for software maintainability prediction,”</article-title>
          <string-name>
            <given-names>Int. J.</given-names>
            <surname>Softw</surname>
          </string-name>
          . Eng. Knowl. Eng., pp.
          <fpage>743</fpage>
          -
          <lpage>774</lpage>
          ,
          <issue>23</issue>
          (
          <issue>06</issue>
          ), (
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>M.</given-names>
            <surname>Riaz</surname>
          </string-name>
          , E. Mendes, and E. Tempero, “
          <article-title>A systematic review of software maintainability prediction and metrics</article-title>
          ,
          <source>” in 3rd International Symposium on Empirical Software Engineering and Measurement</source>
          , pp.
          <fpage>367</fpage>
          -
          <lpage>377</lpage>
          , Lake Buena Vista, FL, USA (
          <year>2009</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>M.</given-names>
            <surname>Riaz</surname>
          </string-name>
          , “
          <article-title>Maintainability prediction of relational database-driven applications: a systematic review</article-title>
          ,” In: International Conference on Evaluation &amp;
          <article-title>Assessment in Software Engineering</article-title>
          ,
          <string-name>
            <given-names>IET</given-names>
            ,
            <surname>Ciudad</surname>
          </string-name>
          <string-name>
            <given-names>Real</given-names>
            ,
            <surname>Spain</surname>
          </string-name>
          (
          <year>2012</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>S.</given-names>
            <surname>Elmidaoui</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Cheikhi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Idri</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Abran</surname>
          </string-name>
          , “
          <article-title>Empirical Studies on Software Product Maintainability Prediction: A Systematic Mapping and Review,” e-Informatica Softw</article-title>
          . Eng. J., pp.
          <fpage>141</fpage>
          -
          <lpage>202</lpage>
          ,
          <issue>13</issue>
          (
          <issue>1</issue>
          ), (
          <year>2019</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>S.</given-names>
            <surname>Elmidaoui</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Cheikhi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Idri</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Abran</surname>
          </string-name>
          , “
          <source>Machine Learning Techniques for Software Maintainability Prediction: Accuracy Analysis,” J. Comput. Sci. Technol</source>
          ., (
          <year>2020</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>H.</given-names>
            <surname>Alsolai</surname>
          </string-name>
          and
          <string-name>
            <given-names>M.</given-names>
            <surname>Roper</surname>
          </string-name>
          , “
          <article-title>A systematic literature review of machine learning techniques for software maintainability prediction,” Inf</article-title>
          . Softw. Technol., pp.
          <fpage>106</fpage>
          -
          <lpage>214</lpage>
          , vol.
          <volume>119</volume>
          , (
          <year>2020</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>H.</given-names>
            <surname>Aljamaan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. O.</given-names>
            <surname>Elish</surname>
          </string-name>
          ,
          <string-name>
            <surname>and I. Ahmad</surname>
          </string-name>
          , “
          <article-title>An ensemble of computational intelligence models for software maintenance effort prediction</article-title>
          ,” in
          <source>International Work-Conference on Artificial Neural Networks</source>
          , pp.
          <fpage>592</fpage>
          -
          <lpage>603</lpage>
          , (
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>M. O. Elish</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          <string-name>
            <surname>Aljamaan</surname>
            ,
            <given-names>and I. Ahmad</given-names>
          </string-name>
          , “
          <article-title>Three empirical studies on predicting software maintainability using ensemble methods,” Soft Comput</article-title>
          ., pp.
          <fpage>2511</fpage>
          -
          <lpage>2524</lpage>
          ,
          <issue>19</issue>
          (
          <issue>9</issue>
          ), (
          <year>2015</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>M. Hosni</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Idri</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Abran</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A. B.</given-names>
            <surname>Nassif</surname>
          </string-name>
          , “
          <article-title>On the Value of Parameter Tuning in Heterogeneous Ensembles Effort Estimation,” Soft Comput</article-title>
          ., pp.
          <fpage>5977</fpage>
          -
          <lpage>6010</lpage>
          ,
          <issue>22</issue>
          (
          <issue>18</issue>
          ), (
          <year>2018</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>P. L. Braga</surname>
            ,
            <given-names>A. L. I.</given-names>
          </string-name>
          <string-name>
            <surname>Oliveira</surname>
            ,
            <given-names>G. H. T.</given-names>
          </string-name>
          <string-name>
            <surname>Ribeiro</surname>
            , and
            <given-names>S. R. L.</given-names>
          </string-name>
          <string-name>
            <surname>Meira</surname>
          </string-name>
          , “
          <article-title>Bagging Predictors for Estimation of Software Project Effort</article-title>
          ,” in
          <source>2007 International Joint Conference on Neural Networks</source>
          , pp.
          <fpage>1595</fpage>
          -
          <lpage>1600</lpage>
          , (
          <year>2007</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <given-names>H. I.</given-names>
            <surname>Aljamaan</surname>
          </string-name>
          and
          <string-name>
            <given-names>M. O.</given-names>
            <surname>Elish</surname>
          </string-name>
          , “
          <article-title>An empirical study of bagging and boosting ensembles for identifying faulty classes in object-oriented software</article-title>
          ,”
          <source>in IEEE Symposium on Computational Intelligence and Data Mining</source>
          , pp.
          <fpage>187</fpage>
          -
          <lpage>194</lpage>
          , (
          <year>2009</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <given-names>S.</given-names>
            <surname>Gutta</surname>
          </string-name>
          and
          <string-name>
            <given-names>H.</given-names>
            <surname>Wechsler</surname>
          </string-name>
          , “
          <article-title>Face recognition using hybrid classifier systems</article-title>
          ,” in
          <source>International Conference on Neural Networks (ICNN'96)</source>
          , pp.
          <fpage>1017</fpage>
          -
          <lpage>1022</lpage>
          , vol.
          <volume>2</volume>
          , (
          <year>1996</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <given-names>F.</given-names>
            <surname>Ye</surname>
          </string-name>
          ,
          <string-name>
            <given-names>X.</given-names>
            <surname>Zhu</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Y.</given-names>
            <surname>Wang</surname>
          </string-name>
          , “
          <article-title>A new software maintainability evaluation model based on multiple classifiers combination</article-title>
          ,” in International Conference on Quality, Reliability, Risk, Maintenance, and Safety Engineering (QR2MSE), pp.
          <fpage>1588</fpage>
          -
          <lpage>1591</lpage>
          , (
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <given-names>M.</given-names>
            <surname>Ruchika</surname>
          </string-name>
          and
          <string-name>
            <given-names>J.</given-names>
            <surname>Ravi</surname>
          </string-name>
          , “
          <article-title>Prediction and Assessment of Change Prone Classes Using Statistical and Machine Learning Techniques,”</article-title>
          <string-name>
            <given-names>J.</given-names>
            <surname>Inf</surname>
          </string-name>
          . Process. Syst., pp.
          <fpage>778</fpage>
          -
          <lpage>804</lpage>
          ,
          <issue>13</issue>
          (
          <issue>4</issue>
          ), (
          <year>2017</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <given-names>Y.</given-names>
            <surname>Tian</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Chen</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Zhang</surname>
          </string-name>
          , “
          <article-title>Aode for source code metrics for improved software maintainability</article-title>
          ,” in International Conference on Semantics,
          <source>Knowledge and Grid</source>
          , pp.
          <fpage>330</fpage>
          -
          <lpage>335</lpage>
          , Beijing, China (
          <year>2008</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <given-names>A.</given-names>
            <surname>Kaur</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Kaur</surname>
          </string-name>
          , and
          <string-name>
            <given-names>K.</given-names>
            <surname>Pathak</surname>
          </string-name>
          , “
          <article-title>Software maintainability prediction by data mining of software code metrics</article-title>
          ,
          <source>” in International Conference on Data Mining and Intelligent Computing (ICDMIC)</source>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>6</lpage>
          , New Delhi, India (
          <year>2014</year>
          )..
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>M. O. Elish</surname>
            and
            <given-names>K. O.</given-names>
          </string-name>
          <string-name>
            <surname>Elish</surname>
          </string-name>
          , “
          <article-title>Application of treenet in predicting object-oriented software maintainability: A comparative study</article-title>
          ,
          <source>” in European Conference on Software Maintenance and Reengineering</source>
          , pp.
          <fpage>69</fpage>
          -
          <lpage>78</lpage>
          , Kaiserslautern, Germany (
          <year>2009</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <given-names>C.</given-names>
            <surname>Sammut</surname>
          </string-name>
          and
          <string-name>
            <given-names>G. I.</given-names>
            <surname>Webb</surname>
          </string-name>
          , Eds., “Stacked Generalization,” in
          <source>Encyclopedia of Machine Learning</source>
          , Boston, MA:
          <string-name>
            <surname>Springer</surname>
            <given-names>US</given-names>
          </string-name>
          , (
          <year>2010</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21. L. Breiman, “Bagging Predictors,” Mach. Learn., pp.
          <fpage>123</fpage>
          -
          <lpage>140</lpage>
          ,
          <issue>24</issue>
          (
          <issue>2</issue>
          ), (
          <year>1996</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <given-names>B.</given-names>
            <surname>Efron</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Rogosa</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Tibshirani</surname>
          </string-name>
          , “Resampling Methods of Estimation,”
          <source>Int. Encycl. Soc. Behav. Sci.</source>
          , pp.
          <fpage>492</fpage>
          -
          <lpage>495</lpage>
          , (
          <year>2015</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23. S. B.
          <string-name>
            <surname>Kotsiantis</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          <string-name>
            <surname>Kanellopoulos</surname>
            ,
            <given-names>and I. D.</given-names>
          </string-name>
          <string-name>
            <surname>Zaharakis</surname>
          </string-name>
          , “
          <source>Bagged Averaging of Regression Models,” in Artificial Intelligence Applications and Innovations</source>
          , pp.
          <fpage>53</fpage>
          -
          <lpage>60</lpage>
          , (
          <year>2006</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <given-names>G. P.</given-names>
            <surname>Kumari</surname>
          </string-name>
          , “
          <string-name>
            <given-names>A Study</given-names>
            <surname>Of Bagging And Boosting Approaches To Develop</surname>
          </string-name>
          Meta-Classifier,
          <source>” Eng. Sci. Technol. An Int. J.</source>
          ,
          <volume>2</volume>
          (
          <issue>5</issue>
          ), (
          <year>2012</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25.
          <string-name>
            <given-names>L. L.</given-names>
            <surname>Minku</surname>
          </string-name>
          and
          <string-name>
            <given-names>X.</given-names>
            <surname>Yao</surname>
          </string-name>
          , “
          <article-title>A Principled Evaluation of Ensembles of Learning Machines for Software Effort Estimation</article-title>
          ,” in International Conference on Predictive Models in Software Engineering, pp.
          <volume>9</volume>
          :
          <fpage>1</fpage>
          --
          <lpage>9</lpage>
          :
          <fpage>10</fpage>
          ,
          <string-name>
            <surname>Banff</surname>
          </string-name>
          , Alberta, Canada (
          <year>2011</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26.
          <string-name>
            <given-names>Y.</given-names>
            <surname>Freund</surname>
          </string-name>
          and
          <string-name>
            <given-names>R. E.</given-names>
            <surname>Schapire</surname>
          </string-name>
          , “
          <article-title>A Decision-Theoretic Generalization of On-Line Learning and an Application to Boosting,”</article-title>
          <string-name>
            <given-names>J.</given-names>
            <surname>Comput</surname>
          </string-name>
          . Syst. Sci., pp.
          <fpage>119</fpage>
          -
          <lpage>139</lpage>
          ,
          <issue>55</issue>
          (
          <issue>1</issue>
          ), (
          <year>1997</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <given-names>N.</given-names>
            <surname>Kummer</surname>
          </string-name>
          and
          <string-name>
            <given-names>H.</given-names>
            <surname>Najjaran</surname>
          </string-name>
          , “Adaboost. MRT:
          <article-title>Boosting regression for multivariate estimation</article-title>
          .,
          <source>” Artif. Intell. Res.</source>
          , pp.
          <fpage>64</fpage>
          -
          <issue>76</issue>
          ,
          <issue>3</issue>
          (
          <issue>4</issue>
          ), (
          <year>2014</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          28.
          <string-name>
            <given-names>Y.</given-names>
            <surname>Freund</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Schapire</surname>
          </string-name>
          , and
          <string-name>
            <given-names>N.</given-names>
            <surname>Abe</surname>
          </string-name>
          , “
          <article-title>A short introduction to boosting</article-title>
          ,
          <source>” Journal-Japanese Soc. Artif</source>
          . Intell., pp.
          <fpage>771</fpage>
          -
          <lpage>780</lpage>
          ,
          <issue>14</issue>
          (
          <issue>1612</issue>
          ), (
          <year>1999</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          29. L. Breiman, “Random Forests,” Mach. Learn., pp.
          <fpage>5</fpage>
          -
          <issue>32</issue>
          ,
          <issue>45</issue>
          (
          <issue>1</issue>
          ), (
          <year>2001</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          30.
          <string-name>
            <given-names>A.</given-names>
            <surname>Liaw</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Wiener</surname>
          </string-name>
          , and others, “
          <article-title>Classification and regression by random Forest</article-title>
          ,” R news, pp.
          <fpage>18</fpage>
          -
          <issue>22</issue>
          ,
          <issue>2</issue>
          (
          <issue>3</issue>
          ), (
          <year>2002</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          31.
          <string-name>
            <surname>C. Breiman</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Friedman</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Olshen</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Stone</surname>
          </string-name>
          , “
          <article-title>Classification and regression trees</article-title>
          ,
          <source>” Wadsworth Int. Gr.</source>
          , pp.
          <fpage>237</fpage>
          -
          <lpage>251</lpage>
          ,
          <issue>37</issue>
          (
          <issue>15</issue>
          ), (
          <year>1984</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref32">
        <mixed-citation>
          32. R.
          <article-title>Díaz-Uriarte and</article-title>
          S. Alvarez de Andrés, “
          <article-title>Gene selection and classification of microarray data using random forest</article-title>
          ,
          <source>” BMC Bioinformatics</source>
          ,
          <volume>7</volume>
          (
          <issue>1</issue>
          ), (
          <year>2006</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref33">
        <mixed-citation>
          33.
          <string-name>
            <given-names>P.</given-names>
            <surname>Geurts</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Ernst</surname>
          </string-name>
          , and L. Wehenkel, “
          <article-title>Extremely randomized trees</article-title>
          ,” Mach. Learn., pp.
          <fpage>3</fpage>
          -
          <issue>42</issue>
          ,
          <issue>63</issue>
          (
          <issue>1</issue>
          ), (
          <year>2006</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref34">
        <mixed-citation>
          34.
          <string-name>
            <surname>J. H. Friedman</surname>
            , “Greedy Function Approximation:
            <given-names>A Gradient</given-names>
          </string-name>
          <string-name>
            <surname>Boosting</surname>
            <given-names>Machine</given-names>
          </string-name>
          ,” Ann. Stat., pp.
          <fpage>1189</fpage>
          -
          <lpage>1232</lpage>
          , vol.
          <volume>29</volume>
          , (
          <year>2000</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref35">
        <mixed-citation>
          35.
          <string-name>
            <given-names>R.</given-names>
            <surname>Tugay</surname>
          </string-name>
          and
          <string-name>
            <given-names>S. G.</given-names>
            <surname>Ögüdücü</surname>
          </string-name>
          , “
          <article-title>Demand Prediction using Machine Learning Methods and Stacked Generalization,”</article-title>
          <source>In: International Conference on Data Science, Technology and Applications - Volume 1: DATA</source>
          , pp.
          <fpage>216</fpage>
          -
          <lpage>222</lpage>
          , Madrid, Spain (
          <year>2017</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref36">
        <mixed-citation>
          36.
          <string-name>
            <surname>D. H. Wolpert</surname>
          </string-name>
          , “Stacked generalization,
          <source>” Neural Networks</source>
          , pp.
          <fpage>241</fpage>
          -
          <issue>259</issue>
          ,
          <issue>5</issue>
          (
          <issue>2</issue>
          ), (
          <year>1992</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref37">
        <mixed-citation>
          37.
          <string-name>
            <surname>C. C.</surname>
          </string-name>
          <article-title>Aggarwal, Data classification: algorithms and applications</article-title>
          . CRC press, (
          <year>2014</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref38">
        <mixed-citation>
          38. C. Catal, “
          <article-title>Review: Software Fault Prediction: A Literature Review and Current Trends,” Expert Syst</article-title>
          . Appl., pp.
          <fpage>4626</fpage>
          -
          <lpage>4636</lpage>
          ,
          <issue>38</issue>
          (
          <issue>4</issue>
          ), (
          <year>2011</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref39">
        <mixed-citation>
          39.
          <string-name>
            <given-names>C.</given-names>
            <surname>Catal</surname>
          </string-name>
          and
          <string-name>
            <given-names>B.</given-names>
            <surname>Diri</surname>
          </string-name>
          , “
          <article-title>A Systematic Review of Software Fault Prediction Studies,” Expert Syst</article-title>
          . Appl., pp.
          <fpage>7346</fpage>
          -
          <lpage>7354</lpage>
          ,
          <issue>36</issue>
          (
          <issue>4</issue>
          ), (
          <year>2009</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref40">
        <mixed-citation>
          40. L.
          <string-name>
            <surname>Jonsson</surname>
          </string-name>
          ,
          <source>Machine Learning-Based Bug Handling in Large-Scale Software Development</source>
          , vol.
          <year>1936</year>
          . Linköping University Electronic Press, (
          <year>2018</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref41">
        <mixed-citation>
          41.
          <string-name>
            <surname>M. Azzeh</surname>
            ,
            <given-names>A. B.</given-names>
          </string-name>
          <string-name>
            <surname>Nassif</surname>
            , and
            <given-names>L. L.</given-names>
          </string-name>
          <string-name>
            <surname>Minku</surname>
          </string-name>
          , “
          <article-title>An Empirical Evaluation of Ensemble Adjust Methods for Analogy-based Effort Estimation,”</article-title>
          <string-name>
            <given-names>J.</given-names>
            <surname>Syst</surname>
          </string-name>
          . Softw., pp.
          <fpage>36</fpage>
          -
          <lpage>52</lpage>
          , 103(C), (
          <year>2015</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref42">
        <mixed-citation>
          42.
          <string-name>
            <given-names>W.</given-names>
            <surname>Li</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Henry</surname>
          </string-name>
          , “
          <article-title>Object-oriented metrics that predict maintainability,”</article-title>
          <string-name>
            <given-names>J.</given-names>
            <surname>Syst</surname>
          </string-name>
          . Softw., pp.
          <fpage>111</fpage>
          -
          <lpage>122</lpage>
          ,
          <issue>23</issue>
          (
          <issue>2</issue>
          ), (
          <year>1993</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref43">
        <mixed-citation>
          43.
          <string-name>
            <given-names>S. R.</given-names>
            <surname>Chidamber</surname>
          </string-name>
          and
          <string-name>
            <given-names>C. F.</given-names>
            <surname>Kemerer</surname>
          </string-name>
          , “
          <article-title>A metrics suite for object oriented design,”</article-title>
          <source>IEEE Trans. Softw</source>
          . Eng., pp.
          <fpage>476</fpage>
          -
          <lpage>493</lpage>
          ,
          <issue>20</issue>
          (
          <issue>6</issue>
          ), (
          <year>1994</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref44">
        <mixed-citation>
          44.
          <string-name>
            <given-names>Kumar</given-names>
            <surname>Lov</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Ashish</surname>
          </string-name>
          , “
          <article-title>A Comparative Study of Different Source Code Metrics and Machine Learning Algorithms for Predicting Change Proneness of Object Oriented Systems</article-title>
          ,” arXiv Prepr.
          <year>arXiv1712</year>
          .
          <volume>07944</volume>
          , (
          <year>2018</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref45">
        <mixed-citation>
          45.
          <string-name>
            <given-names>L.</given-names>
            <surname>Kumar</surname>
          </string-name>
          and
          <string-name>
            <given-names>S. K.</given-names>
            <surname>Rath</surname>
          </string-name>
          , “
          <article-title>Hybrid Functional Link Artificial Neural Network Approach for Predicting Maintainability of OO Software,”</article-title>
          <string-name>
            <given-names>J.</given-names>
            <surname>Syst</surname>
          </string-name>
          . Softw., pp.
          <fpage>170</fpage>
          -
          <lpage>190</lpage>
          , 121(C), (
          <year>2016</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref46">
        <mixed-citation>
          46.
          <string-name>
            <given-names>A.</given-names>
            <surname>Kaur</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Kaur</surname>
          </string-name>
          , and
          <string-name>
            <given-names>K.</given-names>
            <surname>Pathak</surname>
          </string-name>
          , “
          <article-title>A proposed new model for maintainability index of open source software</article-title>
          ,
          <source>” in 3rd International Conference on Reliability, Infocom Technologies and Optimization</source>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>6</lpage>
          , Noida, India (
          <year>2014</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref47">
        <mixed-citation>
          47.
          <string-name>
            <given-names>A.</given-names>
            <surname>Idri</surname>
          </string-name>
          ,
          <string-name>
            <surname>I.</surname>
          </string-name>
          <article-title>Abnane, and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Abran</surname>
          </string-name>
          , “
          <article-title>Evaluating Pred(p) and standardized accuracy criteria in software development effort estimation,”</article-title>
          <string-name>
            <given-names>J.</given-names>
            <surname>Softw</surname>
          </string-name>
          . Evol. Process,
          <volume>30</volume>
          (
          <issue>4</issue>
          ), (
          <year>2018</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref48">
        <mixed-citation>
          48.
          <string-name>
            <given-names>T.</given-names>
            <surname>Foss</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Stensrud</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Kitchenham</surname>
          </string-name>
          ,
          <string-name>
            <surname>and I. Myrtveit</surname>
          </string-name>
          , “
          <article-title>A simulation study of the model evaluation criterion MMRE,”</article-title>
          <source>IEEE Trans. Softw</source>
          . Eng., pp.
          <fpage>985</fpage>
          -
          <lpage>995</lpage>
          ,
          <issue>29</issue>
          (
          <issue>11</issue>
          ), (
          <year>2003</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref49">
        <mixed-citation>
          49. I.
          <string-name>
            <surname>Myrtveit</surname>
            , E. Stensrud, and
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Shepperd</surname>
          </string-name>
          , “
          <article-title>Reliability and Validity in Comparative Studies of Software Prediction Models,”</article-title>
          <source>IEEE Trans. Softw</source>
          . Eng., pp.
          <fpage>380</fpage>
          -
          <lpage>391</lpage>
          ,
          <issue>31</issue>
          (
          <issue>5</issue>
          ), (
          <year>2005</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref50">
        <mixed-citation>
          50.
          <string-name>
            <given-names>L. L.</given-names>
            <surname>Minku</surname>
          </string-name>
          and
          <string-name>
            <given-names>X.</given-names>
            <surname>Yao</surname>
          </string-name>
          , “
          <article-title>Ensembles and locality: Insight on improving software effort estimation,” Inf</article-title>
          . Softw. Technol., pp.
          <fpage>1512</fpage>
          -
          <lpage>1528</lpage>
          ,
          <issue>55</issue>
          (
          <issue>8</issue>
          ), (
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref51">
        <mixed-citation>
          51.
          <string-name>
            <given-names>Y.</given-names>
            <surname>Miyazaki</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Takanou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Nozaki</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Nakagawa</surname>
          </string-name>
          , and
          <string-name>
            <given-names>K.</given-names>
            <surname>Okada</surname>
          </string-name>
          , “
          <article-title>Method to estimate parameter values in software prediction models,” Inf</article-title>
          . Softw. Technol., pp.
          <fpage>239</fpage>
          -
          <lpage>243</lpage>
          ,
          <issue>33</issue>
          (
          <issue>3</issue>
          ), (
          <year>1991</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref52">
        <mixed-citation>
          52.
          <string-name>
            <given-names>M.</given-names>
            <surname>Shepperd</surname>
          </string-name>
          and
          <string-name>
            <surname>S. MacDonell</surname>
          </string-name>
          , “
          <source>Evaluating Prediction Systems in Software Project Estimation,” Inf. Softw. Technol.</source>
          , pp.
          <fpage>820</fpage>
          -
          <lpage>827</lpage>
          ,
          <issue>54</issue>
          (
          <issue>8</issue>
          ), (
          <year>2012</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref53">
        <mixed-citation>
          53.
          <string-name>
            <given-names>A. J.</given-names>
            <surname>Scott</surname>
          </string-name>
          and
          <string-name>
            <given-names>M.</given-names>
            <surname>Knott</surname>
          </string-name>
          , “
          <article-title>A cluster analysis method for grouping means in the analysis of variance</article-title>
          ,” Biometrics, pp.
          <fpage>507</fpage>
          -
          <lpage>512</lpage>
          , (
          <year>1974</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref54">
        <mixed-citation>
          54.
          <string-name>
            <given-names>N.</given-names>
            <surname>Mittas</surname>
          </string-name>
          and
          <string-name>
            <given-names>L.</given-names>
            <surname>Angelis</surname>
          </string-name>
          , “Ranking &amp;
          <article-title>Clustering Software Cost Estimation Models through a Multiple Comparisons Algorithm,”</article-title>
          <source>IEEE Trans. Softw</source>
          . Eng., pp.
          <fpage>537</fpage>
          -
          <lpage>551</lpage>
          ,
          <fpage>39</fpage>
          , (
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref55">
        <mixed-citation>
          55.
          <string-name>
            <given-names>G. E. P.</given-names>
            <surname>Box</surname>
          </string-name>
          and
          <string-name>
            <given-names>D. R.</given-names>
            <surname>Cox</surname>
          </string-name>
          , “
          <article-title>An analysis of transformations,”</article-title>
          <string-name>
            <given-names>J. R.</given-names>
            <surname>Stat</surname>
          </string-name>
          .
          <source>Soc. Ser. B</source>
          , pp.
          <fpage>211</fpage>
          -
          <lpage>252</lpage>
          , (
          <year>1964</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref56">
        <mixed-citation>
          56.
          <string-name>
            <given-names>S.</given-names>
            <surname>Elmidaoui</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Cheikhi</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Idri</surname>
          </string-name>
          , “
          <article-title>The Impact of SMOTE and Grid Search on Maintainability Prediction Models,”</article-title>
          <source>In: ACS/IEEE International Conference on Computer Systems and Applications</source>
          , AICCSA,
          <string-name>
            <surname>Abu</surname>
            <given-names>Dhabi</given-names>
          </string-name>
          , United Arab Emirates, (
          <year>2019</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref57">
        <mixed-citation>
          57.
          <string-name>
            <surname>M. Hosni</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Idri</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Abran</surname>
          </string-name>
          , “
          <article-title>Investigating Heterogeneous Ensembles with Filter Feature Selection for Software Effort Estimation,”</article-title>
          <source>In: International Workshop on Software Measurement and 12th International Conference on Software Process and Product Measurement</source>
          , pp.
          <fpage>207</fpage>
          -
          <lpage>220</lpage>
          , (
          <year>2017</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref58">
        <mixed-citation>
          58. E. Kocaguneli and
          <string-name>
            <given-names>T.</given-names>
            <surname>Menzies</surname>
          </string-name>
          , “
          <article-title>Software effort models should be assessed via leave-oneout validation,”</article-title>
          <string-name>
            <given-names>J.</given-names>
            <surname>Syst</surname>
          </string-name>
          . Softw., pp.
          <fpage>1879</fpage>
          -
          <lpage>1890</lpage>
          ,
          <volume>86</volume>
          , (
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref59">
        <mixed-citation>
          59.
          <string-name>
            <given-names>Y.</given-names>
            <surname>Miyazaki</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Terakado</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Ozaki</surname>
          </string-name>
          , and
          <string-name>
            <given-names>H.</given-names>
            <surname>Nozaki</surname>
          </string-name>
          , “
          <article-title>Robust regression for developing software estimation models,”</article-title>
          <string-name>
            <given-names>J.</given-names>
            <surname>Syst</surname>
          </string-name>
          . Softw., pp.
          <fpage>3</fpage>
          -
          <issue>16</issue>
          ,
          <issue>27</issue>
          (
          <issue>1</issue>
          ), (
          <year>1994</year>
          ).
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>