Demystifying software estimation

22.05.2006

You recommend collecting historical data about productivity as a project is under way. Why? And is that realistic, since so many projects are already under very high pressure? The goal of collecting historical data is to build a model that you can use for [future] estimation. How soon you can begin collecting this data is a function of how a project is being managed. If you're using an iterative approach and delivering software in chunks, you can begin to get data as early as 5 percent to 7 percent of the way into a project. If you're taking more of a sequential, waterfall approach to a project, it's more difficult to get to that data early on.

What's the most common mistake you see in estimation? Many organizations shoot themselves in the foot by committing to a project estimate too early -- before enough is known about the work being done to come up with the best estimate. You don't have to wait all that long to come up with an accurate estimate, but you can't get it on Day One either. By the time you're 30 percent of the way into a project, you'll have an accurate estimate. It needs to be recognized that you can't get an accurate estimate on Day One.

Sidebar

10 tips for accurate software estimates

1. Don't intentionally underestimate. The penalty for underestimation is worse than for overestimation.