A systematic literature review of software effort prediction using machine learning methods

@article{Ali2019ASL,
  title={A systematic literature review of software effort prediction using machine learning methods},
  author={Asad Ali and Carmine Gravino},
  journal={Journal of Software: Evolution and Process},
  year={2019},
  volume={31}
}
  • Asad Ali, C. Gravino
  • Published 1 October 2019
  • Computer Science
  • Journal of Software: Evolution and Process
Machine learning (ML) techniques have been widely investigated for building prediction models, able to estimate software development effort as well as to improve the accuracy of other estimation techniques. The objective of this paper is to systematically review the recent studies which used and discussed the software effort estimation models built using ML techniques. The performed literature review is based on the empirical studies published in the time period of January 1991 to December 2017… 
Machine learning techniques for software testing effort prediction
TLDR
The contribution of the present study is to investigate the application for STEP of five machine learning (ML) models reported as the most accurate ones when applied to SDLC effort prediction.
Predictive analytics approaches for software effort estimation: A review
TLDR
Experiments on various machine learning algorithms for software Effort Estimation determines that Support Vector Machine produced the best performance comparatively with other algorithms.
Software Development Effort Estimation Techniques: A Survey
TLDR
Results and experiments with various ML algorithms for software effort estimation have shown that the LASSO algorithm with China dataset produced the best performance compared to the other algorithms.
On the value of filter feature selection techniques in homogeneous ensembles effort estimation
TLDR
Three filter feature selection techniques are investigated to check the predictive capability of four single ML techniques: K‐nearest neighbor, support vector regression, multilayer perceptron, and decision trees and their homogeneous ensemble over six well‐known datasets.
Evolution of Software Development Effort and Cost Estimation Techniques: Five Decades Study Using Automated Text Mining Approach
TLDR
It is found that artificial neural network, fuzzy logic, regression, analogy-based approach, and COCOMO methods are the most used techniques for SDECE followed by optimization, use case point, machine learning, and function point analysis.
Effort prediction for the software project construction phase
TLDR
The SVR model trained with the SMO algorithm having as kernel to the PUK (SVR‐SMO‐PUK) prediction accuracy was statistically compared to those accuracies obtained from statistical regression (SR), neural network (NN), and two types of SVR.
An empirical comparison of validation methods for software prediction models
TLDR
The results reveal that repeated 10‐fold CV with SDEE and optimistic boot with SFP data are the model validation methods that provide a better prediction accuracy in a greater number of experiments than the other model validate methods.
An efficient ANFIS-EEBAT approach to estimate effort of Scrum projects
TLDR
This work investigates the application of the adaptive neuro-fuzzy inference system (ANFIS) along with the novel Energy-Efficient BAT (EEBAT) technique for effort prediction in the Scrum environment and finds that ANFIS-EEBAT worked best as compared to various state-of-the-art meta-heuristic and machine learning algorithms.
Particle Swarm Optimization for Predicting the Development Effort of Software Projects
TLDR
It is concluded that the PSO can be used for optimizing SDEP equations taking into account the type of development, development platform, and programming language type of the projects.
...
...

References

SHOWING 1-10 OF 113 REFERENCES
Software effort estimation using machine learning techniques
TLDR
This paper presents an approach for estimation based upon machine learning techniques for non-quantitative data and is carried out in two phases, where Naive Bayes classifier achieved better results for estimation when compared with that by using Neural Network technique.
Software effort estimation based on optimized model tree
TLDR
This study investigates the effect of using the most recent optimization algorithm called Bees algorithm to specify the optimal choice of MT parameters that fit a specific dataset and therefore improve prediction accuracy and suggests the effectiveness of MT among the techniques that are suitable for effort estimation.
Data Mining Techniques for Software Effort Estimation: A Comparative Study
TLDR
A large scale benchmarking study is reported on, finding that by selecting a subset of highly predictive attributes such as project size, development, and environment related attributes, typically a significant increase in estimation accuracy can be obtained.
Software Cost Modelling and Estimation Using Artificial Neural Networks Enhanced by Input Sensitivity Analysis
TLDR
The results showed that the combination of ANN and ISA is an effective method for evaluating the contribution of cost factors, whereas the subsets of factors selected did not compromise the accuracy of the prediction results.
Early stage software effort estimation using random forest technique based on use case points
TLDR
The main objective of this study is to precisely assess the software projects development effort by utilising the use case point approach and the effort parameters are optimised utilise the RF technique to acquire higher prediction accuracy.
Effort estimation models using evolutionary learning algorithms for software development
  • G. Gabrani, Neha Saini
  • Computer Science
    2016 Symposium on Colossal Data Analysis and Networking (CDAN)
  • 2016
TLDR
A comparative study of various non-algorithmic techniques used for estimating the software effort by empirical evaluation of five different evolutionary learning algorithms shows that evolutionarylearning algorithms give more accurate results than machine learning algorithms.
Least Square Support Vector Machine in Analogy-Based software development effort estimation
TLDR
The potential application of LS-SVM is explored, which acts as a Non-linear error adjustment method for Analogy-Based Estimation (ABE) and is corroborated on three promise repository datasets and compared with other non-linear adjustment techniques.
...
...