Definition of Software Inspection:
A form of document quality control in which a team of colleagues assists an author in assessing the quality of a documentary work-product against pre-defined quality criteria.
Inspection is distinguished from reviews and walkthroughs by its formal approach to five aspects:
- A documented process of six to eight tasks
- Specialist roles within the process, with a written job specification for each role
- Process control by quantitative entry and exit criteria for the process, and sometimes for each task
- “Oracles” (such as source and related documents, and “best-practice” checklists) to assist in the identification of defects; and
- Collection and analysis of both product and process data to determine cost-effectiveness.
Additionally, while reviews and walkthroughs concentrate solely on “defect detection” within the document being dealt with, inspection provides explicit formal mechanisms for “defect prevention” via improvement of processes and of personal skills.
Note that there are around twenty variants of what may properly be called “Inspection,” of which Fagan Style Software Inspection is one. Differences between the varieties are mostly of emphasis and terminology.
Fagan, M. “Design and Code Inspections to Reduce Errors in Program Development.” IBM Systems Journal 15, 3 (1976): 182-211;
Gilb, T., & Graham, D. “Software Inspection”, Addison-Wesley, 1993;
Radice, R., “High-Quality Low-Cost Software Inspections”, Paradoxicon, 2002.« Back to Dictionary Index