This graduate-level text provides a one semester introduction to program specification. Readers are assumed to have a working knowledge of software engineering and basic discrete mathematics, but otherwise this may be their first encounter with formal specification. It is based on graduate courses and courses offered to professionals working in the software industry. The authors emphasize the need for formal abstraction in specification and the advantages it confers upon the software process. In addition, the book covers all three major specification languages: Larch, VDM, and Z. Consequently, readers will be able to select a formal method that best suits their needs and application. The first part of the book discusses specification in general and the abstraction process. Next come chapters on the mathematical tools required. Thirdly, the authors devote a chapter each to the main formal methods with a significant example of the use of each discussed.
From the reviews of the second edition: "It covers a lot of material, and various subsets of the book may be used - as proposed by the authors - for different course offerings, from undergraduate to advanced graduate levels, as well as a reference for practitioners ... . Bibliographical notes (usually very good) and exercises are included at the end of each chapter. ... Summing up, this is a good and useful book on a very important topic ... ." (Haim Kilov, Zentralblatt MATH, Vol. 1243, 2012) "This software engineering book introduces software specifications. It presents basic mathematics typically used in formal methods and describes various existing formal specification languages and methods. It also demonstrates how to write specifications using examples taken from real-life software systems. ... Each chapter has exercises, bibliographic notes, and a list of references. ... Courses that cover software specifications can use either specific chapters or the complete text. The book can also serve as a reference on software specifications." (Maulik A. Dave, ACM Computing Reviews, February, 2012)