COMP 370: Software Quality, Metrics, and Testing

In this programming intensive course, students will learn effective automation, testing, and use of software metrics through the practices of Test Driven Development and Continuous Deployment. The first half of the course will focus on the fundamentals of Test Driven Development and test automation. The second half of the course will build upon those skills and allow the students to create acceptance test and deployment automation tools. Finally, students will learn how to measure user feedback effectively, thereby allowing them to safely deploy changes to running production software multiple times per day, rather than once every few weeks or months.

After taking this course, students should be able to:

Employ Test Driven Development to create automated unit tests and improve the design of software.

Create tools for build, test, and deployment automation.

Understand the benefits and costs of automated acceptance testing.

Use automated tests and metrics to address cross-cutting concerns such as performance and scalability.

Possess the basic skills necessary to create, test, deploy, and maintain an application written for a cloud computing environment.