I would really like to understand the financial differences between Agile and Waterfall programming.
J. B. Rainsberger
In a Phased approach, like Waterfall, we can (mostly) categorize work into Design, Coding, Testing, and Maintenance and therefore account for each activity separately. This helps organizations that pay for each activity from a different budget, or want/need to monitor expenses on these activities separately from each other.
In an Agile programming approach, we (mostly) work on Design, Coding, Testing and Maintenance in short enough cycles that they appear to happen all at once, and therefore attempting to account for each of these activities separately costs much more than in a Phased approach.
As a result, I see managers in many newly-agile organizations compare the cost of Agile programming to the cost of Waterfall Coding. This comparison gives the Agile programming approach short shrift. I believe, and the evidence for this assertion grows each year, that even for relatively low levels of experience, the Agile programming approach tends to produce more cost-effective results than the Waterfall programming approach.
For some additional detail on the relative cost-effectiveness of Waterfall programming and Agile programming, see http://bit.ly/4tAv78
