Neural Networks to Predict Software Development/Maintenance Performance and Required Time
Matej Plugel, Domagoj Tolić · 2023
This research focuses on the application of multilayer perceptron Neural Networks (NNs) with Bayesian Regularization (BR) to predict task difficulty in software development/maintenance. The task difficulty is reflected through solution complexity and required time for resolving a given task. Our aim is to support traditional, human-based estimations by providing additional insights into the difficulty of current tasks. Previous research explores several NN types, including Bayesian, fuzzy and convolutional NNs, with prediction accuracy rates below 80%. Clearly, inaccurate predictions can lead to financial losses and may damage client relationships. We analyze data related to developing software features and resolving bugs/incidents obtained from JIRA Service Management. Our results advocate the use of multi-layer perceptron NNs with BR over Stochastic Gradient Descent (SDG), Levenberg-Marquardt and Resilient Backpropagation (RPROP) leading to an accuracy rate of about 70%. Further tuning of the model parameters such as hidden layers, learning rate, and regularization could improve the accuracy even further. Of course, the quality and precision of the data used to train a model have a great impact on its performance.