Cost of Software Quality


CoSQ was chosen as one of four measures to track, because it provided a framework to determine rework levels, as well as the overall return on investment (ROI) or RES's improvement program. The other measures chosen were software productivity, cost performance index, and overall product quality.

The following describes how RES used CoSQ as a method for tracking rework and calculating ROI in their software improvement program. It is adapted from previously published sources.

RES's CoSQ Model

Cost of software quality was considered the sum of two components: the cost of nonconformance (rework costs) and the cost of conformance (prevention and appraisal costs). RES determined that they needed to track these quality cost categories. The model shown in Figure 22.1 was used to accumulate them.

Figure 22.1. RES's CoSQ Model


In this model, CoSQ is the sum of the costs of appraisal, prevention, and rework. The focus on rework is important, because it represents the major component of waste and scrap of software development. One of the most costly activities in software development today is reworking or redoing what has already been done. There are many underlying reasons why this happens, but mostly because of flawed requirements, changing conditions, and unexpected problems. For some reason, software professionals have come to accept mountains of rework as part of their everyday activitiesin some cases, they do not think of it as rework. For example, precious schedule time is spent on fixes for code defects when software doesn't perform as expected, or on redesign of a user interface because the customer expects something different from what is provided. Many software engineers think of this as the way things are supposed to happen.

The definitions of each subcategory (within the CoSQ categories of appraisal, prevention, and rework), which were rather brief for reasons of simplicity, were subject to misinterpretation. This was addressed by refining the definitions as experience was gained in using them. This required five iterations of the initial data-gathering exercise before a satisfactory level of consistency was obtained.

Breaking these basic quality cost categories (rework, appraisal, and prevention) into subcategories, defining the subcategories, and assigning project activities and costs to them proved to be a difficult task for RES. This was because the existing work breakdown structure used on the software projects did not correspond well to the CoSQ categories.

CoSQ Data Gathering

Project costs were collected using the conventional work breakdown structure, and project leaders periodically manually reassigned all costs to the cost of quality subcategories. The projects' CoSQ data was then combined. The improvement initiative costs were factored in as a separate prevention project. These were then used to produce the organizational CoSQ average and trend data.

Long-term plans were to develop a common work breakdown structure to provide as close a mapping to the cost of quality as possible. This would also entail a revision of the cost accounting system and possibly the time card reporting system as well.




Design for Trustworthy Software. Tools, Techniques, and Methodology of Developing Robust Software
Design for Trustworthy Software: Tools, Techniques, and Methodology of Developing Robust Software
ISBN: 0131872508
EAN: 2147483647
Year: 2006
Pages: 394

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net