Log In to My ASQ Members Log In   View Shopping Cart Shopping Cart   Quality Progress Magazine Quality Progress Magazine   Make Good Great
Magazines & Journals
Software Quality Professional

Printer Friendly
Issues
I Want To
Article Access Key
  • Public Article
  • Log-In to View
  • Full, Senior, or Fellow members with no subscription.
  • Full, Associate, Forum/Division, Senior or Fellow members who are also subscribers.
  • Enterprise and Site Members have access to all issues.

December 2000
Volume 3 • Number 1

Contents

SOFTWARE PROCESSES
Closed-Loop Defect Removal Model Using Statistical Process Control

This article introduces the closed-loop defect removal model, a dynamic model that is used for software quality management and latent defect prediction. The methods described in the literature for defect prediction and their drawbacks are elaborated. The new model considers injected defects and escaped defects separately. It gives the initial distribution of defects based on the organization’s baseline values for defect injection and goals for defect removal effectiveness across phases. Actual values for defects are fed into the model after every phase with additional indicators on defect injection and review effectiveness. Using statistical process control (SPC), specification limits are fixed for predicted values of defects. Estimates are revised when the actual cross the specification limits. Causes of deviations are analyzed and preventive/corrective actions are taken. This enables better quality planning, control, and management. Estimating the distribution of defects across different phases of software development helps managers have control over product quality.

Key words: defect removal effectiveness, prediction, reviews, software quality management, statistical process control (SPC), testing

by Achamma Jose, Anju N. K., and S. K. Pillai Network, Systems and Technologies (P) Ltd.

INTRODUCTION

During the last three decades, software engineering practitioners have produced many defect prediction models. It is difficult, however, to predict the behavior of the software before it is actually used. Many defect prediction models depict only part of the problem and seriously misspecify it (Fenton 1999). A good defect prediction model should enable in-process control of software quality through effective defect removal. The model must consider a number of process indicators for better prediction. Defect removal is one of the most expensive elements in any software project. Defects are removed through reviews and testing. Effective defect removal leads to (Kan 1995):

  • Reduced development cycle time
  • Reduced product cost
  • Improved product quality and increased customer satisfaction

This article introduces the closed-loop defect removal model using statistical process control (SPC), which encompasses the characteristics of both software quality management and latent defect prediction models. A software quality management model is used to control and manage the software quality during development. A latent defect prediction model estimates the number of software defects when it is used by customers.

The objective of this model is to permit early prediction and detection of defects. It provides signals of any out-of-control situation using measures obtained during the software development life cycle. Timely actions can be planned and implemented based on these signals. Data from reviews and testing are used to determine whether the goals for defect removal are being realized or will be realized at the completion of the development phase. Definitions of technical terms used in this article are provided in the appendix.