Software Inspections
Project Description
My research has focused on the development and evaluation of various techniques to aid individual inspectors in finding defects during the requirements and design phases. My earliest work focused on the design and evaluation of techniques for guiding developers through the inspection of object oriented design artifacts. A difficulty in reviewing a design document is that the various design artifacts illustrate the system from different points-of-view. It is not immediately obvious how to easily compare them. My colleagues and I developed and evaluated a set of techniques to help reviewers analyze design information. These techniques have also been evolved into a set of techniques to aid in the inspection of software architecture documents.In my current work, I am investigating two important issues that must be better understood regardless of the type of inspection being conducted. First, inspectors have difficulty understanding where there faults detected in an inspection actually originated and how to fix those problem. Second, it is important to understand other variables that impact the effectiveness of an inspection.
To address the first issue, I am working with a PhD student, Gursimran Walia, and a Cognitive Psychologist, Dr. Gary Bradshaw from Mississippi State University. An inspection typically focuses the reviewers on locating faults that are present in a software artifact. But, in order to fully understand these faults, it is important for the reviewer to identify their source. This source is referred to as an error (i.e. the underlying misunderstanding on the part of the document author that caused the author to make a concrete mistake in the document). In my current work I am performing a deeper investigation into the sources of faults in requirements documents. The approach is to identify and classify errors using insight provided by software engineering and cognitive psychology research. Cognitive psychology is relevant to this research because the creation and review of software requirements documents are human-based cognitive activities. Initial work in this area has had promising results through the development and evaluation of an error taxonomy.
I am addressing the second issue in two directions. First, it is important to understand which aspects of an inspectors' background and experience are important relative to their effectiveness. During my dissertation work, I obtained some initial insights into this question. Following up on that work, I have collaborated with researchers at Microsoft Research to conduct a large (70+ subjects) study focused on identifying important characteristics for an inspector to posses. The results of this study indicated that inspectors who have university degrees in non-computing fields were significantly more effective than those with degrees in computing fields. Second, it is also important to understand the thought process employed by an inspector while performing an inspection. Therefore, I am supervising a Master's student, Bryan Robbins, who is using techniques from Cognitive Psychology to study in detail the behavior of inspectors.
Research Findings
Error Abstraction
Gursimran Walia's PhD Dissertation work on Error Abstraction has produced and evaluated a Requirement Error Taxonomy. The current version of that taxonomy appears below and is discussed in more detail in the relevant publications.
To understand the usefulness of the Requirement Error Taxonomy, we have evaluated its use in a series of classroom studies. The taxonomy is used by first performing an inspection and locating faults. These source of each fault is then identified and classified using the Requirement Error Taxonomy. Finally, the artifact is reinspected. We compared a reinspection performed with the Requirement Error Taxonomy (the Experimental Condition) to a reinspection performed without the taxonomy (the control condition). The results in the figure below show that there was a significant improvement in effectiveness (i.e. number of faults found) when the taxonomy is used.

Background and Experience of Inspectors
Another line of research about inspections has focused on identifying the types of background and experiences that may make an inspector more effective. To begin with, we conducted a study with 73 professional developers from Microsoft. The goal of the study was to understand whether those subjects who had a computer science degree were more or less effective than those who did not have such a degree. The results (shown in the figure below) indicate that inspectors without a computer science degree were significantly more effective. For more details about this study and its results, please consult our IEEE Transactions on Software Engineering paper titled "The Impact of Educational Background on the Effectiveness of Requirements Inspections: An Empirical Study."
Publications
(Note: Blue = Journal; Red = Refereed Conference; Green = Workshop/Tech Report)Robbins, B. and Carver, J. "Cognitive Factors in Perspective-Based Reading: A Protocol Analysis Study." To appear in the Proceedings of the 2009 International Symposium on Empirical Software Engineering and Measurement (ESEM). October 15-16, 2009. Lake Buena Vista, Florida.
- Walia, G. and Carver, J. "A Systematic Literature Review to Identify and Classify Software Requirements Errors".
Information and Software Technology. 51(7):1087-1109. July 2009.
- Walia, G. and Carver, J. "Evaluating the Effect of the Number of Naturally Occurring Faults on the Estimates Produced by
Capture-Recapture Models." Proceedings of the 2nd International Symposium on Software Testing, Verification
and Validation. April 1-4, 2009. Denver, USA. p. 210-219.
- Carver, J., Nagappan, N., and Page, A. "The
Impact of Educational Background on the Effectiveness of Requirements
Inspections: An Empirical Study." IEEE Transactions on
Software Engineering. 34(6): 800-812.
- Walia, G. and Carver, J. "The
Effect of the Number of Defects on Estimates Produced by Capture-Recapture
Models." Proceedings of the 19th International Symposium on Software Reliability
Engineering (Student Track). Nov. 11-14, 2008. Seattle, WA. p.
305-306.
- Walia, G. and Carver, J. "Evaluation of Capture-
Recapture Models for Estimating the Abundance of Naturally-Occurring Defects."
Proceedings of the 2nd International Symposium on Empirical Software Engineering
and Metrics. Oct. 9-10, 2008. Kaiserslautern, Germany. p. 158-167
[© ACM, (2008). This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version is available at http://doi.acm.org/10.1145/1414004.1414031] - Walia, G., Carver, J. and Nagappan, N.
"The Effect of the Number of Inspectors on the Defect Estimates Produced by Capture-Recapture Models."
Proceedings of the 30th International Conference on Software Engineering.
May 10-18, 2008. Leipzig, Germany. p. 331-340.
[© ACM, (2008). This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version is available at http://doi.acm.org/10.1145/1368088.1368134] - He, L., Carver, J. and Vaughn, R. "Using Inspections to Teach Requirements Validation."
CrossTalk: The Journal of Defense Software Engineering. 21(1):
11-15. Jan. 2008.
- Walia, G., Carver, J. and Philip, T. "Requirement Error Abstraction and Classification: A Control Group Replicated Study."
Proceedings of the 18th IEEE International Symposium on Software
Reliability Engineering. November 5-9, 2007, Trollhättan, Sweden. p. 71-80.
- Vaughn, R. and Carver, J. "Experiences in n-fold
Structured Walkthroughs of Requirements Documents." Canadian Air Force
Software Engineering Symposium, Royal Military College of Canada. May 24-25, 2007.
- Walia, G. and Carver, J. "Development of a Requirement Error Taxonomy as a Quality Improvement
Approach: A Systematic Literature Review." Technical Report MSU-070404, Department of Computer Science and Engineering,
Mississippi State University, April 4, 2007.
- He, L. and Carver, J. "PBR vs. Checklist: A Replication in the N-Fold Inspection Context." Proceedings
of the 2006 International Symposium on Empirical Software Engineering (ISESE).
Sept. 21-22, 2006. Rio de Janeiro, Brazil. p. 95-104.
[© ACM, (2006). This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version is available at http://doi.acm.org/10.1145/1159733.1159750] - Walia, G., Carver, J., and Philip, T. "Requirements Error Abstraction and Classification: An Empirical Study."
Proceedings of the 2006 International Symposium on Empirical Software
Engineering (ISESE). Sept. 21-22, 2006. Rio de Janeiro, Brazil. p. 336-345.
[© ACM, (2006). This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version is available at http://doi.acm.org/10.1145/1159733.1159784] - Maldonado, J., Fabbri, S., Mendonca, M., Doria, E., Martimiano, L., Carver, J., Shull, F. and Basili, V.
"Comparing Code Reading and Testing Criteria: A Replication of Experimental Studies."
Proceedings of the 2006 International Symposium on Empirical
Software Engineering (Short Papers Track). Sept. 21-22, 2006. Rio de
Janeiro, Brazil. p.42-44.
- Carver, J., Shull, F. and Basili, V. "Can Observational Techniques Help Novices Overcome the Software Inspection
Learning Curve? An Empirical Investigation." Empirical Software Engineering: An International Journal.
11(4): 523-539, December 2006.
- Carver, J., Shull, F. and Rus, I. "Finding and Fixing Problems Early: A Perspective-Based Approach to Requirements
and Design Inspections." CrossTalk: The Journal of Defense Software Engineering. 19(12): 25-28, December 2006.
- Maldonado, J., Carver, J., Shull, F., Fabbri, S.,
Doria, E., Martimiano, L., Mendonça, M., and Basili, V. "Perspective-Based
Reading: A Replicated Experiment Focused on Individual Reviewer
Effectiveness." Empirical Software Engineering: An International Journal.
11(1): 119-142, March 2006.
- Fabbri, S., Maldonado, J.D., Hohn, E.N., Martimiano, L.A.F., Mendonca, M., Shull, F., Carver, J., and Basili, V.R.
"Data Analysis of the First Two PBR Replications in Readers Project." Technical Report TR-225, ICMC-USP, University of
Sao Paulo, Sao Carlos, SP, Brazil.
- Carver, J. and Basili, V. "Identifying Implicit Process Variables To Support Future
Empirical Work." Journal of the Brazilian Computer Society. 9(2):
77-86.November, 2003.
- Carver, J. and Basili, V. "Identifying Implicit Process Variables To Support Future Empirical Work."
Proceedings of the 17th Brazilian Symposium on Software Engineering (SBES 2003). October 2003.
p. 5-18. (Received Best Paper Award).
- Carver, J. "The Impact of Background and Experience on Software Inspections."
Empirical Software Engineering: An International Journal. 9(3):259-262. (Dissertation Abstract).
- Carver, J., Shull, F., and Basili, V. "Investigating the Effects of Process Experience on Inspection Effectiveness."
University of Maryland Technical Report CS-TR-4442. March 2003.
- Travassos, G., Shull, F., Carver, J., and Basili, V. "Reading Techniques for OO Design Inspections."
University of Maryland Technical Report CS-TR-4353. April 2002.
- Travassos, G., Shull, F., and Carver, J. "A Family of Reading Techniques for OO Design Inspections."
In Proceedings of WQS'2000 - Workshop Qualidade de Software, at the XIV Brazilian Symposium
on Software Engineering. Joao Pessoa: Brazilian Computer Society, 2000. v.1. p.225-237.
- Travassos, G., Shull, F., and Carver, J. "Reading Techniques for OO Design Inspections."
In Proc of the Twenty-fourth Annual Software Engineering Workshop, Goddard Space Flight
Center, Greenbelt, MD, December 1999.
- Travassos, G., Shull, F., and Carver, J. "Evolving a Process for Inspecting OO Designs."
In Proc. of the Workshop on Software Quality, XIII Brazilian Symposium on Software Engineering,
Florianopolis, Curitiba, Brazil, October 1999. Florianópolis, Curitiba, Brazil, October 1999.
Collaborators
- Dr. Nachiappan Nagappan, Microsoft Research
- Gursimran Walia, PhD student - Mississippi State University
- Bryan Robbins, M.S. student - Mississippi State University
Funding
This work is currently unfunded.Projects Frontpage    |    
Homepage    |    
List of Publications
Last Updated on August10, 2009 by Jeffrey Carver