Software Verification and Analysis

An Integrated, Hands-On Approach

Authors: Laski, Janusz, Stanley, William

  • Emphasis is given to the integration of the most important aspects of software verification – program proving, static analysis and testing, all in one book
  • Provides tool support for each of the verification techniques
  • Offers readers the ability to test their own static analysis ideas using STAD 4.0
  • Presents novel and not generally known data testing techniques supported by the testing tool
  • Focuses on the practical applications
see more benefits

Buy this book

eBook $69.99
price for USA (gross)
  • ISBN 978-1-84882-240-5
  • Digitally watermarked, DRM-free
  • Included format: PDF, EPUB
  • ebooks can be used on all reading devices
  • Immediate eBook download after purchase
Hardcover $89.95
price for USA
  • ISBN 978-1-84882-239-9
  • with online files
  • Free shipping for individuals worldwide
  • Usually dispatched within 3 to 5 business days.
Softcover $89.95
price for USA
  • ISBN 978-1-84996-829-4
  • Free shipping for individuals worldwide
  • Usually dispatched within 3 to 5 business days.
About this Textbook

This book advocates the integrated and tool supported use of all available verification methods to improve software correctness. The following major software verification techniques and their supporting tools, based on sound mathematical models, are discussed:

• Correctness by construction, using the Vienna Development Method-Specification Language (VDM-SL) and its supporting CSK’s Toolbox.

• Static program analysis supported by the PRAXIS’ SPARK toolset and SofTools’ System for Testing And Debugging (STAD 4.0).

• Program proving supported by SPARK.

• Dynamic program analysis supported by STAD.

VDM-SL Toolbox and SPARK illustrate, respectively, the correctness by construction and program proving paradigms. The author demonstrates that while both methods are powerful, errors are inevitable and detecting these may be more difficult than in the case of an informally developed program. Consequently, error detection must be an integral part of the entire life cycle of a programming project. Black-Box (specification based) and Structural (code based) testing are covered and supported by STAD (including 5 testing criteria). STAD also features a quite powerful descriptive and proscriptive static analysis.

Software engineers, students and computer scientists will find that the book provides the reader with a comprehensive understanding of software verification issues. STAD’s outputs allow the user to implement and test their own ideas.

The most recent version of STAD can be downloaded from http://www.stadtools.com.

Reviews

From the reviews:

"Software verification is a set of important activities in the software development process that leads to determining whether the software product fulfills requirements. … It could also be very useful to software engineering researchers and practitioners. The quality of the book is enhanced by the wide range of examples that illustrate various problems and offer appropriate solutions. The physical quality of the book is extremely high." (M. Ivanovic, ACM Computing Reviews, June, 2009)

“Software verification and validation are conducted to help ensure that programs perform correctly. … While this book’s subtitle indicates a ‘hands-on approach,’ it really takes a formal mathematical approach to describing software verification. … 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, Choice, Vol. 47 (3), November, 2009)

Table of contents (9 chapters)

  • Why Not Write Correct Software the First Time?

    Laski, Janusz (et al.)

    Pages 1-14

  • Dynamic Program Analysis

    Laski, Janusz (et al.)

    Pages 1-17

  • How to Prove a Program Correct: Programs Without Loops

    Laski, Janusz (et al.)

    Pages 39-61

  • How to Prove a Program Correct: Iterative Programs

    Laski, Janusz (et al.)

    Pages 63-79

  • Prepare Test for Any Implementation: Black-Box Testing

    Laski, Janusz (et al.)

    Pages 81-99

Buy this book

eBook $69.99
price for USA (gross)
  • ISBN 978-1-84882-240-5
  • Digitally watermarked, DRM-free
  • Included format: PDF, EPUB
  • ebooks can be used on all reading devices
  • Immediate eBook download after purchase
Hardcover $89.95
price for USA
  • ISBN 978-1-84882-239-9
  • with online files
  • Free shipping for individuals worldwide
  • Usually dispatched within 3 to 5 business days.
Softcover $89.95
price for USA
  • ISBN 978-1-84996-829-4
  • Free shipping for individuals worldwide
  • Usually dispatched within 3 to 5 business days.
Loading...

Bibliographic Information

Bibliographic Information
Book Title
Software Verification and Analysis
Book Subtitle
An Integrated, Hands-On Approach
Authors
Copyright
2009
Publisher
Springer-Verlag London
Copyright Holder
Springer-Verlag London
eBook ISBN
978-1-84882-240-5
DOI
10.1007/978-1-84882-240-5
Hardcover ISBN
978-1-84882-239-9
Softcover ISBN
978-1-84996-829-4
Edition Number
1
Number of Pages
XVIII, 234
Number of Illustrations and Tables
62 b/w illustrations
Topics