SEN 304
Software Testing & Quality Assurance
2
Course Description
At the end of this Course, students should be able to:
1. state the critical importance of software testing in ensuring software quality;
2. explain the difference between validation and verification and their different techniques;
3. describe the concept of quality assurance and differentiate between process assurance
and product assurance;
4. describe the different statistical approaches to quality control.
Course Outline
The importance of Software Testing. Understanding Verification and Validation. How to assure
it and verify it, and the need for a culture of quality. Avoidance of errors and other quality
problems. Inspections and reviews. Testing, verification and validation techniques. Process
assurance vs. Product assurance. Quality process standards. Product and process assurance.
Problem analysis and reporting. Statistical approaches to quality control
Lab WorK: Debugging tools; unit testing – black box and white testing techniques;
integration and system testing tools; other testing tools – performance testing, load testing,
stress testing, regression testing, security testing; manual testing vs automated testing.