Exploring the Efficacy of Artificial Neural Networks in Software Effort Estimation
Priya Varshini A G, K. Anitha Kumari, J. Ramprasath, R. Senthil, R E Gowthamraj · 2024
The Software projects planning phase is one of the Software Development Life Cycle stages. During this project planning phase, the major task is to estimate the software effort. The process of estimating the number of man-hours or man-months needed to complete a software project is recognized as software effort estimation. Numerous investigators have concentrated on this area and employed both algorithmic and non-algorithmic strategies to improve the accuracy of software effort estimation. There are many existing systems for software effort estimation. The main aim of this research is to determine machine learning method that produces the best results when compared experimentally with other models for software effort estimation. Data collected from past project and ongoing project and data preprocessing performed on the dataset and various models were built to analyze better algorithm among others. Addressing the challenges of overfitting and scalability is crucial for the development of accurate software effort estimation models. A variety of machine learning approaches, including Random Forest, Gradient Boosting Regressor, Decision Tree, and Artificial Neural Networks were used to identify the best performing model in order to solve Software Effort Estimation. The JM1 dataset were used in this project. Mean Absolute Error (MAE), Mean Squared Error (MSE), Root Mean Squared Error (RMSE), and R-Squared are the evaluation metrics taken into consideration. In this research it has proved that Artificial Neural Network is the best model based on the obtained results when compared to other models.