Machine Learning Classification to Effort Estimation for Embedded Software Development Projects

Machine Learning Classification to Effort Estimation for Embedded Software Development Projects

Kazunori Iwata (Department of Business Administration, Aichi University, Nagoya, Japan), Toyoshiro Nakashima (Department of Culture-Information Studies, Sugiyama Jogakuen University, Nagoya, Japan), Yoshiyuki Anan (Process Innovation H.Q, Omron Software Co., Ltd., Kyoto, Japan) and Naohiro Ishii (Department of Information Science, Aichi Institute of Technology, Nagoya, Japan)
Copyright: © 2017 |Pages: 14
DOI: 10.4018/IJSI.2017100102
OnDemand PDF Download:
No Current Special Offers


This paper discusses the effect of classification in estimating the amount of effort (in man-days) associated with code development. Estimating the effort requirements for new software projects is especially important. As outliers are harmful to the estimation, they are excluded from many estimation models. However, such outliers can be identified in practice once the projects are completed, and so they should not be excluded during the creation of models and when estimating the required effort. This paper presents classifications for embedded software development projects using an artificial neural network (ANN) and a support vector machine. After defining the classifications, effort estimation models are created for each class using linear regression, an ANN, and a form of support vector regression. Evaluation experiments are carried out to compare the estimation accuracy of the model both with and without the classifications using 10-fold cross-validation. In addition, the Games-Howell test with one-way analysis of variance is performed to consider statistically significant evidence.
Article Preview

Support Vector Regression

SVR uses the same principles as SVM for classification, albeit with a few minor differences. The IJSI.2017100102.m02-SVR (Alex & Bernhard, 2004) regression method uses an IJSI.2017100102.m03-insensitive loss function to solve regression problems. This approach attempts to find a continuous function in which as many data points as possible lie within the IJSI.2017100102.m04-wide insensitivity tube.IJSI.2017100102.m05-SVR is used to estimate the amount of effort required for software projects (Oliveira, 2006). This approach has been tested using the well-known NASA software project dataset (John & Victor, 1981; Shin & Goel, 2000). However, these studies did not investigate the parameters of IJSI.2017100102.m06-SVR. The effectiveness of the SVM (and SVR) using the resulting continuous function depends on the kernel parameter (IJSI.2017100102.m07) and soft margin parameter (C) (Cortes & Vapnik, 1995). In addition, the value of IJSI.2017100102.m08 affects the estimations given by IJSI.2017100102.m09-SVR.

We proposed a three-dimensional grid search to find the most appropriate combination of these parameters (Iwata, Liebman, Stone, Nakashima, Anan & Ishii, 2015). Our method improved the mean magnitude of relative error (MMRE, see Equation (3) in the section “Evaluation Criteria”) from 0.165 (Cortes & Vapnik, 1995) to 0.149 using leave-one-out cross-validation (Shin & Goel, 2000).

Complete Article List

Search this Journal:
Open Access Articles
Volume 9: 4 Issues (2021): 2 Released, 2 Forthcoming
Volume 8: 4 Issues (2020)
Volume 7: 4 Issues (2019)
Volume 6: 4 Issues (2018)
Volume 5: 4 Issues (2017)
Volume 4: 4 Issues (2016)
Volume 3: 4 Issues (2015)
Volume 2: 4 Issues (2014)
Volume 1: 4 Issues (2013)
View Complete Journal Contents Listing