Issue No. 04 - July/August (2003 vol. 20)
Paul Anderson , GrammaTech
Thomas Reps , GrammaTech
Tim Teitelbaum , GrammaTech
Mark Zarins , GrammaTech
<p>Software inspection reduces the number of defects early in the software life cycle. Cost savings are realized because errors are significantly more expensive to eliminate with each successive development phase. An important part of the inspection process is a detailed inspection of the source code; this inspection usually follows a checklist. While many tools are available to manage the inspection process, few tools support detailed code analysis. Recent advances in research on static program analysis can be used to address this aspect of software inspection. We describe a software tool, named CodeSurfer, that reveals fine-grained details of the semantics of the program being analyzed. CodeSurfer statically analyzes the entire program and produces a dependence-graph representation of the program. The tool's utility is illustrated with inspection examples taken from NASA's Formal Inspection Guidebook.</p>
software inspection, dependence graphs, program understanding, slicing, chopping
P. Anderson, T. Teitelbaum, T. Reps and M. Zarins, "Tool Support for Fine-Grained Software Inspection," in IEEE Software, vol. 20, no. , pp. 42-50, 2003.