

Formal Methods for Software Engineering by Markus Roggenbach
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
- Exploresvarious 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
-
Information and Randomness
-
Universal Artificial Intelligence
-
Interactive Theorem Proving and Program Development
-
Graphs and Algorithms in Communication Networks
-
Computable Analysis
-
Models of Massive Parallelism
-
Structural Complexity I
-
The Resolution Calculus
-
Models of Computation
-
Dissemination of Information in Optical Networks:
-
A Practical Theory of Reactive Systems
-
Petri Net Synthesis
-
Grammatical Picture Generation
-
Temporal Logic and State Systems
-
Algorithmics for Hard Problems
-
Simulation Algorithms for Computational Systems Biology
-
Public-Key Cryptography
-
Communication Complexity and Parallel Computing
-
Boolean Functions and Computation Models
-
Verification of Reactive Systems
-
Theoretical Computer Science
-
Introduction to Circuit Complexity
-
Elements of Finite Model Theory
-
The Parametric Lambda Calculus
-
The Complexity Theory Companion
-
Introduction to Process Algebra
-
DNA Computing
-
Abstract Computing Machines
-
Design and Analysis of Randomized Algorithms
-
Dissemination of Information in Communication Networks
-
Complexity Theory and Cryptology
-
Parsing Schemata
| SKU | Unavailable |
| ISBN 13 | |
| ISBN 10 | |
| Title | Formal Methods for Software Engineering |
| Author | Markus Roggenbach |
| Series | |
| Condition | Unavailable |
| Binding Type | |
| Publisher | |
| Year published | |
| Number of pages | |
| Cover note | Book picture is for illustrative purposes only, actual binding, cover or edition may vary. |
| Note | Unavailable |
View All Editions
Applied Filters (0)
Sort by:
Loading editions...
































