Formal Methods for Software Engineering Languages, Methods, Application Domains /

Roggenbach, Markus.

Formal Methods for Software Engineering Languages, Methods, Application Domains / [electronic resource] : by Markus Roggenbach, Antonio Cerone, Bernd-Holger Schlingloff, Gerardo Schneider, Siraj Ahmed Shaikh. - 1st ed. 2022. - XXVIII, 524 p. 47 illus., 12 illus. in color. online resource. - Texts in Theoretical Computer Science. An EATCS Series, 1862-4502 . - Texts in Theoretical Computer Science. An EATCS Series, .

1 Formal Methods -- Part I Languages: 2 Logics for Software Engineering -- 3 The Process Algebra CSP -- Part II Methods: 4 Algebraic Specification in CASL -- 5 Specification-Based Testing -- Part III Application Domains: 6 Specification and Verification of Normative Documents -- 7 Formal Methods for Human-Computer Interaction -- 8 Formal Verification of Security Protocols -- Part IV Wrapping up: 9 Origins and Development of Formal Methods -- Authors' Conclusion -- Appendix A Syntax of the Logics in this Book -- Appendix B Language Definition of CSP -- Appendix C Concrete CASL Syntax.

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.

9783030388003

10.1007/978-3-030-38800-3 doi


Computer science.
Software engineering.
Computer science--Mathematics.
Engineering mathematics.
Engineering--Data processing.
Application software.
Theory of Computation.
Software Engineering.
Computer Science Logic and Foundations of Programming.
Symbolic and Algebraic Manipulation.
Mathematical and Computational Engineering Applications.
Computer and Information Systems Applications.

QA75.5-76.95

004.0151
© 2024 IIIT-Delhi, library@iiitd.ac.in