Heliyon (Nov 2024)
Utilizing machine learning algorithms for task allocation in distributed agile software development
Abstract
Distributed agile software development (DASD) has become a prominent software development approach. Proper task allocation is crucial in DASD to avoid undesirable outcomes including project rejection by clients, unfavorable team attitudes, and project failure. Coordination and communication issues occur as businesses embrace the DASD environment more frequently to tap into global talent and knowledge while cutting development expenses. To overcome these challenges, efficient task allocation planning becomes a crucial success component in software project management. The purpose of this study is to utilize machine learning (ML) predictive algorithms to determine the most appropriate role for a given task, with the aim of assisting software managers in making task assignments more efficiently and effectively in DASD environment. Preprocessing steps applied to the dataset include data cleaning, normalization, and partitioning into training, validation, and test sets. Four model classifiers were used in the experiment: Random Forest, Decision Tree, K-Nearest Neighbors (K-NN), and AdaBoost. The results showed that Random Forest outperformed the other classifiers in task allocation prediction, achieving an accuracy of 96.7 %, followed by K-NN (94.2 %), Decision Tree (93.5 %), and AdaBoost (93 %). The study demonstrates that ML models are effective in tackling task allocation issues in DASD settings, and the outcomes are promising.