This document discusses software testing in the software development life cycle. It addresses three questions: who tests software, how to test software, and what to test in software. Regarding who tests, it discusses research finding that testers often find less important defects than other roles. How to test is discussed in the context of Google's approach of integrating testing roles into development teams. What to test addresses challenges with the waterfall model and proposes risk-based and iterative testing models to help prioritize testing. The goal is to make testing more productive and address challenges of limited time and resources.