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.