The Amazon Web Services (AWS) Cloud Adoption Framework1 (CAF) provides guidance for coordinating the different…
How Agile should your Project be? A Mathematician Derives the Answer
Abstract
Advocates of agile development claim that agile software projects succeed more often than classic plan-driven projects. Unfortunately, attempts to validate this claim statistically are problematic, because “success” is not defined consistently across studies. This paper addresses the question through a mathematical analysis of these projects. We model agile and plan-driven software projects with identical requirements, and show how they are affected by the same set of unanticipated problems. We find that that the agile project provides clear benefits for return-on-investment and risk reduction, compared to the plan-driven project, when uncertainty is high. When uncertainty is low, plan-driven projects are more cost-effective. Finally, we provide criteria for choosing effective process types.
Contents
- Background
- Common Problems in Software Projects
- Statistics on Success Rates for Plan-Driven and Agile Projects
- Scott Ambler, 2007
- QSM Associates, 2008
- Conclusions from the Surveys
- Key Differences between Agile and Plan-Driven Strategies
- Gedanken Experiment
- Project Description
- Uncertainty
- The Plan-Driven Project
- The Agile Project
- Comparison
- Comparison of Planned Project Schedules
- Comparison of Actual Project Schedules
- Comparison of Project Results
- Lessons Learned from the Gedanken Experiment
- The Financial Impact of Uncertainty
- Risk
- Value Delivery and ROI versus Time
- Guidance for Selecting Processes
- Common Processes
- Selection Criteria
- Decision Matrix for Process Types
- Conclusion
- Appendix: Task Durations for the Plan-Driven and Agile Schedules
Some of the images used were designed by freepik.com