This paper presents a simple, practical calculation of the cost of requirements errors in application software development projects. It also recommends a way to find and fix these costly errors early in a project, when they are least expensive to correct.
Many studies have shown that requirements errors are very costly. By one estimate (in an article by Donald Firesmith for the Software Engineering Institute), requirements errors cost US businesses more than $30 billion per year and often result in failed or abandoned projects and damaged careers. The common wisdom is to find and fix requirements errors early in the lifecycle of a project, but that is easier said than done. Furthermore, the actual cost of a requirement error has been hard to quantify in the past. This resulted in a "business-as-usual" approach rather than proactively creating programs to find these errors early.
If you are a business executive, IT manager, project manager, or business analyst, you need a way to calculate the cost of requirements errors. Once you know that cost, you can make controlling faulty requirements an appropriate priority.
You can calculate your cost of a requirement error based on the simple formula presented in this article. The formula is based on extensive practical experience, as well as data from a wide variety of industries and software development environments.
The cost to fix a software defect varies according to how far along you are in the cycle, according to authors Roger S. Pressman and Robert B. Grady. These costs are presented in a relative manner, as shown in figure 1.
The relative costs shown in the chart above will be important in a later calculation, as you move from relative costs to a realistic approximation of the cost to find and fix each defect.
Figure 1: Variations in costs to fix a software defect
You may notice that the formula can be simplified, but the reason for not cancelling out the "(#screens + #reports) × 4 pw" factor will become apparent in the following steps. Using the more complex formula will provide a lot more information than just the requirement defect cost!
Now let's solve the formula to see the yield in an average situation. If you don't know the value of the "rework fraction" or the "requirement defect cost fraction" in the above formula, here's a good approximation from industry averages:
Rework fraction = 0.3 ( actual values range from 0.2 to 0.4)
Requirement defect cost fraction = 0.75 ( actual values range from 0.7 to 0.85)
The result of plugging in these industry averages yields $1,125. This is not an exact number, but it substantiates that a requirement defect is probably costing you around $1,000 or more at system test. You can expect a more exact number when using your own data.
This formula is intentionally biased to be conservative. The industry average rework percentages are based on total project cost, whereas the formula just counts the pure development costs. The reason is that project overhead