Project Management

The Art of Guesstimation: Truisms for Better Estimates

From the Disciplined Agile Applied Blog
by
This blog explores pragmatic agile and lean strategies for enterprise-class contexts.

About this Blog

RSS

Recent Posts

Data Technical Debt: 2022 Data Quality Survey Results

Is Technical Debt A Management Problem? Survey Says...

You Think Your Staff Wants to Go Back to the Office? Think Again.

Contracts, Procurement, Vendors, and Agile

Disciplined Agile 5.4 Released

Categories

#AgileBeyondIT, #ChoiceIsGood, ACP, agile, Agile Alliance, agile-manifesto, book, Business Agility, Certification, Choose your WoW, Conference, Context, Continuous Improvement, contracts, COVID-19, Data Management, database, DDJ, Disciplined Agile, Enterprise Agile, estimation, Fundamentals, Governance, GQM, guesstimation, http://disciplinedagiledelivery.com/principles/be-awesome/, India, information technology, Introduction, Kanban, lean, MANAGEIndia, math, MENA, Metrics, mindset, News, OKRs, Organization, People Management, Planning, PMO, Portfolio Management, Principle, Project Management, Quality, Ranged Estimates, Remote Work, Scrum, Security, skill, software, Surveys, Technical Debt, Technical debt, Terminology, Transformation, value stream, vendor management, VMO

Date



On targetFor years I’ve been involved with estimating a wide variety of things, have read about and then experimented with different estimation strategies, and taught and coached others in estimation.  I’ve worked with, and learned from, hundreds of people who also have a wide range of estimation experience.  Throughout all this I’ve identified several things that I believe to be true about the act of estimation.

In my experience, the quality of an estimate increases when:

  1. The work is small. For example, it’s easier to estimate the amount of liquid in your water glass than it is to estimate the amount of water in the ocean.
  2. The work is near term. We have greater motivation to think through an estimate when we’re just about to do something than if that work will be done at some point in the future.
  3. The work is understood. Imagine someone coming up to you and saying “I’d like you to update the web site, how long do you think that will take?” The request is far too vague to respond with a reasonable estimate. Until you identify what that update is, there’s a big difference between fixing a grammar mistake on a page and adding an ecommerce marketplace to sell products on your site, you really can’t estimate the work.  Furthermore, you also need to understand the architecture of your site and the work processes involved with updating it.  Fixing and deploying a grammar mistake may be five minutes of effort or five hours of effort depending on your environment.
  4. The work is stable. When the requirements for the work change so must the estimate. What seem to be simple requests, such as asking for multi-currency support in your ecommerce marketplace when you originally said you only needed to support a single currency, can be an expensive and time-consuming change.
  5. You know who is going to do the work. People are unique, they aren’t fungible resources that you can easily swap.  For example, when building a fence, a team of three people who build fences for a living will very likely get it done faster, better, and for less cost than a team of three people who are building a fence for the first time.  A master craftsperson with years of experience may be 10 times or even more productive than a novice.  In software development, studies have shown that the most productive programmers are 25x more effective than the least productive programmers.  And we all know that some people just aren’t going to work well with others, so team configurations are also important considerations.
  6. The process and tools are understood. When estimating how long it will take to dig a hole for the foundation of a house, it would be good to know if it’s being dug by three people with shovels or one person with a backhoe.  
  7. The estimator is also the doer.  Someone who is going to do the work is much more motivated to get an estimate right than someone who isn’t going to do the work. 
  8. The estimate is being committed to.  When you know that you’re going to be held to the estimate that you produce you are much more motivated to get it right.
  9. The estimator has done this sort of work before.  People who have done the work before have a better understanding of the issues involved than people who haven’t.  
  10. There are several estimates being combined.  In high-risk situations I strive to estimate something using several different strategies, ideally involving different people, and then combine the results to get a better quality estimate.
  11. It is treated as a probability distribution. By treating estimates as probability distributions (which they are), and not as point-specific scalars, we can apply our estimates in a realistic manner.

The further away you are from these truisms the less dependable an estimate will be.  As the old saying goes, “garbage in, garbage out.”.  In the next blog in this series we will explore the trade-offs associated with estimation.

Posted on: April 22, 2020 06:00 AM | Permalink

Comments (7)

Please login or join to subscribe to this item
Great overview of the factors that go into quality estimates, Scott!

I'd add one more:

A team and management culture that understands concepts like Barry Boehm's Cone of Uncertainty and recognizes that the only time an estimate is 100% accurate is when the work is done.

Kiron, great point.

Even then it may not be 100% accurate. I've worked on projects where the cost accounting was a tad lacking and they had no idea how much was spent.

I've also seen projects where time and costs were purposefully fudged to make it look on time and on budget. How many times have you heard something along the lines of "It doesn't matter than you worked 57 hours this week, put 40 hours into the time tracking system anyway"?

Very interesting article, thanks for sharing

thanks for sharing

Great tips. Thanks for your sharing and it is useful.

Very interesting and informative. Thanks for sharing.

These are very informative statements you provide on estimation, Scott. Information that informs all data that inform estimation procedures is rarely understood in lifecycle project contexts and these tools best serve to outline requirements and work packages.
Thank you for sharing these evaluations. The data discussed on probability distribution is most helpful.

Please Login/Register to leave a comment.

ADVERTISEMENTS

"Seriousness is the only refuge of the shallow."

- Oscar Wilde

ADVERTISEMENT

Sponsors