A self-study introduction for experienced software developers, explaining why using formal techniques to ensure correctness is a good idea, even in the context of tight deadlines and budgets. The orientation is strictly practical, with no consideration of the underlying theories or the mathematical justifications. Includes a removable laminated reference card. Annotation copyright Book News, Inc. Portland, Or.
Demonstrates how formal mathematical methods of proving correctness can help decrease the incidence of design errors (``bugs'') in software development. While all the techniques described here have a rigorous mathematical foundation, it is omitted in favor of emphasizing practical applications.