A Methodology for Developing a Verifiable Aircraft Engine Controller from Formal Requirements

10/18/2021
by   Matt Luckcuck, et al.
0

Verification of complex, safety-critical systems is a significant challenge. Manual testing and simulations are often used, but are only capable of exploring a subset of the system's reachable states. Formal methods are mathematically-based techniques for the specification and development of software, which can provide proofs of properties and exhaustive checks over a system's state space. In this paper, we present a formal requirements-driven methodology, applied to a model of an aircraft engine controller that has been provided by our industrial partner. Our methodology begins by formalising the controller's natural-language requirements using the (pre-existing) Formal Requirements Elicitation Tool (FRET), iteratively, in consultation with our industry partner. Once formalised, FRET can automatically translate the requirements to enable their verification alongside a Simulink model of the aircraft engine controller; the requirements can also guide formal verification using other approaches. These two parallel streams in our methodology seek to combine the results from formal requirements elicitation, classical verification approaches, and runtime verification; to support the verification of aerospace systems modelled in Simulink, from the requirements phase through to execution. Our methodology harnesses the power of formal methods in a way that complements existing verification techniques, and supports the traceability of requirements throughout the verification process. This methodology streamlines the process of developing verifiable aircraft engine controllers, by ensuring that the requirements are formalised up-front and useable during development. In this paper we give an overview of (FRET), describe our methodology and work to-date on the formalisation and verification of the requirements, and outline future work using our methodology.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
12/01/2020

Another Tool in the Box: Why use Formal Methods for Autonomous Systems?

Formal Methods are mathematically-based techniques for software design a...
research
12/08/2021

FRETting about Requirements: Formalised Requirements for an Aircraft Engine Controller

[Context motivation] Eliciting requirements that are detailed and lo...
research
07/17/2018

Formal Verification of a Programmable Hypersurface

A metasurface is a surface that consists of artificial material, called ...
research
09/03/2022

Negative Selection Approach to support Formal Verification and Validation of BlackBox Models' Input Constraints

Generating unsafe sub-requirements from a partitioned input space to sup...
research
04/07/2020

Compositional Formal Analysis Based on Conventional Engineering Models

Applications of formal methods for state space exploration have been suc...
research
09/28/2022

A Framework for Formal Verification of DRAM Controllers

The large number of recent JEDEC DRAM standard releases and their increa...

Please sign up or login with your details

Forgot password? Click here to reset