Agile on a fixed budget
Larry points to a very interesting article by Scott Ambler that discusses agile on a fixed project. Good stuff. Here is a quote from the article itself which appeared in Dr. Dobbs .
It struck a cord because I just finished a rough estimate of a project for a local bank that entails 2 week sprints and needs to be on a fixed budget. And without having read this article, I recognized the great importance that requirements play in this. So I went and obtained a copy of stpBA Storyboard, a Jolt Award winning requirements tool, which I really hope will help to nail down this project. I will post a review of the tool after the project is done. So far, it already impressed my customers stake holders just on the basis of a simple demo, which resulted in a much more flexible staffing arrangement. That’s already a nice win, and the project hasn’t even officially started.
Constraints
Strategy
None
Count yourself lucky.
Fixed Resources
Address work items in priority order, allowing them to vary as dictated by your stakeholders. Release the system incrementally, the initial release being at the point where you have implemented sufficient cohesive value for your stakeholders. You may need to cut the project short if you discover that your burn rate is higher than expected.
Fixed Scope
Ensure that very good modelers are involved with up-front requirements definition because you rely on getting the requirements right at the very start. Note that the longer the project goes the greater the chance that the requirements will change, regardless of how “fixed” you think they are. Ensure that money is being spent wisely by delivering working software regularly.
Fixed Delivery Date
Implement the work items in priority order, allowing them to vary over time. Validate expenditures through the regular delivery of working software.
Fixed Resources and Scope
Pad the budget as much as possible to give you some flexibility, then set the delivery date to reflect the work to be done. As the project progresses, update the delivery date as needed to reflect the team’s actual velocity.
Fixed Resources and Delivery Date
Identify an appropriate iteration length, i.e. two weeks, determine the number of iterations the delivery date allows, then divide the budget by this number to determine your average budget per iteration. Implement the work items in priority order, allowing them to vary as appropriate, thereby ensuring that stakeholders receive the greatest ROI.
Fixed Scope and Delivery Date
Do a really good job of modeling the requirements at the beginning of the project and estimate them to the best of your ability. Determine the number of iterations that you intend to work to, then assign work items in priority to the iterations. Initially, pad your schedule with a few empty iterations at the end so that work can slip if required.
Fixed Resources, Scope, and Delivery Date
Either lift one or more constraints or cancel the project because your project is pretty much doomed to failure. If you deliver at all, your system is likely to be late, over budget, and of low quality due to “shortcuts” took during development.
Write a comment