Advertisement

Empirical Software Engineering

, Volume 11, Issue 4, pp 523–539 | Cite as

Can observational techniques help novices overcome the software inspection learning curve? An empirical investigation

  • Jeffrey Carver
  • Forrest Shull
  • Victor Basili
Article

Abstract

When learning a new software engineering technique, there is a learning curve that must be overcome. In particular, when studies are conducted in a classroom setting, researchers need a method for quickly accelerating the experience of novice subjects to allow the results to be more applicable in industrial settings. In this paper, we propose and test a method to enable novices to gain process experience to allow them to more quickly overcome the learning curve. The method we evaluate allows an inspector to gain experience with the inspection process by observing an inspection performed by someone else. The results of the study show that the proposed method for gaining experience appears to be useful in some limited cases, that is, for low experienced subjects who were inspecting a requirements document from a domain in which they had low knowledge. Based on the results of this study, we are able to propose some new related hypotheses to be tested in future studies.

Keywords

Empirical study Requirements inspections Software process Experimental process Software quality 

Notes

Acknowledgments

We would like to thank the students of CMSC735 in the Fall Semester of 2001 at the University of Maryland for their participation in this study. We thank the anonymous reviewers for their insightful comments. We would also like to thank the reviewers for their helpful and insightful comments. Finally we would like to thank Dr. J. Edward Swan from Mississippi State University for providing aid on the statistical presentation. We acknowledge support from the NSF Reader’s Project (CCR-9900307) and the NSF CeBASE Project (CCR-0088078).

References

  1. Arif T, Hegde LC (2001) Inspection of Object Oriented Construction: A Study of Reading Techniques Tailored for Inspection of Design Models Expressed in Uml. Prediploma Thesis. Norwegian University of Science and TechnologyGoogle Scholar
  2. Basili V, Green S, Laitenberger O, Shull F, Sorumgaard S, Zelkowitz M (1996) The empirical investigation of perspective based reading. Empirical Software Engineering—An International Journal 1:133–164CrossRefGoogle Scholar
  3. Basili V, Selby R (1987) Comparing the Effectiveness of Software Testing Strategies. IEEE Trans Softw Eng 13:1278–1296Google Scholar
  4. Bisant DB, Lyle JR (1989) A two-person inspection method to improve programming productivity. IEEE Trans Softw Eng 15:1294–1304CrossRefGoogle Scholar
  5. Campbell D, Stanley J (1963) Experimental and quasi-experimental designs for research. Houghton Mifflin, BostonGoogle Scholar
  6. Carver J (2003a) The Impact of Background and Experience on Software Inspections. PhD Thesis. Department of Computer Science, University of MarylandGoogle Scholar
  7. Carver J, Jaccheri L, Morasca S, Shull F (2003b) Issues in Using Students in Empirical Studies in Software Engineering Education. Proceedings of Ninth International Software Metrics Symposium (METRICS 2003), pp239–249Google Scholar
  8. Carver J, Shull F, Basili V (2003c) Observational Studies to Accelerate Process Experience in Classroom Studies: An Evaluation. Proceedings of International Symposium on Empirical Software Engineering, ISESE 2003, pp72–79Google Scholar
  9. Collins A, Brown JS, Newman SE (1989) Cognitive apprenticeship: Teaching the crafts of reading, writing and mathematics. In: Resnik LB (ed) Knowing, learning, and instruction: Essays in honor of Robert Glaser. Lawrence Erlbaum, Hillsdale, NJGoogle Scholar
  10. Conradi R, Mahagheghi P, Arif T, Hegde LC, Bunde GA, Pedersen A (2003) Object-Oriented Reading Techniques for Inspection of Uml Models—An Industrial Experiment. Proceedings of European Conference on Object-Oriented Programming (ECOOP’03) Darmstadt, Germany, 483–500Google Scholar
  11. Kamsties E, Lott C (1995) An Empirical Evaluation of Three Defect-Detection Techniques. ISERN Technical Reports. ISERN-95-02Google Scholar
  12. Knight JC, Myers EA (1993) An improved inspection technique. Commun ACM 36:51–61CrossRefGoogle Scholar
  13. Laitenberger O, DeBaud J-M (2000) An encompassing life cycle centric survey of software inspection. J Syst Softw 50:5–31CrossRefGoogle Scholar
  14. Melo W, Shull F, Travassos G (2001) Software Review Guidelines. COPPE Technical Reports. ES-556/01Google Scholar
  15. Muller MM, Tichy WF (2001) Case Study: Extreme Programming in a University Environment. Proceedings of 23rd International Conference on Software Engineering, ICSE 2001, 537–544Google Scholar
  16. Münch J, Armbrust O (2003) Using Empirical Knowledge from Replicated Experiments for Software Process Simulation: A Practical Example. Proceedings of Empirical Software Engineering, 2003. ISESE 2003. Proceedings. 2003 International Symposium on, 18–27Google Scholar
  17. Pintrich PR, Schunk D (1996) Chapter 5: Other social cognitive processes. Motivation in education: Theory, research and practice. Prentice Hall, Englewood CliffsGoogle Scholar
  18. Porter A, Votta L (1998) Comparing detection methods for software requirements inspections: A replication using professional subjects. Empirical Software Engineering — An International Journal. 3:355–379CrossRefGoogle Scholar
  19. Shull F (1998) Developing Techniques for Using Software Documents: A Series of Empirical Studies. PhD Thesis. Department of Computer Science, University of Maryland, College ParkGoogle Scholar
  20. Shull F, Rus I, Basili V (2000) How perspective-based reading can improve requirements inspections. Computer 33:73–79CrossRefGoogle Scholar
  21. Shull F, Carver J, Travassos G (2001) An Empirical Methodology for Introducing Software Processes. Proceedings of Joint 8th European Software Engineering Conference (ESEC) and 9th ACM SIGSOFT Foundations of Software Engineering (FSE-9). Vienna, Austria, pp288–296Google Scholar
  22. Singer J, Lethbridge T (1996) Methods for Studying Maintenance Activities. Proceedings of Workshop for Empirical Studies of Software Maintenance. Monterey, California, pp105–110Google Scholar
  23. Spinellis D (2001) Fear of coding, and how to reduce it. IEEE Computer 34:100–199Google Scholar
  24. Williams L (2001) Integrating Pair Programming into a Software Development Process. Proceedings of Software Engineering Education and Training, 2001. Proceedings 14th Conference on, pp27–36Google Scholar
  25. Wood M, Roper M, Brooks A, Miller J (1997) Comparing and Combining Software Defect Detection Techniques: A Replicated Empirical Study. Proceedings of 1997 Foundations of Software Engineering, pp262–277Google Scholar
  26. Zhang Z, Basili V, Shneiderman B (1999) Perspective-based usability inspection: An empirical validation of efficacy. Empirical Software Engineering—An International Journal 4:43–70zbMATHCrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC 2006

Authors and Affiliations

  1. 1.Department of Computer Science and EngineeringMississippi State UniversityStarkvilleUSA
  2. 2.Fraunhofer Center for Experimental Software EngineeringUniversity of MarylandCollege ParkUSA
  3. 3.Department of Computer ScienceUniversity of MarylandCollege ParkUSA

Personalised recommendations