Software Verification and Analysis: An Integrated, Hands-On Approach

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

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.

Author(s): William Stanley, Janusz Laski (auth.)
Edition: 1
Publisher: Springer-Verlag London
Year: 2009

Language: English
Pages: 234
Tags: Software Engineering/Programming and Operating Systems; Software Engineering; Programming Techniques

Front Matter....Pages i-xviii
Front Matter....Pages 1-1
Why Not Write Correct Software the First Time?....Pages 1-14
How to Prove a Program Correct: Programs Without Loops....Pages 39-61
How to Prove a Program Correct: Iterative Programs....Pages 63-79
Prepare Test for Any Implementation: Black-Box Testing....Pages 81-99
Front Matter....Pages 1-1
Intermediate Program Representation....Pages 103-123
Program Dependencies....Pages 125-142
What Can One Tell About a Program Without Its Execution: Static Analysis....Pages 143-169
Front Matter....Pages 1-1
Is There a Bug in the Program? Structural Program Testing....Pages 173-202
Dynamic Program Analysis....Pages 203-219
Back Matter....Pages 221-224