Rigorous development processes aim to be effective in developing critical systems, especially if failures can have catastrophic consequences for humans and the environment. Such processes generally rely on formal methods, which can guarantee, thanks to their mathematical foundation, model preciseness, and properties assurance. However, they are rarely adopted in practice. In this paper, we report our experience in using the Abstract State Machine formal method and the ASMETA framework in developing a prototype of the control software of the MVM (Mechanical Ventilator Milano), a mechanical lung ventilator that has been designed, successfully certified, and deployed during the COVID-19 pandemic. Due to time constraints and lack of skills, no formal method was applied for the MVM project. However, we here want to assess the feasibility of developing (part of) the ventilator by using a formal method-based approach. Our development process starts from a high-level formal specification of the system to describe the MVM main operation modes. Then, through a sequence of refined models, all the other requirements are captured, up to a level in which a C++ implementation of a prototype of the MVM controller is automatically generated from the model, and tested. Along the process, at each refinement level, different model validation and verification activities are performed, and each refined model is proved to be a correct refinement of the previous level. By means of the MVM case study, we evaluate the effectiveness and usability of our formal approach.
翻译:严格的发展进程旨在有效地开发关键系统,特别是如果失败可能对人类和环境产生灾难性后果,特别是如果失败会对人类和环境产生灾难性后果,这种进程一般依赖正式方法,这些方法由于其数学基础、模型精确度和属性保证而能够保证正规方法,但在实践中却很少采用;在本文件中,我们报告我们使用抽象国家机器正规方法和ASMETA框架开发MVM(机械通风机米兰诺)控制软件原型的经验,MVM(机械通风机米兰诺)是一个机械式的肺通风机,在COVID-19大流行病期间设计、成功核证和部署。由于时间限制和缺乏技能,没有为MMVM项目采用正式方法保证,但是,我们这里希望通过使用正式方法方法评估开发(部分)通风器的可行性。我们的发展进程从系统的高级别正式规格开始,以描述MVMVM的主要操作模式。随后,通过一系列精细的模型,将所有其他要求都收集到一个水平,即我们模型MVMM控制器模型原型的C+执行水平,在每种模式的改进过程中,将自动地进行改进和测试。