©Ian Sommerville 2000 Software Engineering, 6th edition.. Chapter 19 Slide 2.[r]
(1)Verification and Validation
● Assuring that a software system
(2)©Ian Sommerville 2000 Software Engineering, 6th edition Chapter 19 Slide
Objectives
● To introduce software verification and validation
and to discuss the distinction between them
● To describe the program inspection process and
its role in V & V
● To explain static analysis as a verification
technique
● To describe the Cleanroom software development
(3)Topics covered
● Verification and validation planning ● Software inspections
● Automated static analysis
(4)©Ian Sommerville 2000 Software Engineering, 6th edition Chapter 19 Slide
● Verification:
"Are we building the product right"
● The software should conform to its specification ● Validation:
"Are we building the right product"
● The software should what the user really
requires
(5)● Is a whole life-cycle process - V & V must be
applied at each stage in the software process
● Has two principal objectives
• The discovery of defects in a system
• The assessment of whether or not the system is usable in an operational situation
(6)©Ian Sommerville 2000 Software Engineering, 6th edition Chapter 19 Slide 41
Key points
● Verification and validation are not the same thing
Verification shows conformance with
specification; validation shows that the program meets the customer’s needs
● Test plans should be drawn up to guide the testing
process
● Static verification techniques involve examination
(7)Key points
● Program inspections are very effective in
discovering errors
● Program code in inspections is checked by a small
team to locate software faults
● Static analysis tools can discover program
anomalies which may be an indication of faults in the code