3 lectures per week, 50 minutes each (3-0-3)
Designation: Required Course
Course Level: Undergraduate
Prerequisite(s) by Topic:
- The concept of software quality, and software quality metrics. Software quality assurance planning & implementation. Quality process standards. Validation & verification. Reviews, walkthroughs, & inspections. Mechanisms for validating software systems. Techniques for generating and validating test data. Students participate in a group project on software validation and verification.
“A Practical Guide to Testing Object-Oriented Software,” by John McGregor and David A. Sykes. Addison-Wesley, 2001, ISBN: 0-201-325640
Pressman, R.S. Software Engineering: A Practitioner’s Approach, 5th Ed., McGraw-Hill Companies, Inc., 2001 (for Quality assurance part)
Upon completion of this course, students will have the ability to:
- Design comprehensive test plans.
- Apply software inspection techniques.
- Apply a wide variety of testing techniques.
- Demonstrate knowledge of key techniques and tools in software testing.
- Assess and evaluate software quality.
- Work as a team leader/member of a software testing team.
- Introduction to software quality assurance [14 classes]
- Inspections and reviews [2 class]
- Principles of software validation [1 class]
- Software verification [1 class]
- Software testing [14 classes]
- Specification-based test construction techniques [2 classes]
- White-box and gray-box testing [2 classes]
- Control flow oriented test construction techniques [2 classes]
- Data flow oriented test construction techniques [2 classes]
- Clean room approach to quality assurance [2 classes]
- Software process certification [1 class]