Statistical Process Control

Statistically based analysis of a process and measures of process performance, which identify common and special causes of variation in process performance and maintain process performance within limits. [ ISO/IEC/IEEE 24765 ]

Notes

Statistical Process Control is an effective method of monitoring a process through the use of control charts. In general, if a process exceeds the limits, we assume that it's out of control and the project team should search for special causes to deal with it. There are many kinds of charts, such as the $\bar{x}$ chart and r-chart, etc.

The c-chart

The c-chart plots the number of defects in a process. If Ci denotes the number of defects obtained in the ith observation, the c-chart plots the data points at the height C1,C2...Cn. The c-chart also has a center line (CL) at height $\bar{C}$ (the average of Ci and the following 3σ lines:

Upper Control Limit: $UCL = \bar{C} + 3\sqrt{\bar{C}}$

Lower Control Limit: $LCL = \bar{C} - 3\sqrt{\bar{C}}$

If LCL is negative, it is set to zero. The c-chart assumes the Poisson distribution of defects and is thus approximative.

Use of SPC in software engineering is still under debate. One major issue is that formal SPC requires data to be independent variables from homogeneous sources of variation. As exposed in Software Engineering Metrics: What Do They Measure And How Do We Know, software engineering data is often affected by many variations sources. Furthermore, software engineering is domain-specific (requirements may vary from one domain to another) and limits may vary.