Software Nuggets

“Incomprehensible jargon is the hallmark of the software projects profession”


Article Index
Cone of Uncertainty
All Pages



An estimate is an assessment of the resources required (human and other) to complete a software project. It is stated in terms of cost & time & resources. Inaccurate (usually over optimistic) estimating is a major cause of project failure.

Estimates must initially be made at Inception/Initiation/Business Plan stage. These estimates are usually based on high level input data at this stage so it is essential in any project that estimates are revised in downstream stages, this often can (should) cause the business plan to be re-examined.

There are three main software project estimating methods


  • Parametric Estimating
  • Top Down (Historic & Comparative) Estimating
  • Bottom Up (WBS) Estimating


Parametric Estimating

Parametric estimating uses a mathematical model or formulae to produce project estimates based on input parameters. It is usually based on historical industry data initially (but should be later 'tuned' with organization specific historical data. Simple examples are source lines of code (SLOC) in software development.

More complex parametric estimating techniques are those such as COCOMO, COSYSMO, UCP and Function Point Analysis.



Top Down (Comparative) Estimating

This "simply" involves using experience from similar projects carried out in the past. It takes the overall costs and timescales for similar projects and adjusts them for size and complexity. The danger is that previous projects may have been inefficient and/or badly managed. Comparative estimating can also be used at task level to support bottom up estimating.



Bottom Up Estimating

This method is based on the Work Breakdown Structure (WBS) approach. All the individual lower level tasks in the WBS are estimated independently and then rolled up to produce the project estimates. This is a laborious method and its accuracy is dependant on having a correct WBS. However it is the most accurate way of estimating. It is sometimes known as the definitive estimate. The aimed for accuracy is to be within 5%.

But of course this estimating technique can only be used once a good amount of project work has already occurred in the Requirements and Design stages.



Like it? Please Bookmark!

Facebook MySpace Twitter Digg Delicious Stumbleupon Google Bookmarks RSS Feed 
Joomla Templates

© Copyright 2010    All Rights Reserved