In-depth research-oriented study of Verification and Validation throughout the
development lifecycle. Techniques for validation and verification. Quality assurance at
the requirements and design phases. Software testing at the unit, module, subsystem,
and system levels. Automatic and manual techniques for generating and validating test data. Testing process: static vs. dynamic analysis, functional testing, inspections, and
reliability assessment.