9 February 2010

Estimating credibly

An estimate can be generated in number of ways.

One way is for all the work to be planned up front in sufficient detail to be able to know that you can assemble the target 'end-product.' Another way is for you to use analogy, such as using your experience to estimate the size of the work package. Simply put this is top down and bottom up estimating.

There are many techniques that you can add into these approaches including function point analysis, cocomo, monte carlo estimates, team velocity and so on. These techniques are beyond the scope of this post. What I want to focus on is the space between the top down and bottom up approaches to estimating.

In my experience - commercial projects from small (3 people, 3 months) to moderately large (30 people, 3 years) I think the real answer is a blended approach.

All estimates are made from experience and judgement. Balance your team's experience and judgement with countering views.

For instance many projects suffer the problem of overly large estimates pushing the project cost beyond the realms of valuable. Management will often push back with a 50% cut or similarly arbitrary approach.

If on the way to the end estimate you apply some top down constraints - say we have to have reached a valuable and tangible outcome within 3 or 12 months you can help guide estimating and planning decisions around functionality and performance criteria. Of course reasonable contraints need to come in from a value perspective; "We expect to invest this much time and effort for that much value." And that is where you analogous estimates are useful.

Of course, estimating is not a one way street in either direction. It's a collaborative effort by the project management team and the people on the team who need to do the work. Checks and balances, right?

And no making promises you can't keep.


  1. Anonymous6:47 am

    Top down or bottom up - a topic very dear to my heart. I wholly agree with you, Craig, that the real key is to engage lits of people - diversity is the power behind excellent decision-making.
    Your readers may be interested in two posts of mine on the top-down/bottom-up question:
    Are you a “Top-down” or a “Bottom-up” sort of Person?
    Danger: When are Top-down and Bottom-up not Equally Effective?

  2. Hi Mike,

    Yes - your posts are exactly what I am saying here. thanks for the links.

  3. Craig,

    The profession and cost and schedule estimating is guided by several sources:


    Both these sources have much to say about estimating at any level of complexity.

    The notion of "planning all the work upfront," is actually not allowed in large government programs. Rolling waves with Work Packages and Planning Packages is required to increase the probability of success. A rolling wave typically runs 6 to 9 months for a multi-year program.

    During the programs life cycle, maturity assessment "events" are conducted to adjust the estimates of future work.

    As well estimates are not provided by the people alone, the must be based on some form of modeling - either from past performance or a parametric costing model. There are several used in our domains, but in the commercial world, there are parametric cost and scheduling models as well.

    Finally, the notion that models are statistical (stochastic actually) is usually lost on the managers in the commercial world. All data are random variable, knowing the statistical properties of these variables is critical to any successful estimating effort.

  4. Yep,

    The random/statistical element is definitely beyond most of the people I speak with.

    But it's good for me to know and factor into my professional judgement, so I ask about past performance where I work and in similar organisations.

    I use judgement from experienced team members and from my own experience to help fill in those gaps.

    It's not as scientific as in your defence world, but it does work sufficiently in my commercial context.

  5. I don't think the specific methodology is important as long as an organization uses a methodology to begin with. Management at the last company I worked for just came up with an arbitrary estimate and pushed that number down to the developers without any form of collaboration. It was a total disaster; they didn't deliver a single release on-time. On the flip side, I've worked for a company that used a combination approach that involved function points, and while it wasn't exactly perfect, it was collaborative and we always released quality software without the major compromises (some) people make when they're under the pressure of impossible deadlines. I think it's important to understand the spirit of the estimation process; is management really looking for a realistic estimate, or are they looking to cram a bunch of work into an arbitrary block of time? The process will always reflect the intent.

  6. I actually enjoyed reading through this posting.Many thanks.

    Function Point Estimation Training