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 organizations 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.
|