Software Estimation Best Practices

Resource Demand Management - Are the Right People Working on the Right Thing?

I am excited about the resource demand management capabilities in our newest SLIM-Estimate release (8.2). Software project estimates can now provide a breakout of Full Time Equivalent (FTE) staffing requirements by role by month. The staffing profile below shows how different roles, or skills, are required at different points in the schedule, based upon a particular development methodology. You can see that 6 FTE Programmers are needed by the month of May. Producing a high-level, scope-based estimate early in the software development lifecycle with detailed resource demand data helps the PMO and portfolio managers determine the best timing for project resource allocation, and setting project start dates that maximize productivity and reduce bottlenecks.

Software Resource Demand Management

Once the estimate and resulting project skills allocation plan has been approved, resource demand management has not ended. Tracking actual staffing at the skill and task level for in-flight projects not only ensures the right people are working on the right things, meaning that product development is on track, it also allows timely resource plan adjustments to address unforeseen staffing needs.

QSM’s SLIM-Control tool uses plan versus actual variance analysis of key project metrics beyond cost and schedule, particularly interim and deliverable product measures, to show true project status. Any metric can be used in tracking and forecasting, including team skill sets. This blog post demonstrates how tracking plan versus actual key resources allows timely adjustments to project and portfolio level resource allocation plans.

Resource Demand Management

A medium size business intelligence project was estimated using SLIM-Estimate. Based on the organization’s typical project makeup for this type of effort, a template was configured to set points in the lifecycle where the level of various team resources shift. Each Skill Category can be specified as either a percent of total effort required for a portion of the schedule (time slice) or as a number of FTEs.

Resource Demand Management Staffing Assessment

The staffing profile shown above is one of the key outputs from SLIM-Estimate that can be exported to spreadsheets, PPM tools, or elsewhere to support resource demand management. The staffing report (all SLIM Suite charts can be converted to reports to view or extract the underlining data) was exported to create a custom staffing plan in SLIM-Control. SLIM-Estimate workbooks can be imported into SLIM-Control to generate detailed plans for core metrics, however, skill categories are not included. Custom Metrics were added to the default plan to track four key skills for this project: Software Management, Architect, Programmer Internal, and Software Quality Assurance.

Control bounds define acceptable (green), cautionary (yellow), and serious (outside yellow bound) actual deviations from the plan. A similar set of tracking curves for product measures help project managers identify potential schedule slip situations, since late completion of early lifecycle products, such as Use Cases, are strong indicators that subsequent, dependent products will also be late.

Resource Demand Management

Five months into the project we see that product development is behind. The delivered product (Cum Eff IU) is in the red zone, but just barely. Surely the team can buckle-down and get back on track! QSM experience shows this is highly unlikely. The use cases were completed one month late, and the design components are behind as well. What is the source of the problem? The FTE Staff chart shows fluctuations, however, the overall status indicator is in the green. A look at actual FTE staff by skill shows that we do not have the right people working on the right things.

Resource Demand Management

The project is short on architect resources and heavy on programmers. Perhaps after seeing that the architects would be held up on another project, the software manager hoped the programmers would have the capabilities to fill in for a couple of months.

Now that the project situation is understood, what can be done? SLIM-Control’s forecasting capability uses product, milestone, and staffing metrics to predict a project completion date based on actual performance. This is shown by the line with white squares in the Staffing Assessment chart. This forecast assumes no changes in the original scope or resource requirements, and does not include defects. It is likely that the code developed so far contains requirements and design defects, because the programmers do not have the same skill sets as the architects. The software manager will want to track this project closely from now on.

Tracking actual resource availability not only enables the manager to see that the project will be at least two months late, she can update the resource plan with specific information about the skill sets required for the duration, enabling resource managers to reassess demand across the organization.