1 design and code inspections to reduce errors in program development. m.e. fagan ibm systems...

15
1 Design and Code Inspections to Reduce Errors in Program Development. M.E. Fagan IBM Systems Journal, 1976 Presented by Ankush Varma

Post on 22-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

1

Design and Code Inspections to Reduce Errors in Program Development.

M.E. FaganIBM Systems Journal, 1976

Presented by Ankush Varma

2

Overview

What is Code Inspection Study: Quantification of Benefits The Formal Inspection Process Code Inspection for Process

Management

3

Code Inspection

Code is only looked at from a debugging viewpoint.

Cannot revisit algorithms, check for coding standards etc. easily.

Inspection is a formal process of looking at all aspects of both design and code even when nothing seems broken.

Write Code

Debug

Add features

Test

4

Programming : A Manageable Process

Programming can be though of as a process: Requirement Statements are Input. A series of processing operations act on this. Each step has well-defined output. Each step has unambiguous exit criteria e.g. clean

compilation, number of lines of code a design statement translates to etc.

Cost of reworking errors massively increases down the process.

Note the underlying ties to a waterfall model.

5

The Programming Process

cost

6

The Benefits of Code Inspection : A Study

7

Study of Error Detection Rates

8

The Formal Inspection Process

9

People Involved

Moderator Designer Coder/Implementor Tester

10

The Steps of the Inspection Process

11

What to Look For : Examples

12

Code Inspection for Process Management

13

Using Code Inspections for Process Control

List most error-prone modules to prioritize testing, re-coding or later inspections.

Compare processes to evaluate relative effectiveness.

Use increased predictability to plan ahead. Error re-work moved to first half of process,

where it is cheaper. Earlier quantification of product quality.

14

Inspections are NOT Walk-Throughs

15

Questions/Discussion