The document discusses test driven development and unit testing. It covers why testing is important for ensuring quality, managing risks and optimizing return on investment. It then defines different types of testing using the V-model and provides an introduction to unit testing. The document dives into test driven development as an approach, explaining how it can improve quality through developing test cases before code, which can help cut costs, shorten time to market and increase programmer productivity by producing organized and effective code.