Design To Cost Metrics Can Help Increase Project Value While Reducing Cost

January 5, 2009 · Filed Under Estimating, General · Comment 

An interesting paper By Quentin Redman and George Stratton in the Fall 2008 SCEA Journal discussed implementation of Design To Cost. Quentin covered some of this at the 2008 SEER Users Conference in his paper.

They Define Design to Cost as:

Design To Cost (DTC): DTC is engineering oriented and attempts to solve the mystery “Given the budget and performance reuirements what do I design and build”

They contrast this with Cost As An Independent Variable (CAIV): CAIV is architectural in nature and answers the question “given a fixed budget how much performance can I get when I need it with the maximum acceptable risk”

They discuss how at Raytheon they lend CAIV and DTC under the heading affordability.

They also identify their core design to cost metric: DTC = CurrentCostEstimate / DTCTarget

I have the highest respect for organization that use estimates as part of the project management process. This is a key part of project management.

Step Eight: Generate A Project Plan

The process of generating a project plan includes taking the estimate and allocating the cost and schedule to a function and task-oriented work breakdown structure. Models such as SEER Client for Microsoft perform this function automatically. The eight major software development phases
are: (1) concept, (2) acquisition, (3) requirements, (4) design, (5) code and unit test, (6) integration, (7) acceptance, and (8) post deployment.

Determining Costs from Effort Estimates

At this point in the estimation process, you should have a reasonably accurate projection of your project’s size and required effort, that is, an estimate of the number of person-hours by component and a sum of these projections, and you can now begin to price the estimate. As software estimation models generally account only for costs related directly to development, you may need to translate the required effort to a cost and finalize the estimate by adding in essential nonlabor costs. You can do so by answering the following questions:
What types of individuals do I need and when do I need them?

Identify the specific personnel requirements by task area (direct software management, software systems engineering, design, programming, configuration management, quality assurance, etc.). Develop a strawman schedule from the work breakdown structure or a staffing plan such as the one produced by SEER-SEM.

How experienced do they have to be? Assign specific staff levels to the task requirements and identify the level of experience required to satisfy the task. Some of the automated cost models will identify the tasks and develop a task-based schedule, which will minimize but not eliminate all of the work required to produce the software development plan.

Read more