基于SysML扩展的系统安全性分析与评估方法

收稿日期:2020⁃04⁃07;修回日期:2020⁃07⁃03㊀㊀基金项目:装备发展部预先研究项目
作者简介:吴超(1981⁃),男,河北唐山人,高级工程师,硕士,主要研究方向为软件测试㊁计算数学㊁软件工程;杨雨婷(1992⁃),女,辽宁阜新人,工程师,硕士,主要研究方向为模型驱动㊁软件工程(837247904@qq.com);付修锋(1985⁃),男,湖北襄樊人,高级工程师,硕士,主要研究方向为软件测试㊁软件工程;陈旭(1993⁃),男,河南商丘人,工程师,硕士研究生,主要研究方向为软件工程;杨波(1980⁃),男,四川遂宁人,研究员,硕士,主要研究方向为软件测试㊁软件工程.
基于SysML扩展的系统安全性分析评估方法∗
吴㊀超,杨雨婷,付修锋,陈㊀旭,杨㊀波
(北京计算机技术及应用研究所,北京100854)
摘㊀要:软件系统的复杂度越来越高给系统安全性分析工作带来了巨大挑战㊂基于SysML扩展的系统安全性分析与
评估方法对SysML块定义视图(blockdefinitiondiagram,BDD)进
行profile弱扩展,使其具备描述系统安全性失效的能力;然后结合ARP⁃4754/4761的系统级功能危害分析(FHA)过程分析系统失效状况㊁失效影响和失效等级,计算系统安全性评估结果㊂最后,该算法在某雷达系统开展实验验证,结果表明,该算法可在设计早期发现系统可能存在的失效状态,提高系统安全性㊂
关键词:SysML;systemlevelfunctionalhazardanalysis(FHA);profile弱扩展;安全性分析;安全性评估
0㊀引㊀言
安全性分析使用系统理论和系统工程方法来预防可预见的事故,并尽量减少不可预见事故的发生㊂传统的安全性分析方法包括故障树分析(faulttreeanalysis,FTA)[1]㊁事件树分析(eventtreeanalysis,ETA)[2]以及故障模式及影响分析(failuremodeeffectandcriticalityanalysis,FMEA)[3]等方法㊂但是传统的安全性分析方法存在一定的局限性,如FTA分析重点只针对特定事件,分析结果最终都可归结为管理原因㊁制度缺陷或人为原因等;FMEA在实施过程中容易出现较大的风险偏差㊂针对复杂系统软/硬件高度耦合的情况,以功能为核心的安全性失效的分析能力还需提高㊂本文算法以SysML模型为基础,对BDD图进行profile弱扩展,使其具备描述系统安
全性失效的能力,继而结合ARP⁃4754/4761的系统级功能危害分析FHA过程,开展基于SysML模型的系统安全性分析与评估,通过图形化模型扩展的方式帮助系统开发人员在设计的早期分析和发现系统可能存在的安全性失效㊂
1㊀理论背景
算法通过对SysML模型进行安全性扩展,将其转换成可靠性框图(reliabilityblockdiagram,RBD),实现系统安全性的评估,该评估过程符合ARP⁃4754/4761中FHA过程要求㊂
1.1㊀安全性分析
民用航空航天领域的两个主要安全标准ARP⁃4754和ARP⁃4761规范了飞机系统开发的步骤和相关的安全评估程序[4],具体流程如图1所示㊂民机系统在概念设计阶段确定飞机功能㊁飞机结构以及飞机要求,此过程中的安全性分析方法为飞机级的功能危害分析(aircraftlevelfunctionalhazardanalysis,FHA),以查明与飞机功能及功能组合相关联的故障状态并对其进行分类[5];在初步设计阶段,确定系统功能㊁系统结构以及系统要求,在此过程中的安全性分析方法为系统级功能危害分析FHA,以识别飞机和系统功能及其功能组合相关的失效状况;在确定系统结构时需进行初步系统安全性评估(preliminarysys
temsafetyassessment,PSSA),建立系统的安全性要求并判断拟定的系统结构是否有足够的理由表明它可以满足FHA提出的安全性目标[6];在进行详细设计以及设计验证阶段,在此过程中的安全性分析方法为系统安全性评估(systemsafetyassessment,SSA),综合各种分析结果用以确认整个系统的安全性[7,8]㊂
本文算法在系统层面进行安全性分析,参照ARP⁃4761中规范的飞机系统开发过程中相关的安全评估程序,所采用的安全评估过程为FHA㊂FHA遵循自上而下的工作流程,一般包括七个步骤:a)识别功能,创建功能清单;b)识别并描述失效状况;c)分析失效状况的影响;d)鉴定失效影响的等级;e)为低一级分配失效概率要求;f)明确失效影响等级的证明材料;g)选择失效概率要求的验证方法㊂
1.2㊀SysML及Profile弱扩展
本文算法使用BDD㊁内部块定义图(internalblockdefinition,IBD)以及活动图来描述系统的组成和系统功能的执行,由于SysML模型本身不具备描述系统安全性属性的能力,本文算法通过profile弱扩展方式将SysML的模块(block)扩展成安全性失效状况(FailureCase),然后基于扩展的SysML模型进行系统安全性分析㊂
构造型是SysMLprofile扩展机制的核心,它将SysML中已经定义的元素的语义专有化㊂构造型扩展机制不是给模型元素增加新的属性或约束,而是在原有模型元素的基础上增加新的系统安全性相关的语义或者限制,不改变模型元素的结构,进而实现模型元素的profile弱扩展[9]㊂
1.3㊀可靠性框图RBD
RBD是利用互相连接的组件来显示系统的失效逻辑,分析系统中每一个组件的失效对系统的影响,以辅助评估系统的整体安全性[10]㊂系统的安全性不仅依赖于每个组件的安全性,也依赖于组件之间的相互影响㊂因此,研究系统的安全性,一方面要研究组件之间的相互影响,另一方面要研究每个组件的安全性与整个系统安全性的关系㊂RBD通过组件的并联或串联进行连接,在每一个RBD组件中都添加一个失效概率,用来描述组件不能正常工作的可能性大小㊂并联表示一条路径从开始节点到结束节点之间存在有分支的情况;串联则表示一条路径从开始节点到结束节点无分支的情况㊂在通过RBD中每个组件的失效概率分析FailureCase的失效概率时,根据串并联性质定义的安全性计算规则为:假设所有故障事件是相互独立的,设两个组件为c1和c2,它们各自的失效概率为pc和pc,则和都发生失效的概率为pcˑpc;c1或c2发生失效的概率pc是pc㊂通过上述计算规则,本文算法利用RBD中组件的失效概率计算出RBD的失效概率,并与FailureCase的最大允许失效概率进行比较,以评估系统是否安全[11]㊂
2㊀安全性分析与评估方法设计
复杂系统软件规模大㊁软件数量多,为完成某一特定功能,复杂系统间各软件并非完全独立而是相互之间协同配合[12]㊂若对复杂系统建模时将各软件分别建模,无法充分反映复杂系统的系统结构㊂SysML的BDD图能清晰描述软件系统组织结构,IBD图可定义BDD图中各独立软件之间的组织接口及接口关系㊂但SysML作为一种通用的系统建模语言,BDD图中描述的各软件的层级数无限制,这就造成了复杂系统的软件逻辑组织结构难以定义,软件系统层级划分的粒度难以明确等问题,给软件系统的安全性分析带来了新的挑战[13]㊂FHA的分析是基于软件系统层,过细粒度的划分在FHA安全性分析过程中冗余,因此本文算法结合FHA的特性,对SysML的BDD和IBD图作新定义及层级定义,如图2所示㊂
定义1㊀顶层BDD(topBDD,TBDD)㊂TBDD是复杂系统建模的抽象层,逻辑上表示复杂系统的根节点,无实际意义㊂一个复杂系统仅有一个TBDD㊂
定义2㊀分系统层BDD(subBDD,SBDD)㊂复杂系统的软件组织结构初级划分,是TBDD的子节点,与TBDD是包含关系㊂一个复杂系统可以有多个SBDD,相互之间不重合㊂其中FHA的安全性分析过程中软件失效FailureCase即在此层级描述㊂
定义3㊀FailureCase㊂描述系统中的一个或多个与安全性相关的功能不能正常工作时的
状态,其属性描述了失效状况发生的最大允许失效概率㊂该元素由SysML模型的BDD图采用profile若扩展技术生成㊂
定义4㊀子系统层BDD(SubSystemBDD,SSBDD)㊂SSBDD表示SBDD中包含的子系统,是SBDD的子节点,一个SBDD可以有多个SSBDD,每个单独的SSBDD之间不重合㊂
定义5㊀顶层IBD(topIBD,TIBD)㊂TIBD是TBDD包含的所有分系统SBDD之间的接口关系定义图,嵌套在TBDD中㊂定义6㊀分系统层IBD(subIBD,SIBD)㊂SIBD是SBDD包含的所有分系统SSBDD之间的接口关系图,嵌套在SBDD中㊂算法将复杂系统在BDD图层面划分为三级结构,以便后续FHA分析㊂基于以上定义及层级结构,系统安全性分析与评估方法架构如下图3所示㊂
FailureCase的最终执行者是活动图中的activity,因此,将FailureCase挂接到最终造成其发生的activity上,并依据活动图的活动执行路径,逆向探寻FailureCase的产生原因,即失效路径㊂子系统层SSBDD作为复杂系统建模的最底层逻辑描述,成为了activity的执行者,因此将失效路径上的每一个活动直接挂接到其执行SSBDD上构成直接失效场景㊂但活动的执行者可能属于不同的分系统层中(如activity3的S
SBDD3⁃1在分系统SBDD3中,activity5的SSBDD2⁃3在分系统SBDD2中),SysML使用IBD图描述系统内部实现逻辑,因此采用以下两种规则构建失效场景㊂
规则1㊀若失效路径上相邻活动对应的两个SSBDD属于同一个分系统层SBDD中,则根据对应的SIBD补充这两个SSBDD之间的关联关系,包括直接相连㊁按照对应SIBD内的两者直接的接口关系增加一个或多个SSBDD将二者连接㊂
规则2㊀若失效路径上相邻活动对应的两个SSBDD不属于同一个分系统层SBDD中,则在TIBD内查每个SSBDD对应的SBDD之间的接口关系,进而补充这两个SSBDD之间的关联关系将二者连接㊂
由于失效场景中SSBDD带有接口关系,与IBD及其相似,因此以后将失效场景中的块称为缩略IBD㊂
最后,由缩略IBD图转换为失效场景RBD,通过失效场景RBD中每个SSBDD的失效概率分析FailureCase的失效概率,进而评估复杂系统是否安全㊂SysML九种基本图形缺乏对系统安全性分析的描述元素,因此,本文算法提出的系统安全性分析与评估自定义一套安全性分析元模型如图4所示,分别使用FailureCase㊁function㊁component描述安全性分析与评估过程中所需的模型基类㊂
funciton实际为SysML活动图中的activity,与FailureCase关联
的activity即关键动作,其关联关系为denifinedby㊂活动图中activ⁃ity与SSBBD图关联(component),其关联关系为allocatedto㊂
基于以上安全性分析元模型中的模型元素及关联关系,系统安全性分析与评估方法核心技术包括基于profile的安全性扩展和基于FHA的系统安全性分析与评估方法㊂
2.1㊀基于profile的安全性扩展
基于安全性分析元模型,本文算法分别对失效状况(Failure⁃Case)㊁块的安全性描述(component)㊁活动及块之间分配关系(allo⁃catedto)进行弱扩展,提高SysML对系统安全性描述能力[14]㊂2.1.1㊀FailureCase的弱扩展
FailureCase是对不能正常执行功能的情况的描述,与元模型图中的FailureCase对应㊂在进行安全性分析时,需要描述功能不能正常工作状态即FailureCase,而SysML模型本身不能描述Failure⁃Case,因此需要对SysML模型通过profile弱扩展的方式,将SysML原有的模块(block)元素扩展成FailureCase构造型,展现形式为<<block,FailureCase>>,如图5所示㊂
2.1.2㊀块的安全性弱扩展
系统安全性分析需明确活动图中的动作执行单元,而系统活动的执行单元在SysML中以块来表示,因此需确定与安全性相关的活动及块之间的映射关系,以进行失效路径依赖追踪,其中块与元模型图中的component对应㊂采用与FailureCase类似的扩展方式,将SysML原有的模块(block)元素扩展成<<safety_relevant>>构造型,用来表示与安全性相关的块,在分析过程中可以对此块添加必要的属性如失效概率等[15]㊂
2.1.3㊀分配关系的弱扩展
在块的安全性弱扩展中,只是确定哪些块是与安全性相关的,并没有将块与动作所执行的功能对应起来㊂因此将SysML原有的contextlink连接线元素扩展成<<allocate>>构造型,用于将动作与安全性相关的块关联起来,如图6所示,对应为元模型图中的将功能分配到系统组件㊂
2.2㊀基于FHA的系统安全性分析与评估
基于FHA的工作流程,本文算法的安全性分析过程包括基于SysML的功能识别与建模;失效状况发现及失效路径探寻;失效场
景IBD及RBD模型构建;失效概率计算与安全性评估四个过程[16]㊂如图7所示㊂
a)基于SysML的功能识别与建模㊂首先根据软件需求设计分层系统架构,建立复杂软件系统的BDD㊁IBD和SysML系统活动图,分别以静动态视角描述软件系统的任务执行过程㊂为实现对模型的安全性分析,基于安全分析元模型,将BDD图采用profile弱扩展技术增加对软件系统安全属性的描述,为BDD㊁IBD和活动图之间的关联关系提供模型基础㊂
b)失效状况发现及失效路径探寻㊂在SBDD层确定Failure⁃Case,每一个FailureCase都定义一个最大允许失效概率,用于安全性评估的判断依据㊂针对每一个FailureCase,确定其造成的影响以及影响等级,并生成失效依赖路径(2.2.1节)㊂
c)失效场景RBD模型构建㊂通过之前所确定的分配关系和依赖路径,将依赖路径中的动作替换为相关联的块,构造出直接失效场景,并根据失效场景生成算法(2.2.2节),获得FailureCase的所有失效场景SSBDD,进而构造失效场景RBD㊂
d)失效概率计算与安全性评估㊂基于RBD的串并联性质定义的安全性计算规则,计算失效概率,将计算结果和该FailureCase的最大允许失效概率比较,判断计算结果是否在最大允许失效概率的范围内,若在最大允许失效概率内,则说明符合安全性需求,反之不符合㊂最终形成安全性分析与评估结果[17]㊂
基于FHA的系统安全性分析与评估过程包括失效依赖路径生成算法和失效场景生成算法两个核心算法㊂下面就两个算法思想进行详细介绍㊂
2.2.1㊀失效依赖路径生成算法
FailureCase的失效依赖路径生成本质是在SysML活动图中定
位与FailureCase发生直接或间接关联的activity㊂由于活动图存在循环㊁分支等多类结构[18],所以在失效依赖路径生成过程中亦存在此类结构,造成无法分析失效影响的因果关系㊂本文算法针对活动图的特点,采用分支覆盖的原则,即能够覆盖到路径中的所有分支,设计失效依赖路径生成算法,分别消除循环分支等结构对安全性分析的影响㊂首先定义算法所需的基本概念㊂
㊀㊀定义7㊀节点㊂SysML活动图中每一个activity是一个节点,用node表示㊂其中,失效依赖路径的源节点用nodes表示,目标节点用nodet表示㊂失效依赖路径的nodet与FailureCase关联㊂定义8㊀边㊂表示活动图中两个activity之间的有向路径,用e={nodei,nodej}表示,e的起始activity为nodei,终止activity为nodej㊂定义9㊀路径㊂表示活动图中连接两个activity之间的有序集合,用path表示,具体可划分为简单路径和复杂路径㊂简单路径是所有node的入度和出度均小于2的路径,用simplePath表示;复杂路径中存在循环,即路径中存在node的入度或出度大于等于2,用complexPath表示㊂
1)并发活动失效依赖路径生成算法
若活动图存在并发的情况,则并发的起点用ForkNode节点表示,并发的终点用JoinNo
de节点表示㊂然后对能够成并发的路径进行组合,组合原则为:针对所有的简单路径,判断当前简单路径是否包含ForkNode和JoinNode节点,若不包含,则不需要组合,继续遍历;否则在其余简单路径中寻同时满足从初始节点到Fork⁃Node节点之间的路径与当前简单路径相同㊁从JoinNode到目标节点之间的路径与当前简单路径相同的所有简单路径,并对它们进行组合,形成新的具有并发形式的简单路径㊂
以图8为例,假设查从初始节点到动作4的所有路径㊂
首先出两条不包含并发的简单路径:
simplePath1=
{e1{nodeinit,node1},e2{node1,node2},
e3{node2,nodefork},e4{nodefork,node31},
e5{node31,nodejoin},e6{nodejoin,node4}}(1)
simplePath2=
{e1{nodeinit,node1},e2{node1,node2},
e3{node2,nodefork},e4{nodefork,node32},
e5{node32,nodejoin},e6{nodejoin,node4}}(2)由于图8存在并发路径,所以需要对能够成并发的路径进行组合,simplePath1和simplePath2组合结果为
simplePath=
{e1{nodeinit,node1},e2{node1,node2},
e3{node2,nodefork},e4{nodefork,node31},
e5{nodefork,node32},e6{node31,nodejoin},
e7{node32,nodejoin},e8{nodejoin,node4}}(3)最终,去除路径中的ForkNode和JoinNode,构成最终的路径并替换原有简单路径,如图9所示㊂
simplePath=
{e1{nodeinit,node1},e2{node1,node2}
{e3{node2,node31},e4{node2,node32},
e5{node31,node4},e6{node32,node4}}}(4)2)循环活动失效依赖路径生成算法
虽然活动图中存在循环时,难以在模型静态分析阶段判断循环是否终止,但由于简单路径一定不存在循环,本文算法以简单路径作为核心,遍历活动图中所有的边,分析每一条边与简单路径中的边和节点的关系并进行分类,针对不同的边集分类设计不同的方法消除循环依赖㊂首先定义如下基本概念㊂
定义10㊀边集㊂表示活动图中所有边的集合,表示为ActionEdge⁃Set㊂
定义11㊀子边集㊂活动图中边集的子集㊂其中可将活动图中不在简单路径上子边集划分为
a)边的源和目标节点都在简单路径上的边集ActionBothInSim⁃plePathSet㊂
b)边的源节点或目标节点在简单路径上的边集:
ActionBothInSimplePathSet(源节在简单路径上)或ActionTarget⁃InSimplePathSet(目标节点在简单路径上)㊂
针对以上两种类型的边集子集,分别设计不同的路径合并方式:
a)对于ActionBothInSimplePathSet,其边所构成的非简单路径complexPath1为活动图的初始节点nodes到nodesi的简单路径+e
i{nodesi,nodeti}+nodeti到关键动作nodet的简单路径,即
simplePath{e1{nodes,nodet1} ek{nodesk,einodesi}}+
simplePath{e1{ei.nodeti,nodet1} en{nodesk,nodet}}+
ei{nodesi,nodeti}(5)b)对于边的源或目标节点在简单路径上的边集,将Action⁃BothInSimplePathSet中的边ei和ActionTargetInSimplePathSet中的边e
进行遍历组合,构成的非简单路径complexPath2为活动图的初始节点nodes到no
desi的简单路径+边{ei ej}构成的简单路径+nodetj到关键动作nodet的简单路径㊂即
simplePath{e1{nodes,nodet1} ek{nodesk,nodesi}}+
simplePath{ei{nodesi,nodeti} ek{nodesj,nodetj}}+
simplePath{e1{nodetis,nodet1} en{nodesn,nodet}}(6)
如图10所示,假设FailureCase挂接到目标节点node4上,则FailureCase简单路径:
simplePath=
{e1{nodeinit,node1},e2{node1,node2},
e3{node2,node3},e4{node3,node4}}(7)
边的源和目标节点都在简单路径上的边集ActionBothInSimple⁃PathSet:{e1{node3,node5}},如图10边①所示;
边的源节点在简单路径上的边集ActionSourceInSimplePathSet:{e1{node3,node5}},如图10边②所示;
边的目标节点在简单路径上的边集ActionTargetInSimplePath⁃Set:{e1{node6,node3}},如图10边③所示㊂
针对图10中的边①,构成的非简单路径complexPath1为
simplePath{e1{nodeinit,node1},e2{node1,node2},e3{node2,node3}}+
e4{node3,node2}+simplePath{e5{node2,node3},e6{node3,node4}}(8)针对图10中的边②和③,构成的非简单路径complexPath2为simplePath{e1{nodeinit,node1} e3{node2,node3}}+
simplePath{e4{node3,node5} e6{node6,node1}}+
simplePath{e7{node1,node2} e9{node3,node4}}(9)2.2.2㊀失效场景生成算法
在2.2.1节中到的FailureCase的依赖路径还不足以作为计算系统失效概率的依据,它仅用于分析出与系统失效状况相关的功能,因此还需要充分考虑系统内部的实现逻辑㊂依据activity与SSBDD之间的分配关系,结合多层系统IBD,将依赖路径中的动作替换成分配表中相对应的块,构成缩略IBD,如图11所示,其中假设activity与SSBDD块图的分配关系如表1所示㊂
表1㊀分配表
动作名组件名动作名组件名
动作1块1动作3⁃2块3
动作2块2动作4块1
动作3⁃1块3动作5块3
㊀㊀为了自动获取FailureCase的所有失效场景IBD,需要根据缩略IBD在多层系统
IBD中进行路径查㊂在系统IBD中都是相邻块进行交互且模块之间的交互大部分可能都是双向的,不存在跨模块进行交互㊂为避免因双向交互造成无限循环的情况,本文规定:在查给定的源节点和目标节点之间的一条路径时,到达目标节点时,此条路径搜索结束,不允许到达目标节点后再返回到之前的节点进行搜索㊂下面对失效场景IBD的构造算法中需要使用到的概念进行如下定义㊂
定义12㊀系统的IBD模型的边集㊂用于保存系统IBD中所有边,用IBDEdgeSet表示㊂如图12所示㊂
IBDEdgeSet=
{e1{node1,node2},e2{node2,node1},e3{node2,node3}, }(10)其中,在系统的IBD模型中查缩略IBD的相邻块的所有路径时,将缩略IBD中相邻块的箭头发出地作为失效IBD的源节点,用nodes表示;箭头接收地目标节点,用nodet表示㊂
出一条以nodes为源节点和以nodet为目标节点的简单路径IBDSimplePath:
根据图13所示的缩略IBD,得到简单路径IBDSimplePath:{e1{node1,node2}}㊂
根据规则,去除系统IBD中以目标节点为源节点的边,针对图12所描述的系统IBD,即去除边{node2,node1}和边{node2,node3},
如图14所示㊂其余不在简单路径上的边集为
IBDOtherInEdgeSet=
{e1{nodet2,nodes} en{nodet,nodes2}}(11)
根据对图13和14分析获得:其余不在简单路径上的边集为图14中的边①㊂
IBDItherInEdgeSet={e1{node3,node1}}(12)定义13㊀失效场景IBD㊂IBDItherInEdgeSet中的边所构成非简单路径IBDComplexPath对应的IBD图称为失效场景IBD㊂构建规则为:缩略IBD源节点nodes到nodesi的简单路径+ei{nodesi,nodeti}+nodeti到缩略IBD的目标节点nodet的简单路径,即
IBDComplexPath=
simplePath{e1{nodes,nodet1} ek{nodesk,ei.nodesi}}+
simplaPath{e1{ei.nodeti,nodet1} en{nodesn,nodet}}+
ei{nodesi,nodeti}(13)针对图14中的边①,构成的非简单路径:
IBDComplexPath={e1{node1,node3}+
e2{node3,node1}}+e3{node1,node2}}(14)如图15所示㊂
根据以上方法,最终获得失效场景IBD㊂其流程如图16所示㊂
依据上述算法得出的失效场景IBD,RBD使用通过彼此连接的块结构来直观地表示系统的实现逻辑,分析系统中每一个组件的失效概率对系统的影响,以帮助评估系统的整体安全性㊂RBD通过并联或串联进行连接㊂基于失效场景IBD分析得到失效场景RBD如图17㊁18所示㊂
3㊀实验结果
基于Papyrus工具,定制化开发了系统安全性建模㊁分析与评估一体化工具,并以某雷达系统为例,实现了本算法的可行性验证㊂如雷达系统可分为前端子系统和后端子系统,其中后端子系统中又包括成像子系统和匹配子系统[19],在匹配子系统中又包含主DSP㊁从DSP以及FPGA[20]㊂
a)依据雷达系统的组成,进行BDD㊁IBD以及活动图的搭建,并将活动图中的动作分配给安全性相关的块㊂部分结果如图19
21所示㊂分配关系如表2所示
表2㊀动作分配关系
动作名称组件名称动作名称组件名称
配置参数成像惯导计算成像
发送参数匹配聚焦计算匹配
接收子图脉冲数据DSP
㊀㊀b)根据失效的严重程度,将失效划分为五个等级,领域专家确
定每个等级的失效影响以及最大允许的失效概率㊂如表3所示㊂
表3㊀失效等级表
失效等级允许定性概率允许定量概率
灾难(Ⅰ级)极不可能的<10-9
严重(Ⅱ级)极端少的<10-7
轻度(Ⅲ级)极少的<10-5
轻微(Ⅳ级)可能的<10-3
安全(Ⅴ级)无概率要求无概率要求
㊀㊀以 成像失败 为例,结合第2章FHA分析过程,构建失效状
况分析表如表4及失效依赖路径如图22所示㊂
表4㊀失效状况分析
活动功能模块失效状况失效影响失效等级
聚焦运算后端成像失败前视成像失败轻度
㊀㊀c)确定失效场景RBD,如图23所示㊂
d)依据基础组件失效概率以及失效场景RBD计算得到的失
效概率,进行安全性评估㊂基础组件失效概率如表5所示㊂
表5㊀基础组件概率分配表
组件名称失效概率
成像(Pcx)1.0ˑ10-5
匹配(Ppp)0.5ˑ10-5
DSP(Pdsp)0.3ˑ10-5
㊀㊀计算过程如下:
a)失效场景RBD1㊂
Pcx+Ppp+(Pdsp+Pcx)ˑPcx+Ppp=2.0ˑ10-5+1.3ˑ10-10
评估结果:未通过㊂
b)失效场景RBD2㊂
Pcx+Ppp+(Pdsp+Pcx)ˑ(Pdsp+Pcx)+Ppp=2.0ˑ10-5+1.69ˑ10-10
评估结果:未通过㊂
c)失效场景RBD3㊂
Pcx+Ppp+(Pcx+Ppp+Pdsp+Pcx)ˑPcx+Ppp=2.0ˑ10-5+2.8ˑ10-10
评估结果:未通过㊂
d)失效场景RBD4㊂
Pcx+Ppp+(Pcx+Ppp+Pdsp+Pcx)ˑ(Pdsp+Pcx)+Ppp=
2.0ˑ10-5+3.64ˑ10-10
评估结果:未通过㊂
安全性分析与评估结果如表6所示㊂结果表明,本文算法的
安全性分析与评估方法可行,其中成像失败这一失效状况不符合
雷达系统的安全性要求,需要针对失效场景关联的块图重新设计
系统逻辑结构,以避免此项失效状况的发生㊂
表6㊀安全性评估结果
功能
失效
状况
失效
影响
失效影响
等级
符合性
验证方法
计算
失效概率
允许的最大
失效概率
是否符合
安全性要求
后端
成像
失败
前视成像
失败
轻度
场景RBD
获取过程2.0ˑ10-51ˑ10-5否
4 结束语
本文算法基于profile弱扩展分别扩展出FailureCase㊁安全相关
块及分配关系,使SysML模型具备安全性描述能力,并结合ARP⁃
4761/ARP4754的FHA过程对扩展后的SysML模型定性分析系统
的失效状况;针对定性分析的失效场景RBD计算失效概率,对失效
状况进行定量评估㊂此过程可应用于其他安全关键系统中,如航
空航天领域,通过在系统设计阶段进行安全性分析,辅助开发人员
及时发现系统的安全问题并及时解决㊂但本文算法提出的安全性
分析是在系统层进行的,在概念设计㊁详细设计以及验证阶段未实
施相应的安全性分析过程,因此只适用于在系统层面进行安全性
分析,并不适用于其他层面的相关分析㊂后续可进行ARP⁃4754/
4761中的PSSA以及SSA相关方面的研究与实现㊂
参考文献:
系统平台开发评估[1]TezakS,TosZ,IvojuriC.Reliabilityanalysisofoperationforcable⁃
waysbyFTA(faulttreeanalysis)method[J].PrometTraffic&
Transportation,2010,22(3):163⁃173.
[2]FerdousR,KhanF,SadiqR,etal.Faultandeventtreeanalysesfor
processsystemsriskanalysis:uncertaintyhandlingformulations[J].
RiskAnalysis,2011,31(1):86⁃107.
[3]GargamaH,ChaturvediSK.Criticalityassessmentmodelsforfailure
modeeffectsandcriticalityanalysisusingfuzzylogic[J].IEEETrans
onReliability,2011,60(1):102⁃110.
[4]刘超.基于模型检验的飞机系统安全性分析方法研究[D].南京:
南京航空航天大学,2012.
[5]任炳轩,卢艺,傅山,等.基于MBSE的民机功能需求辨识与确认
[J].系统工程与电子技术,2019,41(9):2016⁃2024.
[6]于静,郑磊,胡剑波,等.机载设备研制阶段的适航性分析与验证
[J].航空制造技术,2014,464(20):47⁃50.
[7]SAEInternational.ARP4754⁃certificationcons
iderationsforhighly⁃in⁃
tegratedorcomplexaircraftsystems[S].1996.
[8]SAEInternational.ARP4761⁃guidelinesandmethodsforconducting
thesafetyassessmentprocessoncivilairbornesystemsandequipment
[S].1996.(下转第213页)

本文发布于:2024-09-22 09:42:56,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/379352.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:系统   路径   分析   评估   节点
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议