Experienced software practitioners and managers understand that software development is a process of experimentation involving the continuous discovery of technical information associated with the function, form, and fit of the software product. Software Inspections are an integral practice in the process of experimentation. Software inspections provide value in improving reliability , availability , and maintainability . Leading software indicators of excellence for each artifact type provide the exit criteria for the activities of the software life cycle. Completeness is based on traceability of the requirements to the code, essential for maintainability.
Style is based on consistency of recording, essential for maintainability.
Rules of construction are based on the software application architecture and the specific protocols, templates, and conventions used to carry it out, essential for reliability and availability. Multiple views are based on the various perspectives and viewpoints required to be reflected in the software product, essential for maintainability. Software Inspections are a reasoning activity performed by practitioners playing the defined roles of moderator, recorder, reviewer, reader, and producer. The adoption of Software Inspections practice is competency enhancing and meets little resistance among practitioners trained in their use. The adopting organization benefits by improved predictability in cost and schedule performance, reduced cost of development and maintenance, reduced defects in the field, increased customer satisfaction, and improved morale among practitioners.