论文标题
安全工程师的手动工作较少:采用安全模式的自动安全推理
Less Manual Work for Safety Engineers: Towards an Automated Safety Reasoning with Safety Patterns
论文作者
论文摘要
安全 - 关键系统的发展需要控制可能造成伤害的危害。为此,安全工程师在开发阶段依靠建筑解决方案,即安全监视器,选民和监管机构,例如安全模式。这些模式的目的是控制可能触发危害的(确定)故障。安全模式可以通过增加系统的冗余来控制此类故障。当前,在目标系统的哪个部分使用哪种模式来控制哪种危险的原因主要是以文本形式或模型(例如GSN模型)进行记录,并且对自动化的支持有限。本文提议使用逻辑编程引擎来进行有关系统安全的自动推理。我们提出了一种针对嵌入式系统安全的特定领域语言,并指定安全工程师用来部署安全模式(例如何时使用安全显示器或看门狗)的脱节逻辑程序推理原理。我们的机械实现了两种类型的自动安全推理:(1)识别哪些危害可以受到控制,哪些危害无法通过现有的安全模式控制; (2)可以在系统的哪个地方使用哪些模式来控制潜在危害。最后,我们将机械应用于从汽车域中取出的两个示例:自适应巡航控制系统和电池管理系统。
The development of safety-critical systems requires the control of hazards that can potentially cause harm. To this end, safety engineers rely during the development phase on architectural solutions, called safety patterns, such as safety monitors, voters, and watchdogs. The goal of these patterns is to control (identified) faults that can trigger hazards. Safety patterns can control such faults by e.g., increasing the redundancy of the system. Currently, the reasoning of which pattern to use at which part of the target system to control which hazard is documented mostly in textual form or by means of models, such as GSN-models, with limited support for automation. This paper proposes the use of logic programming engines for the automated reasoning about system safety. We propose a domain-specific language for embedded system safety and specify as disjunctive logic programs reasoning principles used by safety engineers to deploy safety patterns, e.g., when to use safety monitors, or watchdogs. Our machinery enables two types of automated safety reasoning: (1) identification of which hazards can be controlled and which ones cannot be controlled by the existing safety patterns; and (2) automated recommendation of which patterns could be used at which place of the system to control potential hazards. Finally, we apply our machinery to two examples taken from the automotive domain: an adaptive cruise control system and a battery management system.