Understanding the sources of variation in software inspections

In a previous experiment, we determined how various changes in three structural elements of the software inspection process (team size and the number and sequencing of sessions) altered effectiveness and interval. Our results showed that such changes did not significantly influence the defect detection rate, but that certain combinations of changes dramatically increased the inspection interval. We also observed a large amount of unexplained variance in the data, indicating that other factors must be affecting inspection performance. The nature and extent of these other factors now have to be determined to ensure that they had not biased our earlier results. Also, identifying these other factors might suggest additional ways to improve the efficiency of inspections. Acting on the hypothesis that the “inputs” into the inspection process (reviewers, authors, and code units) were significant sources of variation, we modeled their effects on inspection performance. We found that they were responsible for much more variation in detect detection than was process structure. This leads us to conclude that better defect detection techniques, not better process structures, are the key to improving inspection effectiveness. The combined effects of process inputs and process structure on the inspection interval accounted for only a small percentage of the variance in inspection interval. Therefore, there must be other factors which need to be identified.

[1]  P. McCullagh,et al.  Generalized Linear Models , 1992 .

[2]  David W. Scott The New S Language , 1990 .

[3]  Victor R. Basili,et al.  A Methodology for Collecting Valid Software Engineering Data , 1984, IEEE Transactions on Software Engineering.

[4]  Wei-Tek Tsai,et al.  An experimental study of fault detection in user requirements documents , 1992, TSEM.

[5]  John C. Knight,et al.  An improved inspection technique , 1993, CACM.

[6]  Beat Kleiner,et al.  Graphical Methods for Data Analysis , 1983 .

[7]  Brett Kyle Successful Industrial Experimentation , 1995 .

[8]  C. Chatfield Model uncertainty, data mining and statistical inference , 1995 .

[9]  John M. Chambers,et al.  Graphical Methods for Data Analysis , 1983 .

[10]  B. Curtis,et al.  Substantiating programmer variability , 1981, Proceedings of the IEEE.

[11]  J. Valacich,et al.  Computer brainstorms: More heads are better than one. , 1993 .

[12]  Stephen G. Eick,et al.  Estimating software fault content before coding , 1992, International Conference on Software Engineering.

[13]  J. Christopher Ramming,et al.  Two Application languages in software production , 1994 .

[14]  Adam A. Porter,et al.  Experimental Software Engineering: A Report on the State of the Art , 1995, 1995 17th International Conference on Software Engineering.

[15]  David Lorge Parnas,et al.  Active design reviews: principles and practices , 1985, ICSE '85.

[16]  Lloyd S. Nelson Successful Industrial Experimentation , 1996 .

[17]  Michael E. Fagan Design and Code Inspections to Reduce Errors in Program Development , 1976, IBM Syst. J..

[18]  Jay F. Nunamaker,et al.  Electronic meeting systems , 1991, CACM.

[19]  Dewayne E. Perry,et al.  Understanding and Improving Time Usage in Software Development , 1995 .

[20]  Trevor Hastie,et al.  Statistical Models in S , 1991 .

[21]  James R. Lyle,et al.  A Two-Person Inspection Method to Improve Prog ramming Productivity , 1989, IEEE Transactions on Software Engineering.

[22]  Lawrence G. Votta,et al.  Assessing Software Designs Using Capture-Recapture Methods , 1993, IEEE Trans. Software Eng..

[23]  D. A. Kenny,et al.  Correlation and causality , 1979 .

[24]  Adam A. Porter,et al.  Comparing Detection Methods for Software Requirements Inspections: A Replicated Experiment , 1995, IEEE Trans. Software Eng..

[25]  Sidney Addelman,et al.  trans-Dimethanolbis(1,1,1-trifluoro-5,5-dimethylhexane-2,4-dionato)zinc(II) , 2008, Acta crystallographica. Section E, Structure reports online.

[26]  B BisantDavid,et al.  A Two-Person Inspection Method to Improve Programming Productivity , 1989 .

[27]  Harvey P. Siy,et al.  An experiment to assess the cost-benefits of code inspections in large scale software development , 1995, SIGSOFT '95.

[28]  Philip M. Johnson An instrumented approach to improving software quality through formal technical review , 1994, Proceedings of 16th International Conference on Software Engineering.

[29]  G. Freytag [CORRELATION AND CAUSALITY]. , 1964, Psychiatrie, Neurologie, und medizinische Psychologie.

[30]  P. McCullagh,et al.  Generalized Linear Models, 2nd Edn. , 1990 .

[31]  Harlan D. Mills,et al.  Understanding and Documenting Programs , 1982, IEEE Transactions on Software Engineering.