From software requirements specification to software testing. Risk analysis and metrics for software testing. Software testing process, including test planning, design, implementation, execution, and evaluation. Test design via white box and black box approaches; coverage-based testing techniques. Unit, integration, and system testing. Acceptance tests. Software maintenance and regression testing. Prerequisite: CMPUT 275. Credit may be obtained in only one of CMPE 320 or ECE 322.