Correctness, proofs, and testing Dependencies System tests Testing GUIs Resource management Unit and system tests Finding assumptions that do not hold Design for testing Performance