This book presents a formal methodology that develops principles of software metrics based on mathematical principles and the attributes of software behaviour. The problems and attributes of software are discussed in some depth, allowing the reader to gain a closer picture of software manufacturing processes. Also included is coverage of programming structures, design principles and the problems and solutions of documentation.