Practical Software Estimation Measurement

Does Your Estimate Accurately Reflect the Five Dimensions of Software Trade-offs?

A recent series of posts by Karl Wiegers eloquently discusses the "reality of tradeoffs" software professionals deal with every day, going beyond the typical success drivers (time, cost, and quality) to include product features and staff. He shares inspiring practical information by making distinctions between constraints, drivers, and degrees of freedom, each representing the amount of flexibility the project manager has to adjust a key factor.

SLIM-Estimate has modeled the non-linear interdependencies of these metrics for over thirty years. It accounts for Wiegers’s five project success factors explicitly, showing the tradeoffs between them in real time. I have mapped Wiegers’s Five Dimensions to SLIM-Estimate’s parameters to show how you can use SLIM-Estimate quantify the trade-offs Wiegers describes.

Five DimensionsSLIM-Estimate Core Metrics
FeaturesSize - measured in a wide variety of units (features, requirements, stories, etc.)
CostCost/Effort - effort determined from the nonlinear software production equation; cost generated from effort and labor rate
TimeDuration - calendar time determined from the nonlinear software production equation, and accounts for the influence of using differently sized teams
StaffPeak or Average Staff - number of Full Time Equivalents (FTEs) at the peak of development or average across the project duration
Quality Reliability - measures reliability at the time the system is put into production (how long the system will run without encountering a defect); derived from defect prediction curve

A typical estimate is determined by entering size and productivity, allowing SLIM-Estimate to calculate effort, duration, peak staff, and reliability. One or more drivers (cost, schedule, team size, reliability) can be entered as Constraints along with the desired probability of achievement. For example, entering a Life Cycle Cost of $2 Million with a target probability of 80% will produce a risk buffered work plan with the desired contingency. By raising or lowering the desired assurance level, estimators can explicitly account for Wiegers’s constraints, drivers, and degrees of freedom. Additionally, SLIM’s Design to Input feature will optimize the estimate to achieve your most limiting constraint, say, a Peak Staff of 5 people.

The Risk Gauge shows the probability of achieving a project goal. Green and red arrows indicate whether or not the goal is within reach. Dragging a constraint arrow to the left or right shows the real time, often counter-intuitive relationship between the dimensions.

SLIM-Estimate Risk Gauge

Target values for each driver are displayed at the bottom (C&T stands for the development phase). This project has a 50% probability of keeping project costs under $ 552.6 K while producing a high quality product, but using such a small project team is unlikely deliver the desired functionality within the desired 4.5 month schedule window. 

Clearly, something has to give and the ability to quantitatively assess the relative risk of multiple project scenarios, i.e., trade-offs, is SLIM-Estimate’s sweet spot.  

Have you noticed that size is not shown in the Risk Gauge? That is because it is a major input into the model. You can either enter various sizes and assess the outcome, or use the Solve for Size wizard to calculate how many “features” your team is capable of deliverying to meet the constraints. The solution comparison view lets you weigh the relative merit of each solution, and select reasonable “commit to” values that are consistent with your past performance or industry averages. This project hoped to produce 12 Features. The analysis shows that reducing the size to 5 Features is one alternative for meeting all of the other objectives.

SLIM-Estimate Compare Estimates in Log

Wiegers concludes his article by stating “One characteristic of a healthy software engineering culture is that project expectations and commitments are established through negotiation. To avoid unpleasant surprises late in a project’s life cycle, the stakeholders all have to understand and agree on their objectives and priorities.” SLIM-Estimate’s powerful estimation and planning features expose unrealistic expectations and provide a solid, empirical foundation negotiation and commitment decisions.  

Blog Post Categories 
Estimation Tips & Tricks