COMP 370: Software Quality, Metrics, and Testing

The course teaches software testing and quality control concepts, principles, and techniques including black box and white box testing, coverage testing, test case development, and regression testing.

Credit Hours

3

Description

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.

Outcome

Students will learn how to prevent errors, how to get ‘bugs’ out of software, and be able to apply this knowledge in other courses and projects.

Syllabi

Semester/Year Instructor URL
Fall 2014 Conrad Weisert http://webpages.cs.luc.edu/~cweisert/COMP370/syllabus.html