Presents the basic principles behind the concepts, problems and solutions of software productivity. Divided into three parts—a survey of software engineering, programming structures and documentation—it offers a unified perspective of software engineering. Describes how to assess complexity, appraise requirements definition, evaluate design, quantify quality and validate products.