• Corpus ID: 211146636

Formal Methods: From Academia to Industrial Practice. A Travel Guide

  title={Formal Methods: From Academia to Industrial Practice. A Travel Guide},
  author={Marieke Huisman and Dilian Gurov and Alexander Malkis},
For many decades, formal methods are considered to be the way forward to help the software industry to make more reliable and trustworthy software. However, despite this strong belief and many individual success stories, no real change in industrial software development seems to be occurring. In fact, the software industry itself is moving forward rapidly, and the gap between what formal methods can achieve and the daily software-development practice does not appear to be getting smaller (and… 

Systematic Evaluation and Usability Analysis of Formal Tools for Railway System Design

A systematic evaluation of formal tools used for railway system design shows that despite the poor graphical interfaces, usability and maturity of the tools are not major problems, as claimed by contributions from the literature.

Systematic Evaluation and Usability Analysis of Formal Methods Tools for Railway Signaling System Design

A systematic evaluation of formal methods tools used for the early design of railway systems is considered and it shows that despite the poor graphical interfaces, usability and maturity of the tools are not major problems, as claimed by contributions from the literature.

Empirical Formal Methods: Guidelines for Performing Empirical Studies on Formal Methods

This paper defines nine different study strategies and discusses for each their crucial characteristics, the difficulties of applying them to formal methods and tools, typical threats to validity, their maturity in formal methods, pointers to external guidelines, and pointers to studies in other fields.

A Review of Formal Methods applied to Machine Learning

A comprehensive and detailed review of the formal methods developed so far for machine learning, highlighting their strengths and limitations and offering perspectives for future research directions towards the formal verification of machine learning systems.

Simplification of Numeric Variables for PLC Model Checking

This paper proposes an approach to discretize PLC input numeric variables (modelled as non-deterministic), which is complemented with a set of transformations on the control-flow automaton that models the PLC program so that no extra behaviours are added.

Creating new Program Proofs by Combining Abductive and Deductive Reasoning

The abduction system that creates new formal specifications by leveraging a small set of inspiring artefacts to augment a subset of candidate problems by employing knowledge graphs to represent the raw data, discovering latent similarities between graphs using a graph-matching process.

The 2020 Expert Survey on Formal Methods

The survey addresses 30 questions on the past, present, and future of formal methods in research, industry, and education and presents a family picture of key actors in formal methods.

Upcycling Formal Specifications for Similar Implementations with Arís

The Arís system for creating new formal specifications for source code by transferring existing specifications to similar implementations is described and the code graphs underlying its operation, graph matching supports retrieval, and pattern completion enables transfer of specifications to new implementations.

Formal Methods for Industrial Critical Systems: 25th International Conference, FMICS 2020, Vienna, Austria, September 2–3, 2020, Proceedings

A Survey of Bidding Games on Graphs Guy Avni and Thomas A. Henzinger find that bidding games on graphs have changed in the past decade and are likely to change further in the coming years.



Formal Methods in Industrial Practice - Bridging the Gap (Track Summary)

The gap between what formal methods can achieve, and the daily software development practice does not seem to get smaller (and might even be growing), and the software industry is moving fast forward itself.

Formal Methods

Ten “commandments” are come up with that, if adhered to, will greatly increase a project’s chances for success and are especially recommended for security and safety-critical systems.

High-Level Guidance for Managers Deploying Formal Methods in Their Organisation

Evidence that FM can be successfully used in Industry is presented and a company-specific approach and a more general approach identifies general questions of interest to many companies in various Industry sectors are used.

Formal methods: Practice and experience

The state of the art in the industrial use of formal methods is described, concentrating on their increasing use at the earlier stages of specification and design, by comparing the situation in 2009 with the most significant surveys carried out over the last 20 years.

Formal methods: state of the art and future directions

The state of the art in specification and verification, which includes advances in model checking and theorem proving, is assessed and future directions in fundamental concepts, new methods and tools, integration of methods, and education and technology transfer are outlined.

Use of Formal Methods at Amazon Web Services

Since 2011, engineers at Amazon Web Services have been using formal specification and model checking to help solve difficult design problems in critical systems, finding that subtle bugs can hide in complex concurrent fault-tolerant systems.

Testing or Formal Verification: DO-178C Alternatives and Industrial Experience

The authors describe some of the new objectives and activities in the area of formal methods, explain how these methods may be used instead of testing in a DO-178C context, and summarize the practical experience of Dassault-Aviation and Airbus in successfully applying the new DO- 178C approach.

Formal Methods: Industrial Use from Model to the Code

The B method defines a single notation called Abstract Machine Notation (AMN), which makes it possible to describe these three levels of abstraction: the machines that describe the highest level of specification, the refinements that combine all the intermediate stages between specification and code, and the implementations that define coding.

Foundations of Semantics and Model Checking in a Software Engineering Course

This paper describes how a selection of formal methods were included in a foundational Bachelor- level Software Engineering course, and shows how the basic elements of modeling and programming language semantics are introduced.

A Story About Formal Methods Adoption by a Railway Signaling Manufacturer

This paper reports the story of the introduction of formal methods in the development process of a railway signaling manufacturer and how the choice of a reference formal specification notation and of the related tools has been driven by many external factors related to the specific application domain.