Software Estimation Best Practices

Should Task Planning Occur Before Software Estimation?

I work for QSM, a leading software project estimation and demand management company. We focus on top-down estimation, meaning we figure out the total project duration and effort before any detailed planning occurs. We use SLIM-Estimate also known as the Putnam Model. Larry Putnam Sr. introduced SLIM in 1978. It is one of the leading software estimation tools in the world, validated with over 35 years of industry leading research and updated regularly with the latest technologies. 

Many people call us for help with team size software project estimation, they want to see how many people it’s going to take to deliver a specified amount of functionality within a certain duration and budget. At the time they call us they are often using task level planning tools to try to figure this out. 

The problem is that it’s tough to allocate people and the number of hours they will work when they haven’t figured out the specific requirements of each task and when they haven’t estimated the total duration and effort for the overall system. A manager could spend days creating a task level plan that doesn’t add up to the overall project duration and budget that is needed to deliver the functional requirements. When it doesn’t add up then re-planning has to take place costing more time and money. This is why QSM recommends estimating the big picture first, the scope level. 

The best way to do this is with a top-down software estimation approach. When prospective clients initially hear this advice they are open to it but sometimes they feel like it’s tough to let go of their old ways. The old ways tend to lead to guesses that don’t add up to a reliable big picture. Sure it might look good to have a lot of detail initially, but if it’s all wrong what good is it? Once they see the benefits of a true top-down software estimate they often make the transition. 

With SLIM-Estimate the top-down estimate can be approached from different angles depending on the software project information that the user has available. Initially we like to enter some high level size information like number of business requirements or number of user stories; We can be flexible on the inputs. We also want to enter a Productivity Index which is a macro measure of efficiency. The Productivity Index can be calculated based on the SLIM-Estimate industry data or the client’s own history. Once we enter this basic information into our template, which has a number of customizable project parameters, we can then generate the top-down estimate.

Software Top-Down Estimate

The top-down estimate can then be sanity checked with history within SLIM-Estimate to make sure we are going down the right path.

Top Down Software Estimate Sanity Check

The total effort by task can then be viewed and analyzed since it was calculated on a percentage basis from the initial top-down software estimate. This information can then be exported into task level planning tools and we can let those tools do what they are designed to do: allow you to generate a detailed resource plan for each task.

Detailed Software Project Resource Plan

 

The effort by role by month is also calculated in SLIM-Estimate. This information is reliable early in the software planning process since it is modeled with the overall project effort and staffing estimates. This information can then be leveraged in PPM tools for duration and resource planning.

 Software Project Effort by Role

The bottom line is once we get the big picture right then we can focus on the detailed planning. Top-down first can save you a lot of re-planning time later. 

Blog Post Categories 
Estimation Process Improvement Sizing