skip to main content
10.1145/3412841.3442030acmconferencesArticle/Chapter ViewAbstractPublication PagessacConference Proceedingsconference-collections
research-article

An analysis of Monte Carlo simulations for forecasting software projects

Published: 22 April 2021 Publication History

Abstract

Forecasts of the effort or delivery date can play an important role in managing software projects, but the estimates provided by development teams are often inaccurate and time-consuming to produce. This is not surprising given the uncertainty that underlies this activity. This work studies the use of Monte Carlo simulations for generating forecasts based on project historical data. We have designed and run experiments comparing these forecasts against what happened in practice and to estimates provided by developers, when available. Comparisons were made based on the mean magnitude of relative error (MMRE). We did also analyze how the forecasting accuracy varies with the amount of work to be forecasted and the amount of historical data used. To minimize the requirements on input data, delivery date forecasts for a set of user stories were computed based on takt time of past stories (time elapsed between the completion of consecutive stories); effort forecasts were computed based on full-time equivalent (FTE) hours allocated to the implementation of past stories. The MMRE of delivery date forecasting was 32% in a set of 10 runs (for different projects) of Monte Carlo simulation based on takt time. The MMRE of effort forecasting was 20% in a set of 5 runs of Monte Carlo simulation based on FTE allocation, much smaller than the MMRE of 134% of developers' estimates. A better forecasting accuracy was obtained when the number of historical data points was 20 or higher. These results suggest that Monte Carlo simulations may be used in practice for delivery date and effort forecasting in agile projects, after a few initial sprints.

References

[1]
Mohamed Abouelela and Luigi Benedicenti. 2010. Bayesian network based XP Process Modelling. International Journal of Software Engineering & Applications 1 (July 2010).
[2]
Pekka Abrahamsson, Raimund Moser, Witold Pedrycz, Alberto Sillitti, and Giancarlo Succi. 2007. Effort Prediction in Iterative Software Development Processes - Incremental Versus Global Prediction Models. In First International Symposium on Empirical Software Engineering and Measurement, ESEM 2007. IEEE, Madrid, Spain, 344--353.
[3]
Alejandro Barredo Arrieta, Natalia Díaz-Rodríguez, Javier Del Ser, Adrien Bennetot, Siham Tabik, Alberto Barbado, Salvador García, Sergio Gil-López, Daniel Molina, Richard Benjamins, et al. 2020. Explainable Artificial Intelligence (XAI): Concepts, taxonomies, opportunities and challenges toward responsible AI. Information Fusion 58 (2020), 82--115.
[4]
Thomas Betts. 2019. Web-Based Monte Carlo Simulation for Agile Estimation. Available at https://mobilemonitoringsolutions.com/web-based-monte-carlo-simulation-for-agile-estimation/.
[5]
Roheet Bhatnagar, Vandana Bhattacharjee, and Mrinal Ghose. 2010. Software Development Effort Estimation - Neural Network Vs. Regression Modeling Approach. International Journal of Engineering Science and Technology 2 (07 2010).
[6]
Pawel Brodzinski. 2015. Estimation and Forecasting. Available at https://www.agilealliance.org/estimation-and-forecasting//.
[7]
Corinna Cortes and Vladimir Vapnik. 1995. Support-vector networks. Machine Learning 20 (1995), 273 -- 297.
[8]
Wei Du, Luiz Capretz, and Danny Ho. 2010. A Neuro-Fuzzy Model with SEER-SEM for Software Effort Estimation. In 25th International Forum on COCOMO and Systems/Software Cost Modeling. Los Angeles, CA, USA, 7.
[9]
Richard E. Fairley. 1992. Recent Advances in Software Estimation Techniques. In ICSE '92: Proceedings of the 14th international conference on Software engineering, ACM (Ed.). ACM, Melbourne, Australia, 382--391.
[10]
Adrian Fittolani. 2015. Agile Project Forecasting - The Monte Carlo Method. Scrumage. Available at http://scrumage.com/blog/2015/09/agile-project-forecasting-the-monte-carlo-method/.
[11]
James Grenning. 2002. Planning Poker.
[12]
Ali Idri, Alain Abran, and Taghi Khoshgoftaar. 2002. Estimating software project effort by analogy based on linguistic values. In Proceedings Eighth IEEE Symposium on Software Metrics. IEEE, Ottawa, Canada, 21--30.
[13]
Galorath Incorporated. 2011. SEER-SEM Product Brief. Available at https://galorath.com/wp-content/uploads/2020/09/SEER-for-Software-Datasheet-092920.pdf.
[14]
Liz Keogh. 2015. The Estimates in #NoEstimates. Available at https://lizkeogh.com/2015/05/01/the-estimates-in-noestimates/.
[15]
Ekrem Kocaguneli, Ayse Tosun, and Ayse Bener. 2010. AI-Based Models for Software Effort Estimation. In 36th EUROMICRO Conference on Software Engineering and Advanced Applications, IEEE (Ed.). IEEE, 323--326.
[16]
Troy Magennis. 2012. Managing Software Development Risk using Modeling and Monte Carlo Simulation. In Proceedings of the Lean Software & Systems Conference 2012. Boston, USA.
[17]
Dan North. 2018. Monte Python Simulation: Misunderstanding Monte Carlo. Available at https://dannorth.net/2018/09/04/monte-python-simulation/.
[18]
Parag Pendharkar, Girish Subramanian, and James Rodger. 2005. A Probabilistic Model for Predicting Software Development Effort. Software Engineering, IEEE Transactions on 31 (08 2005), 615-- 624.
[19]
Shashank Mouli Satapathy, Aditi Panda, and Santanu Rath. 2014. Story Point Approach based Agile Software Effort Estimation using Various SVR Kernel Methods. In The 26th International Conference on Software Engineering and Knowledge Engineering, Vol. 2014. Knowledge Systems Institute Graduate School, Vancouver, Canada.
[20]
Christopher Schofield. 1998. An Empirical Investigation into Software Effort Estimation by Analogy. Ph.D. Dissertation. Bournemouth University.
[21]
Martin Shepperd, Michelle Cartwright, and Gada Kadoda. 2000. On Building Prediction Systems for Software Engineers. Empirical Software Engineering 5 (2000), 175--182.
[22]
Dr. Amit Sinhal and Bhupendra Verma. 2013. Software Development Effort Estimation: A Review. International Journal of Advanced Research in Computer Science and Software Engineering 3 (06 2013), 1120--1135.
[23]
Bradley R Staats, David James Brunner, and David M Upton. 2011. Lean principles, learning, and knowledge work: Evidence from a software services provider. Journal of operations management 29, 5 (2011), 376--390.
[24]
Andrew Stellman and Jennifer Greene. 2005. Applied Software Project Management - Software Project Planning Practices. Available at https://www.stellman-greene.com/about/applied-software-project-management/applied-software-project-management-software-project-planning-practices/.
[25]
D. Toka and Oktay Turetken. 2013. Accuracy of Contemporary Parametric Software Estimation Models: A Comparative Analysis. In Proceedings - 39th Euromicro Conference Series on Software Engineering and Advanced Applications, SEAA 2013. IEEE, Santander, Spain, 313--316.
[26]
Sharma Vishal and Harsh Verma. 2010. Optimized Fuzzy Logic Based Framework for Effort Estimation in Software Development. International Journal of Computer Science Issues 7 (04 2010).
[27]
Juanjuan Zang. 2008. Agile Estimation with Monte Carlo Simulation. In Agile Processes in Software Engineering and Extreme Programming, Pekka Abrahamsson, Richard Baskerville, Kieran Conboy, Brian Fitzgerald, Lorraine Morgan, and Xiaofeng Wang (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg, 172--179.

Cited By

View all
  • (2024)A Systematic Literature Review on Reasons and Approaches for Accurate Effort Estimations in AgileACM Computing Surveys10.1145/366336556:11(1-37)Online publication date: 28-Jun-2024

Index Terms

  1. An analysis of Monte Carlo simulations for forecasting software projects

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    SAC '21: Proceedings of the 36th Annual ACM Symposium on Applied Computing
    March 2021
    2075 pages
    ISBN:9781450381048
    DOI:10.1145/3412841
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 22 April 2021

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. developer effort
    2. forecasting
    3. monte carlo simulation
    4. software delivery
    5. software development

    Qualifiers

    • Research-article

    Funding Sources

    Conference

    SAC '21
    Sponsor:
    SAC '21: The 36th ACM/SIGAPP Symposium on Applied Computing
    March 22 - 26, 2021
    Virtual Event, Republic of Korea

    Acceptance Rates

    Overall Acceptance Rate 1,650 of 6,669 submissions, 25%

    Upcoming Conference

    SAC '25
    The 40th ACM/SIGAPP Symposium on Applied Computing
    March 31 - April 4, 2025
    Catania , Italy

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)19
    • Downloads (Last 6 weeks)1
    Reflects downloads up to 27 Feb 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)A Systematic Literature Review on Reasons and Approaches for Accurate Effort Estimations in AgileACM Computing Surveys10.1145/366336556:11(1-37)Online publication date: 28-Jun-2024

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media