This document discusses automated quality assurance tools and how they can be used to complement manual quality assurance techniques. It provides an overview of common automated QA tools like Checkstyle, PMD and FindBugs, describing their strengths and weaknesses. Checkstyle performs source code analysis to check for coding standard compliance and best practices. PMD also analyzes source code but focuses more on design-level issues. FindBugs analyzes bytecodes to find bugs, using data flow analysis. The goal in this class is to teach students to apply the right mix of automated and manual QA to build high quality systems efficiently.