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.
翻译:复杂、安全关键系统的核查是一项重大挑战。 人工测试和模拟经常被使用,但只能探索系统可达状态的一组部分。 正式方法是基于数学的软件规格和开发技术,可以提供性质证明和系统国家空间的彻底检查。 在本文件中,我们提出了一个由正式要求驱动的方法,适用于由我们的工业伙伴提供的飞机发动机控制器模型。我们的方法始于正式确定控制器的自然语言要求,与我们的工业伙伴协商,迭代地使用(原已存在的)正式的Eliucation 工具(FRET 工具 ) 。一旦正规化后,FRET可以自动翻译这些要求,以便能够与飞机发动机控制器的Simmlink模型一起进行核查;这些要求还可以用其他方法指导正式的核查。 这两种平行的方法试图将正式要求、典型的核查方法和运行时间的核查结果结合起来; 支持Simmlink模式的航空系统核查,从需求阶段到执行阶段,以迭接方式进行。 我们的方法利用正式方法的概貌方法来进行核查,确保现有核查方法的核查方法的改进。