Inspections Testing SE
Inspections Testing SE
SOFTWARE PROCESSES
The software process
Requirements
definition
System and
software design
Implementa tion
and unit testing
Integration and
system testing
Software specification
Software design and implementation
Software validation
Software evolution
Software specification
Feasibility Requirements
stud y elicitation and
anal ysis
Requirements
specification
Feasibility Requirements
repor t validation
System
models
User and system
requirements
Requirements
document
Verification and Validation
Verification:
"Are we building the product right"
The software should conform to its
specification
Validation:
"Are we building the right product"
The software should do what the user really
requires
The V & V process
Static
verification
Dynamic
Prototype
validation
Program testing
Planning
Overview Follow-up
Individual
Rework
preparation
Inspection
meeting
Inspection procedure
checklist
Examples: Initialisation, Constant naming,
loop termination, array bounds, etc.
Fault class Inspection check
Data faults Are all program variables initialised before their values
are used?
Have all constants been named?
Should the lower bound of arrays be 0, 1, or something
else?
Should the upper bound of arrays be equal to the size of
the array or Size -1?
If character strings are used, is a delimiter explicitly
assigned?
Control faults For each conditional statement, is the condition correct?
Is each loop certain to terminate?
Are compound statements correctly bracketed?
In case statements, are all possible cases accounted for?
Input/output faults Are all input variables used?
Are all output variables assigned a value before they are
output?
Interface faults Do all function and procedure calls have the correct
number of parameters?
Do formal and actual parameter types match?
Are the parameters in the right order?
If components access shared memory, do they have the
same model of the shared memory structure?
Storage management If a linked structure is modified, have all links been
faults correctly reassigned?
If dynamic storage is used, has space been allocated
correctly?
Is space explicitly de-allocated after it is no longer
required?
Exception Have all possible error conditions been taken into Inspection
management faults account?
checks
Inspection rate