基于形式化系统理论过程分析的安全需求生成方法与流程

文档序号:11251554阅读:279来源:国知局
基于形式化系统理论过程分析的安全需求生成方法与流程

本发明涉及一种安全需求生成方法,特别是一种基于形式化系统理论过程分析的安全需求生成方法。



背景技术:

飞机上的检查单是用来确保飞行机组人员可以在飞机的任何飞行阶段根据检查单来进行飞机的配置操作。传统方法是机组人员按照纸质版检查单来执行检查,容易出现各种差错。尽管航空界一直十分重视标准操作程序和检查单,实际飞行中偏离标准操作程序,忽视检查单的事却时有发生,并由此造成了许多惨痛的事故。就拿检查单来说,经常发生下列情况:忽略检查单程序,遗漏检查单项目,或虽然形式上念过检查单,但忘记项目落实或因种种理由而不执行。电子检查单是电子化的检查单,在多功能显示器上向飞行员显示和提示各类检查项目,机组成员根据提示执行检查,并通过按键记录检查单项目的执行,电子检查单不断响应机组成员的按键操作,随时报告检查单项目的完成状态。随着电子检查单的普及,国内自主研制的宽体飞机也将采用这种新型的电子检查单系统,然而对电子检查单安全需求的研究较少,为了获取电子检查单系统的安全需求,使系统的安全性得到保证,需要一种基于形式化系统理论过程分析的方法提取电子检查单系统的安全需求。



技术实现要素:

本发明所要解决的技术问题是提供一种基于形式化系统理论过程分析的安全需求生成方法。

为解决上述技术问题,本发明所采用的技术方案是:

一种基于形式化系统理论过程分析的安全需求生成方法,其特征在于包含以下步骤:

步骤一:针对需要分析的系统级危险,确定与其对应的系统级安全约束,构建系统的控制结构图;

步骤二:辨识出导致系统危险的不恰当控制,并根据不恰当控制行为制定细化的安全约束;

步骤三:辨识导致不恰当控制行为出现的控制缺陷,即导致系统危险出现的根本原因;

步骤四:对确定的安全约束进行变量的提取与形式化建模,再对这些需求进行验证,将其中冗余或矛盾的需求剔除或修改。

进一步地,所述步骤一中,定义电子检查单的两个系统级危险如下:

h1.飞机上的电子检查单内容不正确;

h2.飞行员没有根据电子检查单对飞机进行操作;

由上述系统级危险,可以得出相应的系统级安全约束:

sc1.要确保飞机上的电子检查单内容的正确性;

sc2.飞行员必须按照电子检查单的提示对飞机进行操作。

进一步地,所述步骤二中,系统的不恰当控制包含:

1)控制器没有提供所需的控制行为,或提供了控制行为却没有被很好的实施;

2)控制器提供了错误的或不安全的控制行为;

3)正确的控制行为出现在错误的时间;

4)正确的控制行为停止的过早或持续过久。

进一步地,所述不安全控制行为制定细化的安全约束包含

sc1:当飞机出现eicas可以感知的异常时,eicas系统必须提示告警信息;

sc2:当飞机出现eicas可以感知的异常时,eicas系统必须提示正确的告警信息;

sc3:当飞机未出现异常时,eicas系统不应提示告警信息;

sc4:当飞机出现eicas可以感知的异常时,eicas系统必须在规定的时间提示告警信息。

进一步地,所述步骤三中,事故的致因包含控制器操作、执行器和被控过程的行为三类。

进一步地,所述步骤三中,控制缺陷包含

cf1.eicas系统发生故障;

cf2.eicas系统中的不恰当的控制算法;

cf3.eicas系统发出的告警信息在传输中丢失;

cf4.显示eicas系统的告警信息的设备显示器失效,不能显示信息;

cf5.传输或显示告警信息有时延;

cf6.机载设备传感器失效,eicas不能获取机载设备的信息。

进一步地,所述步骤四中,形式化建模过程为

监督变量aircraft_state用于指示飞机是否有异常,eicas_sen用于指示eicas能否感知飞机的异常;

项eicas_operate用于指示eicas系统的操作是否正确;

受控变量safety_eicas是根据项和监督变量而定义的,表示eicas系统的安全性;

eicas安全控制系统包含以下集合:

监督变量集合:{aircraft_state,eicas_sen}

受控变量集合:{safety_eicas}

项的集合:{eicas_operate}

与上述集合相关的类型定义:

ty(aircraft_state)={normal,abnormal}

ty(eicas_sen})={can,cannnot}

ty(safety_eicas)={true,false}

ty(eicas_operate)={eicas_alarminfo,eicas_alarmcorrect,eicas_alarmtime}。

进一步地,所述步骤四中,安全需求形式为

sc1:(aircraft_state=abnormalandeicas_sen=can)→eicas_operate.eicas_alarminfo=true;

sc2:(aircraft_state=abnormalandeicas_sen=can)→eicas_operate.eicas_alarmcorrect=true;

sc3:i(aircraft_state=normal)→eicas_operate.eicas_alarminfo=false;

sc4:(aircraft_state=abnormalandeicas_sen=can)→eicas_operate.eicas_alarmtime=true。

本发明与现有技术相比,具有以下优点和效果:

1)stpa危险源识别方法可以辨识出传统的技术无法处理的新的致因因素,提供的引导词保证了分析的完整性,通过识别危险致因,提供指导设计过程所需的信息,可以给软件工程师的设计提供指导以尽量消除或控制这些情况。

2)stpa方法程序化地分析系统的不安全控制行为,得出电子检查单系统的安全需求,降低了安全分析对专家经验的过度依赖,并且从最早的概念设计阶段开始,把安全设计到系统中,是构建更加安全系统最经济有效的方法。

3)运用四变量模型,对自然语言描述的需求进行轻量的、实用的形式化描述与分析,促进形式化技术在航空领域的应用,保障了电子检查单系统安全需求的正确性与一致性。

附图说明

图1是本发明的四变量模型图。

图2是本发明的电子检查单系统控制结构图。

图3是本发明的危险致因示意图。

图4是本发明的项的条件表示意图。

图5是本发明的电子检查单系统中的控制方表格。

图6是本发明的每个控制方对应的uca以及sc的数量表格。

图7是本发明的使用的主要数学符号及其含义示意图。

具体实施方式

下面结合附图并通过实施例对本发明作进一步的详细说明,以下实施例是对本发明的解释而本发明并不局限于以下实施例。

图7所示为说明书所用的主要数学符号及其含义示意图。

如图所示,本发明的一种基于形式化系统理论过程分析的安全需求生成方法,包含以下步骤:

步骤一:针对需要分析的系统级危险,确定与其对应的系统级安全约束,构建系统的控制结构图;

在系统论中,对涌现特性进行控制的方法则是对单一组件的行为以及各个组件之间的交互进行约束。,安全作为系统涌现性是由安全约束来保障的,系统级危险的发生也就意味着系统级的安全约束被违反。因此,除了明确要分析的系统级危险外,还需要确定系统级安全约束,以便在后续分析中确定如何保证该安全约束得以实现。通过构建系统的控制结构来揭示系统内部不同组件的交互过程,以及各个过程之间的关系,为进一步辨识导致系统危险的原因奠定分析基础。需要说明的是,系统的控制结构并不仅包含控制框图所体现的信息,还包含对各个控制过程所进行的描述,如过程模型、控制算法等。

根据民机飞行事故,找出可能导致事故的由电子检查单系统所造成的危险,确定与其对应的系统级安全约束。在构建系统的控制结构图来揭示系统内部的交互过程,以及各个过程之间的关系,为进一步辨识导致系统危险的原因奠定分析基础。在飞机的电子检查单系统运行期间,如果飞行员没有根据检查单内容对飞机进行操作,或者操作错误都将导致安全隐患;而如果电子检查单的内容发生错误,飞行员根据错误的检查单进行操作,则很大程度上会产生飞行事故。根据检查单对飞行安全的影响因素分析,定义电子检查单的两个系统级危险(hazard)如下:

h1.飞机上的电子检查单内容不正确

h2.飞行员没有根据电子检查单对飞机进行操作

由上述系统级危险,可以得出相应的系统级安全约束(safetyconstraints,sc):

sc1.要确保飞机上的电子检查单内容的正确性;

sc2.飞行员必须按照电子检查单的提示对飞机进行操作。

通过对飞机的电子检查单系统的工作原理行进分析,充分掌握其具体工作流程,提取出系统中的控制方如图5的表格所示。

由图5表中的控制方与控制动作,构建出如图2所示的电子检查单系统的控制结构图,图中标“(action)”的为控制动作。

步骤二:辨识出导致系统危险的不恰当控制,并根据不恰当控制行为制定细化的安全约束;

系统的不恰当控制的可分为以下四类:1)控制器没有提供所需的控制行为,或提供了控制行为却没有被很好的实施;2)控制器提供了错误的或不安全的控制行为;3)正确的控制行为出现在错误的时间(过早或过晚);4)正确的控制行为停止的过早或持续过久。这些通用分类仅作为不恰当控制辨识时的参考,针对具体的系统需要具体区分。另外,由于危险分析的主要目的是在事故发生前找出潜在的危险原因并进行预防,因而需要根据辨识出的危险致因——不恰当控制来形成具体的安全约束,以保证系统的安全。

识别有可能导致危险状态的不安全控制。由于航空公司、机组、fms、ecl系统、eicas系统都可以作为控制方,所以导致系统危险状态的不安全控制行为(unsafecontrolaction,uca)将会由这些控制方产生。通过分析这些控制环路,辨识出其中的不安全控制行为,即危险源,得出与之对应的安全约束。

应用该发明共分析出23条不安全控制行为,对应的个数如图6的表格所示。

下面以eicas系统为例,对它的控制行为进行解释。大多数异常检查单都与一个警戒信息(eicasmessage)相对应,所显示的某个eicasmessage表明有一个故障状态,并且提示飞行员选择和完成该检查单。eicas系统的不安全控制行为可分为以下几种:

uca1.飞机出现异常时,eicas系统没有提供告警信息;

uca2.飞机出现异常时,eicas系统提供错误的告警信息;

uca3.飞机未出现异常时,eicas系统提供告警信息;

uca4.飞机出现异常时,eicas系统过晚提供告警信息;

其中uca1产生的原因是文中第一节所述的第一种情况,即没有提供控制行为;uca2和uca3属于第二种,提供错误的控制行为;uca4属于第三种,在不正确的时间提供控制行为;由于eicas系统提示告警信息信息是离散事件,所以不存在第四种危险控制,停止过快或过慢。

与上述不安全控制行为对应的细化后的安全约束表述如下:

sc1:当飞机出现eicas可以感知的异常时,eicas系统必须提示告警信息;(如:当飞机的液压系统发生故障时,eicas系统应在显示屏上显示告警信息)

sc2:当飞机出现eicas可以感知的异常时,eicas系统必须提示正确的告警信息;(如:当飞机的液压系统发生故障时,eicas系统应在显示屏上显示正确的告警信息,供机组人员进行操作)

sc3:当飞机未出现异常时,eicas系统不应提示告警信息;(如:发动机未失火,eicas系统却提示着火,则飞行员必须优先处理该信息,这将影响飞机正常操作,带来安全隐患)

sc4:当飞机出现eicas可以感知的异常时,eicas系统必须在规定的时间提示告警信息;(若提示过晚,发动机着火,eicas系统报警过晚,可能使事故更加严重)

步骤三:辨识导致不恰当控制行为出现的控制缺陷,即导致系统危险出现的根本原因;

stpa的目的除了要找出上述不恰当的控制行为,还要进一步分析导致这些不恰当控制行为的原因,即系统自身的控制缺陷,如控制算法存在的问题、过程模型存在的问题等等,控制缺陷的一般分类。这些控制缺陷被视为系统危险出现的最根本的致因,设计人员可以依据这些缺陷对系统设计进行改进,以提升系统的安全性。

分析不安全控制产生的原因。事故的致因可分为3类:控制器操作;执行器和被控过程的行为;控制器和决策者之间的沟通和协调。控制结构涉及人,环境和行为塑造机制在事故致因中也起着重要作用。本文共分析得出导致系统危险出现的原因48条,下面以eicas系统的uca1为例,产生事故的致因分类如图3示:

分析控制环路,可以得出以下6条控制缺陷:

cf1.eicas系统发生故障;

cf2.eicas系统中的不恰当的控制算法;

cf3.eicas系统发出的告警信息在传输中丢失;

cf4.显示eicas系统的告警信息的设备显示器失效,不能显示信息;

cf5.传输或显示告警信息有时延;

cf6.机载设备传感器失效,eicas不能获取机载设备的信息。

步骤四:对确定的安全约束进行变量的提取与形式化建模,再对这些需求进行验证,将其中冗余或矛盾的需求剔除或修改。

运用四变量模型,检查安全需求语法及类型方面的错误,以及一致性和完整性相关的错误。四变量模型的构造形式如图1所示,其主要是由四个变量及变量之间关系构成:

1)受监控变量(monitoredvariables,mv):系统观察到并对系统行为做出回应的变量;

2)受控制变量(controlledvariables,cv):系统用于控制外部环境做出回应的变量;

3)输入变量(inputvariables,iv):软件读入的变量,该变量由输入设备将mv转化所得;

4)输出变量(outputvariables,ov):软件读出的变量,该变量经输出设备转化后得到cv;

5)nat:定义系统环境中的自然约束,如飞机最大爬升率;

6)req:定义系统需求,指明当mv发生变化时,cv如何相应的发生变化;

7)定义mv与iv之间的映射关系;

8)定义ov与cv之间的映射关系。

对ecl系统的安全需求建模。通过stpa方法得出的自然语言描述的安全约束还不够准确,需要用形式化的方法对安全约束进行分析验证。采用形式化方法对需求进行严格地描述和分析有助于提高软件开发的规范性和工程化程度,保障软件产品的质量。

对ecl系统的安全需求进行建模,下面以ecl系统与eicas安全控制系统之间的交互分析出的安全需求为例,给出其建模过程。

监督变量aircraft_state用于指示飞机是否有异常,eicas_sen用于指示eicas能否感知飞机的异常;

项eicas_operate用于指示eicas系统的操作是否正确;

受控变量safety_eicas是根据项和监督变量而定义的,表示eicas系统的安全性;

eicas安全控制系统包含以下集合:

监督变量集合:{aircraft_state,eicas_sen}

受控变量集合:{safety_eicas}

项的集合:{eicas_operate}

与上述集合相关的类型定义:

ty(aircraft_state)={normal,abnormal}

ty(eicas_sen})={can,cannnot}

ty(safety_eicas)={true,false}

ty(eicas_operate)={eicas_alarminfo,eicas_alarmcorrect,eicas_alarmtime}

在每个安全需求下,项的值如图4所示,

将上述需求用变量的形式表达如下:

sc1:(aircraft_state=abnormalandeicas_sen=can)→eicas_operate.eicas_alarminfo=true;

sc2:(aircraft_state=abnormalandeicas_sen=can)→eicas_operate.eicas_alarmcorrect=true;

sc3:i(aircraft_state=normal)→eicas_operate.eicas_alarminfo=false;

sc4:(aircraft_state=abnormalandeicas_sen=can)→eicas_operate.eicas_alarmtime=true。

本说明书中所描述的以上内容仅仅是对本发明所作的举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种修改或补充或采用类似的方式替代,只要不偏离本发明说明书的内容或者超越本权利要求书所定义的范围,均应属于本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1