Formal Methods for Software Engineering

Formal Methods for Software Engineering PDF

Author: Markus Roggenbach

Publisher: Springer Nature

Published: 2022-06-22

Total Pages: 538

ISBN-13: 303038800X

DOWNLOAD EBOOK →

Software programs are formal entities with precise meanings independent of their programmers, so the transition from ideas to programs necessarily involves a formalisation at some point. The first part of this graduate-level introduction to formal methods develops an understanding of what constitutes formal methods and what their place is in Software Engineering. It also introduces logics as languages to describe reasoning and the process algebra CSP as a language to represent behaviours. The second part offers specification and testing methods for formal development of software, based on the modelling languages CASL and UML. The third part takes the reader into the application domains of normative documents, human machine interfaces, and security. Use of notations and formalisms is uniform throughout the book. Topics and features: Explains foundations, and introduces specification, verification, and testing methods Explores various application domains Presents realistic and practical examples, illustrating concepts Brings together contributions from highly experienced educators and researchers Offers modelling and analysis methods for formal development of software Suitable for graduate and undergraduate courses in software engineering, this uniquely practical textbook will also be of value to students in informatics, as well as to scientists and practical engineers, who want to learn about or work more effectively with formal theories and methods. Markus Roggenbach is a Professor in the Dept. of Computer Science of Swansea University. Antonio Cerone is an Associate Professor in the Dept. of Computer Science of Nazarbayev University, Nur-Sultan. Bernd-Holger Schlingloff is a Professor in the Institut für Informatik of Humboldt-Universität zu Berlin. Gerardo Schneider is a Professor in the Dept. of Computer Science and Engineering of University of Gothenburg. Siraj Ahmed Shaikh is a Professor in the Institute for Future Transport and Cities of Coventry University. The companion site for the book offers additional resources, including further material for selected chapters, prepared lab classes, a list of errata, slides and teaching material, and virtual machines with preinstalled tools and resources for hands-on experience with examples from the book. The URL is: https://sefm-book.github.io

Modern Formal Methods and Applications

Modern Formal Methods and Applications PDF

Author: Hossam A. Gabbar

Publisher: Springer Science & Business Media

Published: 2006-06-28

Total Pages: 217

ISBN-13: 140204223X

DOWNLOAD EBOOK →

Formal methods are a robust approach for problem solving. It is based on logic and algebraic methods where problems can be formulated in a way that can help to find an appropriate solution. This book shows the basic concepts of formal methods and highlights modern modifications and enhancements to provide a more robust and efficient problem solving tool. Applications are presented from different disciplines such as engineering where the operation of chemical plants is synthesized using formal methods. Computational biology becomes easier and systematic using formal methods. Also, hardware compilation and systems can be managed using formal methods. This book will be helpful for both beginners and experts to get insights and experience on modern formal methods by viewing real applications from different domains.

Formal Verification of Object-Oriented Software

Formal Verification of Object-Oriented Software PDF

Author: Bernhard Beckert

Publisher: Springer

Published: 2012-07-11

Total Pages: 259

ISBN-13: 3642317626

DOWNLOAD EBOOK →

This book presents the thoroughly refereed post-conference proceedings of the International Conference on Formal Verification of Object-Oriented Software, FoVeOOS 2011, held in Turin, Italy, in October 2011 – organised by COST Action IC0701. The 10 revised full papers presented together with 5 invited talks were carefully reviewed and selected from 19 submissions. Formal software verification has outgrown the area of academic case studies, and industry is showing serious interest. The logical next goal is the verification of industrial software products. Most programming languages used in industrial practice are object-oriented, e.g. Java, C++, or C#. FoVeOOS 2011 aimed to foster collaboration and interactions among researchers in this area.

Concise Guide to Formal Methods

Concise Guide to Formal Methods PDF

Author: Gerard O'Regan

Publisher: Springer

Published: 2017-08-08

Total Pages: 322

ISBN-13: 3319640216

DOWNLOAD EBOOK →

This invaluable textbook/reference provides an easy-to-read guide to the fundamentals of formal methods, highlighting the rich applications of formal methods across a diverse range of areas of computing. Topics and features: introduces the key concepts in software engineering, software reliability and dependability, formal methods, and discrete mathematics; presents a short history of logic, from Aristotle’s syllogistic logic and the logic of the Stoics, through Boole’s symbolic logic, to Frege’s work on predicate logic; covers propositional and predicate logic, as well as more advanced topics such as fuzzy logic, temporal logic, intuitionistic logic, undefined values, and the applications of logic to AI; examines the Z specification language, the Vienna Development Method (VDM) and Irish School of VDM, and the unified modelling language (UML); discusses Dijkstra’s calculus of weakest preconditions, Hoare’s axiomatic semantics of programming languages, and the classical approach of Parnas and his tabular expressions; provides coverage of automata theory, probability and statistics, model checking, and the nature of proof and theorem proving; reviews a selection of tools available to support the formal methodist, and considers the transfer of formal methods to industry; includes review questions and highlights key topics in every chapter, and supplies a helpful glossary at the end of the book. This stimulating guide provides a broad and accessible overview of formal methods for students of computer science and mathematics curious as to how formal methods are applied to the field of computing.

Applications of Formal Methods

Applications of Formal Methods PDF

Author: Michael Gerard Hinchey

Publisher:

Published: 1995

Total Pages: 480

ISBN-13:

DOWNLOAD EBOOK →

This collection of case studies contains contributions illustrating the application of formal methods to real-life problems with industrial relevance.

Formal Methods

Formal Methods PDF

Author: Flemming Nielson

Publisher: Springer

Published: 2019-07-16

Total Pages: 160

ISBN-13: 3030051560

DOWNLOAD EBOOK →

This textbook is an introduction to the use of formal methods ranging from semantics of key programming constructs to techniques for the analysis and verification of programs. The authors use program graphs as the mechanism for representing the control structure of programs in order to find a balance between generality and conceptual complexity. The early chapters on program graphs and the Guarded Commands language are sufficient introduction for most readers to then enjoy a plug-and-play approach to the remaining chapters. These explain formal methods for analysing the behaviour of programs in various ways ranging from verification, via program analysis and language-based security, to model checking. The remaining chapters present language extensions with procedures and concurrency and cover their semantics. The book is suitable for advanced undergraduate and graduate courses in software development, and the text is supported throughout with exercises of varying grades of difficulty. The authors have developed an online learning environment that allows students to create examples beyond those covered in the main text, and in the book appendices they present programming projects aimed at implementing central parts of the development using the functional language F#.

Formal Methods for Industrial Critical Systems

Formal Methods for Industrial Critical Systems PDF

Author: Stefania Gnesi

Publisher: John Wiley & Sons

Published: 2012-11-27

Total Pages: 256

ISBN-13: 1118459873

DOWNLOAD EBOOK →

Today, formal methods are widely recognized as an essential step in the design process of industrial safety-critical systems. In its more general definition, the term formal methods encompasses all notations having a precise mathematical semantics, together with their associated analysis methods, that allow description and reasoning about the behavior of a system in a formal manner. Growing out of more than a decade of award-winning collaborative work within the European Research Consortium for Informatics and Mathematics, Formal Methods for Industrial Critical Systems: A Survey of Applications presents a number of mainstream formal methods currently used for designing industrial critical systems, with a focus on model checking. The purpose of the book is threefold: to reduce the effort required to learn formal methods, which has been a major drawback for their industrial dissemination; to help designers to adopt the formal methods which are most appropriate for their systems; and to offer a panel of state-of-the-art techniques and tools for analyzing critical systems.

Formal Methods: State of the Art and New Directions

Formal Methods: State of the Art and New Directions PDF

Author: Paul Boca

Publisher: Springer

Published: 2014-10-20

Total Pages: 0

ISBN-13: 9781447157458

DOWNLOAD EBOOK →

Through fundamental contributions from leading researchers, this volume describes the use of formal modeling methods in the areas of requirements, design and validation. The self-contained chapters provide readers with rich background information and a diverse breadth of specialist material.

Industrial Applications of Formal Methods to Model, Design and Analyze Computer Systems

Industrial Applications of Formal Methods to Model, Design and Analyze Computer Systems PDF

Author: Dan Craigen

Publisher: William Andrew

Published: 2012-12-02

Total Pages: 318

ISBN-13: 1437728170

DOWNLOAD EBOOK →

Formal methods are mathematically-based techniques, often supported by reasoning tools, that can offer a rigorous and effective way to model, design and analyze computer systems. The purpose of this study is to evaluate international industrial experience in using formal methods. The cases selected are representative of industrial-grade projects and span a variety of application domains. The study had three main objectives: · To better inform deliberations within industry and government on standards and regulations; · To provide an authoritative record on the practical experience of formal methods to date; and À To suggest areas where future research and technology development are needed. This study was undertaken by three experts in formal methods and software engineering: Dan Craigen of ORA Canada, Susan Gerhart of Applied Formal Methods, and Ted Ralston of Ralston Research Associates. Robin Bloomfield of Adelard was involved with the Darlington Nuclear Generating Station Shutdown System case. Support for this study was provided by organizations in Canada and the United States. The Atomic Energy Control Board of Canada (AECB) provided support for Dan Craigen and for the technical editing provided by Karen Summerskill. The U.S. Naval Research Laboratories (NRL), Washington, DC, provided support for all three authors. The U.S. National Institute of Standards and Technology (NIST) provided support for Ted Ralston.

Leveraging Applications of Formal Methods, Verification and Validation

Leveraging Applications of Formal Methods, Verification and Validation PDF

Author: Tiziana Margaria

Publisher: Springer Nature

Published: 2021-10-11

Total Pages: 505

ISBN-13: 3030891593

DOWNLOAD EBOOK →

This book constitutes contributions of the ISoLA 2021 associated events. Altogether, ISoLA 2021 comprises contributions from the proceedings originally foreseen for ISoLA 2020 collected in 4 volumes, LNCS 12476: Verification Principles, LNCS 12477: Engineering Principles, LNCS 12478: Applications, and LNCS 12479: Tools and Trends. The contributions included in this volume were organized in the following topical sections: 6th International School on Tool-Based Rigorous Engineering of Software Systems; Industrial Track; Programming: What is Next; Software Verification Tools; Rigorous Engineering of Collective Adaptive Systems.