Schedule

We meet Tuesdays at 2:30-4:20 in SUR 5100 and Thursdays at 2:30-3:20 in SUR 5140.

This schedule is subject to change, although the general topics covered shall remain consistent.

Week Date Topics Reading
1 Jan 7 Introduction
Software Quality
Slides
SWEBOK 11.1
STQA Ch.17
Jan 9 Testing Overview
Slides
SWEBOK 5.1,5.2
2 Jan 14 Input Space Partitioning
Slides
The Category-Partition Method for Specifying and Generating Functional Tests
Assignment 1
Jan 16 Input Space Partitioning
Slides
Was It Good for You?, Chapter 1 of Beautiful Testing
3 Jan 21 Combinatorial Testing
Graph Based Testing
Slides
Jan 23 Graph Based Testing A case of insufficient testing
4 Jan 28 Graph Based Testing
Slides
Jan 30 Graph Based Testing
Slides
5 Feb 4 Mutation Testing
Slides
Assignment 2
Feb 6 Mutation Testing
Slides
6 NO CLASS
7 Feb 18 Test Planning
Slides
Feb 20 Regression Testing
Slides
8 Feb 25 Program Analysis Tools
Slides
Demos
The Apple SSL/TLS bug
PVS Studio and Chromium (Only read entries for 3 found bugs)
Using FindBugs on Java programs
Assignment 3
Feb 27 Program Analysis Tools (Just for fun)Care and Feeding of C++'s Dragons
(Just for fun)FindBugs and static analysis
9 Mar 4 Unit Testing
Testability
Slides
Our buggy calculator
Google Clean Code Talks 1
Mar 6 Testability
Mockito
Google Guice
Our buggy music manager
Fowler on Mocking and Stubs
Fowler on Dependency Injection
10 Mar 11 Testability
Bug Reporting
Slides
A manifesto for error reporting
Bug Advocacy in General
Writing Clear Bug Reports (especially from 8:00 on)
Mar 13 Bug Reporting Continued
11 Mar 18 Project Discussion
Mar 20 Code Review
Slides
Tips for Effective Reviews
More Tips for Effective Code Reviews
12 Mar 25 Code Review Exercises
Mar 27 Security
Slides
CWE/SANS Top 25 Dangerous Errors (Categories)
Mitigation Approaches
Secure Coding Practices
13 Apr 1 Project Discussion
Apr 3 GUI and Mobile Testing
14 Apr 8 Project Outcome Discussions
Quality Retrospective