SWE-545 Software Testing and Quality
This course is about Software Quality Assurance and Testing, a key knowledge area in software engineering. On the quality part, the course covers software quality factors, errors, faults and failures, software quality reviews and inspections, software quality metrics, and software quality standards. In the testing part, the course covers testing processes, test management, test techniques: static techniques (review, static analysis), dynamic techniques (black-box, white-box, defect-based, dynamic analysis), test of software characteristics. Test automation will be also discussed. Recent advancements in testing such as crowd testing, test-driven development (TDD), etc. will also be covered. Reading and presenting relevant research papers is an important part of the course.