Lecture 9
Verification & Validation (V&V)
1. Understanding V&V
o Verification: Ensures the software meets specified requirements by
checking if it was built correctly.
o Validation: Ensures the software meets the needs of the customer
by confirming if the right product was built.
Static Techniques
1. Peer Reviews (Software Inspections)
o Peer reviews involve systematically examining software artifacts to
identify defects early in the development lifecycle. This technique
applies to all artifacts, such as code and design documents.
2. Static Analysis
o Static Analysis: Involves using automated tools to check source
code for common errors and adherence to coding standards without
executing the program.
o Examples of what static analysis can detect:
Dereferencing null pointers
Use of global variables
Unreachable code
Uninitialized variables
Code complexity issues
Advantages & Disadvantages of Static Analysis
1. Advantages
o Comprehensive Coverage: Can cover all parts of the code,
including rarely used sections.
o Independent of Environment: Works independently of the
compiler or environment, identifying issues that might be compiler-
specific.
o Early Detection: Quick and cost-effective for early detection of
issues, reducing the cost of fixing problems later in development.