Software Effort Estimation Techniques





Software effort estimation techniques predict a realistic amount of effort required in terms of time (person-hours or person-days) that would be required to develop or maintain software. The estimate is called so since it is typically based on incomplete inputs (requirements). The estimate is used as an input to put together Project Plans, Development Budgets, etc.

If you look into historical data, you may notice that estimates are imprecise but over a period of time as one gains experience in the domain and technology being used, the estimates typically get more accurate.

Whenever estimates are put together, we must communicate with relevant stakeholders about the assumptions that were made. This helps improve the estimates in an iterative manner.

Estimate of What?

Estimates should capture the following:

  1. Resources: How many resources (Developers, Testers, Analysts, etc.) would the project require and when?
  2. Time: How long would the project take to complete?
  3. Cost: What would be the cost of completing the project
  4. Skills: For each of the resources what would be the skills required

Software Effort Estimation

Estimation Techniques

There are various techniques that can be used for doing this estimation exercise. These have been listed below. Each of the estimation techniques will be explained in detail in subsequent articles.

Note: As and when those articles are ready, each of the techniques below will be linked to it.

  1. Analogy-based Estimation (Rough order of Magnitude)
  2. Expert Estimation
  3. Work Breakdown Structure
  4. Function Point Analysis
  5. Use Case Analysis
  6. Story Point Analysis
  7. Constructive Cost Model (COCOMO)
  8. Planning Poker
  9. Wideband Delphi

I am certain there are other techniques used out there. Only a few are popular nowadays and there are tools available for some to simplify their usage. For instance, Planning Poker is a popular technique for Agile projects and there are both poker cards and websites available as aids in the estimation process.


Image Credit: Featured


You May Also Like

About the Author: Anuj Seth

Anuj is a certified PMP with over 20 years of Software Development and Management experience. He founded PM Tips in 2020. Contributors are welcome. Drop him a note via the Contact page.

11 Comments

  1. Different organisations come up with different effort estimations even though the parameters which are considered are the same.

    There is no standardisation of effort estimations across the IT industry due to which customers see a huge variance in the costs submitted by different vendors.

  2. There will be good way to work on estimation COE across the industry to set the bench mark.

    1. Some organizations have an organization-level Estimation CoE. The CoE performs parametric estimation on projects, enabling more accurate prediction of project cost and duration. That could be a starting point to ensure some level of consistency. If there exists a PMO at the organization level, this could be one of the areas they focus on.

Leave a Reply

Your email address will not be published. Required fields are marked *