Software projects are complex endeavors that carry much risk and pressure
around quality and schedule. Providing valid estimates is a powerful component
of creating a valuable project with a real chance for success. Yet my experience
indicates that most in our industry can’t estimate (see my article in STQE
magazine, Volume 4, Issue 3, "Why Our Industry Can’t Estimate").
Here’s a quick walkthrough of one good way to become a better estimator.
The EQF (Estimating Quality Factor) Metric described in Tom DeMarco’s book
Controlling
Software Projects is simple to learn and gives you a meaningful score for
the accuracy of your estimating history.
How does it work? Pick anything you need to estimate. Let’s say we want to
estimate the first day a new system is actually operational. Today, as I write,
is February 11. Given what I know today, I estimate that we will go live on July
10. Now I can start my EQF histogram (Figure 1).

Figure 1.
Now, as time moves on, whenever I think I have a more accurate estimate than
the current one, I may change my estimate. In Figure 2 we see that I have
re-estimated upward twice, then lowered my estimate, then tweaked it up at the
end to converge with the actual date, September 10.

Figure 2.
What would a perfect estimating history have been? Simple. You estimate
September 10 from the start and never deviate. In Figure 3 that would be line
AB. The area under the perfect history is rectangle ABCD.

Figure 3.
Obviously, I did not have a perfect estimating history. In Figure 4 I have
shaded my deviation from perfection, both under and over. Now I can score the
accuracy of the estimate using the area of the perfect estimation rectangle and
the area of the rectangles where I deviated from perfection.
EQF = Area of a Perfect Estimate / Area of Deviation.

Figure 4.
In my example, my score is about a 5. I am averaging about 1/5 or 20 percent
off.
An EQF of 5 is not too bad. The norm for schedule estimating is about a 4,
with the highest sustained scores at 8 to 9. I’ve never known anybody to
sustain a 10 (just 10 percent off). The good news is that everybody who keeps
using the EQF to assess estimates improves his or her estimating accuracy!
EQF is a great feedback mechanism you can use to improve your estimating
capability. Since it applies to all kinds of estimates, you can start by just
estimating your own work, and by the time you start estimating on a broader
scale you will have a real feel for estimating software projects—a valuable
skill in short supply in our industry.
Further Reading
For more information on the EQF metric, see Tom DeMarco’s book Controlling
Software Projects.
About the Author
Tim Lister is a Principal of The Atlantic Systems Guild (www.systemsguild.com). Tim is a well-known expert and lecturer on software management techniques. He coauthored the popular book Peopleware: Productive Projects and Teams.
Back to Top