Advances in Distributed Computing and Artificial Intelligence Journal (Oct 2021)
An Empirical Analysis on Software Development Efforts Estimation in Machine Learning Perspective
Abstract
The prediction of effort estimation is a vital factor in the success of any software development project. The available of expert systems for the software effort estimation supports in minimization of effort and cost for every software project at same time leads to timely completion and proper resource management of the project. This article supports software project managers and decision makers by providing the state-of-the-art empirical analysis of effort estimation methods based on machine learning approaches. In this paper ?ve machine learning techniques; polynomial linear regression, ridge regression, decision trees, support vector regression and Multilayer Perceptron (MLP) are investigated for the purpose software development effort estimation by using bench mark publicly available data sets. The empirical performance of machine learning methods for software effort estimation is investigated on seven standard data sets i.e. Albretch, Desharnais, COCOMO81, NASA, Kemerer, China and Kitchenham. Furthermore, the performance of software effort estimation approaches are evaluated statistically applying the performance metrics i.e. MMRE, PRED (25), R2-score, MMRE, Pred(25). The empirical results reveal that the decision tree-based techniques on Deshnaris, COCOMO, China and kitchenham data sets produce more adequate results in terms of all three-performance metrics. On the Albretch and nasa datasets, the ridge regression method outperformed then other techniques except pred(25) metric where decision trees performed better.
Keywords