Predicting Delivery Capability in Iterative Software Development
Version 2 2024-06-04, 11:45Version 2 2024-06-04, 11:45
Version 1 2017-05-12, 07:55Version 1 2017-05-12, 07:55
journal contribution
posted on 2024-06-04, 11:45authored byM Choetkiertikul, HK Dam, Truyen TranTruyen Tran, A Ghose, J Grundy
Iterative software development has become widely practiced in industry. Since modern software projects require fast,
incremental delivery for every iteration of software development, it is essential to monitor the execution of an iteration, and foresee a
capability to deliver quality products as the iteration progresses. This paper presents a novel, data-driven approach to providing
automated support for project managers and other decision makers in predicting delivery capability for an ongoing iteration. Our
approach leverages a history of project iterations and associated issues, and in particular, we extract characteristics of previous
iterations and their issues in the form of features. In addition, our approach characterizes an iteration using a novel combination of
techniques including feature aggregation statistics, automatic feature learning using the Bag-of-Words approach, and graph-based
complexity measures. An extensive evaluation of the technique on five large open source projects demonstrates that our predictive
models outperform three common baseline methods in Normalized Mean Absolute Error and are highly accurate in predicting the
outcome of an ongoing iteration.