This document discusses software quality tools including code contracts, PEX, and static verification. It introduces design by contract principles and how Microsoft's Code Contracts library implements contracts for .NET programs. Contracts specify preconditions, postconditions, and invariants to define requirements. The document demonstrates how to write contracts and shows how PEX can generate test cases based on contracts. It also discusses how static verification tools like Clousot can check contracts without running code.