Software Inspections1

Software Inspections are a disciplined engineering practice for detecting and correcting defects in software artifacts, and preventing their leakage into field operations. Software Inspections were introduced in the 1970s at IBM, which pioneered their early adoption and later evolution2. Software Inspections provide value in improving software reliability, availability, and maintainability.

Software Inspections are strict and close examinations conducted on requirements, specifications, architectures, designs, code, test plans and procedures, and other artifacts3,4. Inspection against requirements, architecture, and designs generally requires a human mind8. On the other hand, checking for many of the rules in coding standards is tedious and error-prone for a human. Rubric checks these automatically, allowing engineers to invest more time in other aspects of software inspection.

Return on Investment
The Return on Investment for Software Inspections is defined as net savings divided by detection cost4,5. Savings result from early detection and correction, thereby avoiding the increased cost that comes with the detection and correction of defects later in the life cycle.

An undetected minor defect that escapes detection and leaks to the next phase may cost two to four times to detect and correct6. Rubric targets violations of coding standards. This class of defects can be detected on-the-fly as a developer works. As a result, Rubric can catch these defects much earlier than manual inspections can.

Cost of Manual Inspection
The cost of performing Software Inspections includes the individual preparation effort of each participant before the session and the effort of participants during the inspection session. Typically, 4-5 people participate and expend 1-2 hours of preparation and 1-2 hours at the inspection session each. This cost of 10 to 20 hours of total effort per session results in the early detection of 5-10 defects in 250-500 lines of new development code or 1000-1500 lines of legacy code7. Rubric can increase the efficiency of inspection by allowing developers to focus on inspection activities related to requirements, architectures, designs.

Learn more about software inspections at The Carnegie Mellon Software Engineering Institute.


  1. Portions this of material are quoted from "Software Inspections", Carnegie Mellon Software Engineering Institute.
  2. Fagan, M. "Design and Code Inspections to Reduce Errors in Program Development." IBM Systems Journal 15, 3 (1976): 182-211.
  3. Ebenau, Robert G. and Strauss, Susan H. Software Inspection Process. New York, NY: McGraw-Hill, 1994.
  4. O'Neill, Don. Peer Reviews. Encyclopedia of Software Engineering. New York, New York: Wiley Publishing, Inc., to appear 2001.
  5. O'Neill, Don. Return on Investment Tool (2001).
  6. Basili, Vic, and Barry Boehm. "Software Defect Reduction Top 10 List." Computer 34,1, (January 2001): 135-137.
  7. O'Neill, Don. "National Software Quality Experiment: Results 1992-1999." Software Technology Conference, Salt Lake City, 1995, 1996, and 2000.
  8. There is much research in the area of automatic inspection against requirements, architectures, designs, etc. However, such systems require a human being to encode artifacts in a formal notation that can be consumed by a software tool.
Quick Facts

  • Plug-in your own standards.
  • Rubric inspects code as you work.
  • Fix errors before they get to a code review.

Demo

See Rubric in action, click here for a flash demo.

Request a beta evaluation. E-mail us at: info@ensoftcorp.com

Learn More

Request a Quote

Request a quote today. E-mail us at: info@ensoftcorp.com

  • Include a copy of your coding standard.
  • Tell us how many licenses you are interested in.

Contact Us

To learn more about Rubric, or any of our other tools, contact us:

+1 (515) 296-3253
contactus­@ensoftcorp.com

For full contact information, click here.