Review by Choice Review
Software verification and validation are conducted to help ensure that programs perform correctly. This discipline is generally taught from perspectives such as system testing, functional testing, acceptance testing, and real-time testing. While this book's subtitle indicates a "hands-on approach," it really takes a formal mathematical approach to describing software verification. As Laski and Stanley (both, SofTools Inc.) state, "if we cannot define a mathematical model for the problem at hand, we really do not know what we are talking about." Thus, readers of this work should be comfortable with formal mathematics, including definitions, proofs, and advanced algebra. Topics include semantic analysis, top-down refinement, program correctness, mathematical induction, testing programs with and without loops, black-box testing, boundary analysis, static analysis, program parse and syntax trees, program representation and dependencies, signature anomalies, and dynamic analysis. Each of the nine chapters ends with exercises and a small bibliography. The book includes plenty of diagrams and figures, and it explains verification concepts with examples. This work is useful as a complement to hands-on testing books to detail the mathematical foundations of software verification. Summing Up: Recommended. Upper-division undergraduates through professionals. H. J. Bender Stratford University
Copyright American Library Association, used with permission.
Review by Choice Review