Over on
Tyner Blain, Scott
states:
"There is nothing that prevents a waterfall project from reviewing estimates throughout the course of the project."
Recall that
agile processes use iteration and frequent releases to adjust to changing requirements and other discoveries during product development. Waterfall processes, on the other hand, schedule along a
critical path that culminates in a single release.
While Scott endorses agile practices, he does not believe they lead to improved estimation. I don't agree with Scott on this last point. Here's why.
Reliable estimates hinge upon a holistic understanding of requirements, design, implementation, and testing.
With waterfall, you certainly can review and adjust estimates halfway through the process, but you will not be able to incorporate the full feedback effects. For example, you could be halfway through requirements and design and re-estimate the project, but you wouldn't have the benefit of the discoveries that inevitably occur during implementation and testing.
With incremental delivery (agile), you iterate on all of these phases early and often. Consequently, you quickly learn the impact of, for instance, testing on requirements. You are thus better informed when you review and adjust your estimates for the project.