Picture of two heads

Open Access research that challenges the mind...

The Strathprints institutional repository is a digital archive of University of Strathclyde research outputs. Strathprints provides access to thousands of Open Access research papers by University of Strathclyde researchers, including those from the School of Psychological Sciences & Health - but also papers by researchers based within the Faculties of Science, Engineering, Humanities & Social Sciences, and from the Strathclyde Business School.

Discover more...

Practical Code Inspection Techniques for Object-Oriented Systems: An Experimental Comparison

Dunsmore, A. and Roper, M. and Wood, M. (2003) Practical Code Inspection Techniques for Object-Oriented Systems: An Experimental Comparison. IEEE Software, 20 (4). pp. 21-29. ISSN 0740-7459

Full text not available in this repository. (Request a copy from the Strathclyde author)

Abstract

Although inspection is an effective mechanism for detecting defects in procedural systems, object-oriented systems have different structural and execution models. This article describes the development and empirical investigation of three different techniques for reading object-oriented code during inspection. Research suggests that reading techniques must specifically address delocalization--the distribution of related functionality throughout an object-oriented system--and the fact that the static (compile time) and dynamic (run time) views of an object-oriented system are largely distinct. The three techniques that were developed consist of a checklist that specifically focuses on object-oriented issues, an abstraction-driven reading strategy that requires inspectors to reverse engineer specifications and a use-case driven approach that forces the inspector to consider the dynamic model. The investigation provides insights into all three techniques and, while the tailored checklist is found to be the most effective overall, the abstraction-driven strategy seems to deal better with delocalization issues. The significant message is that code inspection should explicitly address the characteristic features of object-orientation.