A simple database Project Size (FP) Effort (Pm) Cost Rs. (000) Pp. doc Pre-shipment errors Post-shipment defects People abc 120 24 168000 365 134 29 3 Def 270 62 440000 1224 321 86 5 ghi 200 43 314000 1050 256 64 6
Software Engineering II Lecture 15 Fakhar Lodhi
Normalized Metrics – per FP Effort (Pm) abc 120 0.20 1400.00 3.04 1.12 0.24 3 Def 270 0.23 1629.63 4.53 1.19 0.32 5 ghi 200 0.22 1570.00 5.25 1.28 6 Pre- shipment Post- People Project Size (FP) Cost Rs. (000) Pp. doc
Recap
Summary of Today’s Lecture
Statistical Process Control A graphical technique known as control charts, is used to determine this. Same process metrics vary from project to project Is the trend statistically valid When are changes meaningful
Control Charts Walter Shewart – 20’s Initially developed for manufacturing processes This technique enables individuals interested in software process improvement to determine whether the dispersion (variability) and “location” (moving average) of process metrics are stable (i.e. the process exhibits only natural or controlled changes) or unstable (i.e. the process exhibits out-of-control changes and metrics cannot be used to predict performance).
METRICS DATA FOR ERRORS UNCOVERED PER REVIEW HOUR 1 3 2 4.5 1.2 4 5 3.5 6 4.8 7 2 8 4.5 9 4.75 10 2.25 11 3.75 12 5.75 13 4.6 14 3.25 15 4 16 5.5 17 5.9 18 4 19 3.3 20 5.8
Control Charts Two types of charts are used Moving range control chart Individual control chart
METRICS DATA FOR ERRORS UNCOVERED PER REVIEW HOUR
Moving Range Control Chart Mean of the moving range Moving range Upper control limit (UCL) Calculate the moving ranges: the absolute values of the successive differences between each pair of data point. Plot these moving ranges on your chart. Calculate the mean of the moving ranges. Plot this on the chart. Multiply the mean with 3.268. Plot this as the Upper Control Line (UCL). This line is 3 standard deviations above the line. To determine whether the process metrics description is stable, a simple question is asked: are the moving ranges values inside the UCL? If the answer is yes then the process is stable otherwise it is unstable.
Individual Control Chart UNPL = Am + 2.66*M.A Arithmetic Mean (Am) Am + 2 * Standard Deviation. Mean of the moving range M.A = 1.78 Am - Standard Deviation. Am - 2 * Standard Deviation. Am + Standard Deviation. Plot individual metric values Compute the average value for the metrics values - Am Multiply the mean of moving average by 2.66 and add average computed in step 2 above. The result is Upper Natural Process Limit (UNPL) Multiply the mean of moving average by 2.66 and subtract average computed in step 2 above. The result is Lower Natural Process Limit (LNPL) Plot UNPL and LNPL. If LNPL is less than zero than it need not be plotted unless the metric being evaluated takes on values that are less than 0. Compute a standard deviation as (UNPL – Am)/3. Plot lines 1 and 2 standard deviations above and below Am. Applying these steps we derive an individual control chart. LNPL = Am -2.66*M.A
4 Criteria - Zone Rules May be used to evaluate whether the changes represented by metrics indicate a process that is in control or out of control A single metrics value lies outside UNPL Two out of three successive values lie more than 2 standards deviations away from Am. Four out of five successive values lie more than one standard deviation away. Eight consecutive values lie on one side of Am. If any of these tests passes, the process is out of control. Hence this data can be used for inference.
Some conclusions from this data It can be seen that the variability decreased after project 10. By computing the mean value of the first 10 and last 10 projects, it can be shown that the remedial measure taken was successful and resulted in 29% improvement in efficiency of the process.