Formal Methods for Software Engineering

Formal Methods for Software Engineering

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


Formal Methods for Discrete-Time Dynamical Systems

Formal Methods for Discrete-Time Dynamical Systems

Author: Calin Belta

Publisher: Springer

Published: 2017-03-08

Total Pages: 291

ISBN-13: 331950763X

DOWNLOAD EBOOK

This book bridges fundamental gaps between control theory and formal methods. Although it focuses on discrete-time linear and piecewise affine systems, it also provides general frameworks for abstraction, analysis, and control of more general models. The book is self-contained, and while some mathematical knowledge is necessary, readers are not expected to have a background in formal methods or control theory. It rigorously defines concepts from formal methods, such as transition systems, temporal logics, model checking and synthesis. It then links these to the infinite state dynamical systems through abstractions that are intuitive and only require basic convex-analysis and control-theory terminology, which is provided in the appendix. Several examples and illustrations help readers understand and visualize the concepts introduced throughout the book.


Formal Engineering for Industrial Software Development

Formal Engineering for Industrial Software Development

Author: Shaoying Liu

Publisher: Springer Science & Business Media

Published: 2013-03-09

Total Pages: 410

ISBN-13: 3662072874

DOWNLOAD EBOOK

In any serious engineering discipline, it would be unthinkable to construct a large system without having a precise notion of what is to be built and without verifying how the system is expected to function. Software engineering is no different in this respect. Formal methods involve the use of mathematical notation and calculus in software development; such methods are difficult to apply to large-scale systems with practical constraints (e.g., limited developer skills, time and budget restrictions, changing requirements). Here Liu claims that formal engineering methods may bridge this gap. He advocates the incorporation of mathematical notation into the software engineering process, thus substantially improving the rigor, comprehensibility and effectiveness of the methods commonly used in industry. This book provides an introduction to the SOFL (Structured Object-Oriented Formal Language) method that was designed and industry-tested by the author. Written in a style suitable for lecture courses or for use by professionals, there are numerous exercises and a significant real-world case study, so the readers are provided with all the knowledge and examples needed to successfully apply the method in their own projects.


Formal Methods in Systems Engineering

Formal Methods in Systems Engineering

Author: Peter Ryan

Publisher: Springer Science & Business Media

Published: 2012-12-06

Total Pages: 204

ISBN-13: 1447119754

DOWNLOAD EBOOK

As computer technology is used to control critical systems to an increasing degree, it is vital that the methods for developing and understanding these systems are substantially improved. The mathematical and scientific foundations currently used are extremely limited which means that their correctness and reliability cannot be ensured to an acceptable level. Systems engineering needs to become a fully fledged scientific discipline and formal methods, which are characterised by their firm mathematical foundations, are playing a vital role in achieving this transition. This volume is based on the proceedings of the Formal Methods Workshop (FM91), held in Drymen, Scotland, 24-27 September 1991. This was the second workshop sponsored by the Canadian and US governments to address the role of formal methods in the development of digital systems. Traditionally, formal methods have evolved in isolation from more conventional approaches, and one of the aims of this workshop was to emphasise the benefits of integrating the two areas. The workshop concentrated on the themes of quality assurance, design methods and mathematical modelling techniques. Particular emphasis was given to safety and security applications. Among the topics covered in this volume are: what is a formal method?; social research on formal methods; current quality assurance methods and formal methods; a pragmatic approach to validation; integrating methods in practice; composition of descriptions; and topics in large program formal development. Formal Methods in Systems Engineering provides an overview of many of the major approaches to formal methods and the benefits which can result from them. It is relevant to academic and industrial researchers, industrial practitioners and government workers with an interest in certification.


Automated Theorem Proving in Software Engineering

Automated Theorem Proving in Software Engineering

Author: Johann M. Schumann

Publisher: Springer Science & Business Media

Published: 2013-06-29

Total Pages: 252

ISBN-13: 3662226464

DOWNLOAD EBOOK

Growing demands for the quality, safety, and security of software can only be satisfied by the rigorous application of formal methods during software design. This book methodically investigates the potential of first-order logic automated theorem provers for applications in software engineering. Illustrated by complete case studies on protocol verification, verification of security protocols, and logic-based software reuse, this book provides techniques for assessing the prover's capabilities and for selecting and developing an appropriate interface architecture.


Software Engineering and Formal Methods. SEFM 2020 Collocated Workshops

Software Engineering and Formal Methods. SEFM 2020 Collocated Workshops

Author: Loek Cleophas

Publisher: Springer Nature

Published: 2021-01-16

Total Pages: 344

ISBN-13: 3030672204

DOWNLOAD EBOOK

This volume constitutes the revised selected papers from the three workshops collocated with the 18th International Conference on Software Engineering and Formal Methods, SEFM 2020, held in Amsterdam, The Netherlands, in September 2020. The 15 full papers presented together with 8 short papers in this volume were carefully reviewed and selected from a total of 35 submissions. The contributions that are collected in this volume have been selected from the presentations at the following workshops: ASYDE 2020: Second International Workshop on Automated and Verifiable Software System Development; CIFMA 2020: Second International Workshop on Cognition: Interdisciplinary Foundations, Models and Applications; and CoSim-CPS 2020: Fourth International Workshop on Formal Co-Simulation of Cyber-Physical Systems. Due to the Corona pandemic this event was held virtually.


Formal Methods in Computer Science

Formal Methods in Computer Science

Author: Jiacun Wang

Publisher: CRC Press

Published: 2019-06-21

Total Pages: 279

ISBN-13: 1498775357

DOWNLOAD EBOOK

This textbook gives students a comprehensive introduction to formal methods and their application in software and hardware specification and verification. It has three parts: The first part introduces some fundamentals in formal methods, including set theory, functions, finite state machines, and regular expressions. The second part focuses on logi


Understanding Formal Methods

Understanding Formal Methods

Author: Jean-Francois Monin

Publisher: Springer Science & Business Media

Published: 2012-12-06

Total Pages: 288

ISBN-13: 1447100433

DOWNLOAD EBOOK

This is an excellent introduction to formal methods which will bring anyone who needs to know about this important topic up to speed. It is comprehensive, giving the reader all the information needed to explore the field of formal methods in more detail. It offers: a guide to the mathematics required; comprehensive but easy-to-understand introductions to various methods; a run-down of how formal methods can help to develop high-quality systems that come in on time, within budget, and according to requirements.


Formal Methods and Software Engineering

Formal Methods and Software Engineering

Author: Kazuhiro Ogata

Publisher: Springer

Published: 2016-10-31

Total Pages: 503

ISBN-13: 331947846X

DOWNLOAD EBOOK

This book constitutes the refereed proceedings of the 18th International Conference on Formal Engineering Methods, ICFEM 2016, held in Tokyo, Japan, in November 2016. The 27 revised full papers presented together with three invited talks were carefully reviewed and selected from 64 submissions. The conference focuses in all areas related to formal engineering meth-ods, such as verification and validation, software engineering, formal specification and modeling, software security, and software reliability.


Formal Methods in Manufacturing

Formal Methods in Manufacturing

Author: Javier Campos

Publisher: CRC Press

Published: 2014-02-25

Total Pages: 719

ISBN-13: 1466561556

DOWNLOAD EBOOK

Illustrated with real-life manufacturing examples, Formal Methods in Manufacturing provides state-of-the-art solutions to common problems in manufacturing systems. Assuming some knowledge of discrete event systems theory, the book first delivers a detailed introduction to the most important formalisms used for the modeling, analysis, and control of manufacturing systems (including Petri nets, automata, and max-plus algebra), explaining the advantages of each formal method. It then employs the different formalisms to solve specific problems taken from today’s industrial world, such as modeling and simulation, supervisory control (including deadlock prevention) in a distributed and/or decentralized environment, performance evaluation (including scheduling and optimization), fault diagnosis and diagnosability analysis, and reconfiguration. Containing chapters written by leading experts in their respective fields, Formal Methods in Manufacturing helps researchers and application engineers handle fundamental principles and deal with typical quality goals in the design and operation of manufacturing systems.