A big benefit of agile projects is the capability to have a self-funding project. Waiting to release anything until you have everything limits your ability to gain early market share, realize an early (and compounding) return on investment (ROI), receive early end-customer feedback, and remain relevant in a fast-moving marketplace.
Scrum teams deliver value to their customers early and often. They demonstrate working functionality at the end of each sprint—functionality that can be released to the marketplace if there is enough value. Then, at the end of each release cycle (maybe that’s every day, maybe every sprint, or even after multiple sprints), they make that functionality available to the marketplace.
If your project is an income-generating project, you could use revenue from early releases to help fund the rest of your project.
For example, consider an ecommerce website that once fully built and released under a traditional project management approach (i.e. no release until all features and payment types are developed and tested) might generate $100,000 in revenue. Let’s say the project will take six months to develop, test and release. The income generated might look something like this:
|Month||Income Generated||Total Project Income|
Iterative Release Approach
Compare that with a scrum team taking an iterative development and release approach. Rather than waiting until all features and payment types can be deployed, every month they incrementally release valuable features that can each generate income right away.
For instance, after the first month (a couple of sprints) the scrum team could release a simple shopping cart with a few items for sale and ability to purchase using something like Paypal or Venmo. This could attract some customers to purchase right away. Perhaps this could generate $15,000 a month in sales.
In the next couple of sprints, adding more items for sale, a little more cart management, and other payment options (e.g. Visa?) during the second month might increase revenue by another $25,000 for a total of $40,000 a month after the second release, and so on. The six-month project using scrum might look something like this:
|Month/Release||Income Generated||Total Project Income|
In the end, perhaps the total monthly amount of revenue ends up being the same, however most new products or features take a little time to gain traction, so under a traditional model, you might not get all $100,000 during that first month after release.
Also, the amount of revenue generated during each month while the project is still in-flight accounts for the vast majority of total revenue earned—almost 3.5 times the amount of revenue generated by waiting until everything is ready to ship after six months.
Other Benefits of Iterative Releases
There are other benefits (e.g. avoided risks) of taking this iterative and incremental approach to developing and releasing:
- Big bang releases rarely go well—cost and schedule overruns are more common the longer the development cycle
- Integrating fewer components at a time results in less risky deployments
- Finding defects in fewer lines of code or fewer pieces of functionality is easier and less costly
And bottom line, if someone tells you they know the cost of a waterfall technology project before the testing phase begins, don’t believe them. Instead, by testing and integrating one component at a time (as scrum teams do) iteratively throughout each sprint, the high cost and risk associated with rear-loaded testing dramatically decreases.
Scrum teams deliver value early and often—mostly to satisfy the customer, but also to work smarter and optimize their outcomes.
Interested in working smarter, not harder, and reducing your project risk using agile techniques? Check out our training opportunities, or contact us to learn how we can help expose whether what you’ve been investing in agile techniques is generating the return you’re expecting.