This document provides information on problem-solving and design in computer science. It discusses top-down design, structure diagrams, flowcharts, pseudocode, library routines, and subroutines. It also covers test data including normal data, abnormal data, extreme data, and rogue values. Validation and verification methods such as range checks, length checks, type checks, and check digits are explained. Examples of these concepts are given throughout the document.