一种安全关键软件验证方法、装置、设备及介质制造方法及图纸

技术编号:33205145 阅读:18 留言:0更新日期:2022-04-24 00:49
本发明专利技术属于软件测试验证技术领域,提供了一种安全关键软件验证方法、装置、设备及介质。其中,方法包括:基于LTL语言扩展FTA模型得到形式化的系统安全性约束条件及对应的软件需求规范;将软件需求规范按照预制定转换规则和MBD的软件规范符号匹配,使软件需求规范转化为安全规约模型;将安全规约模型和预生成的SCADE软件设计模型输入模型验证器,完成对软件的安全性验证。采用本申请实施例的技术方案,通过LTL语言进行扩展使安全性约束条件和安全性约束条件对应的软件需求规范满足形式化特征,同时依据预制定的转换规则使软件需求规范可以转化为安全规约模型,用以输入模型验证器中进行验证,避免了安全性验证方法的人为因素的干扰,提高了可靠性。提高了可靠性。提高了可靠性。

【技术实现步骤摘要】
一种安全关键软件验证方法、装置、设备及介质


[0001]本专利技术涉及软件测试验证
,具体涉及一种安全关键软件验证方法、装置、设备及介质。

技术介绍

[0002]现代安全关键电子系统正向软件密集型系统转变。软件在系统中所承担功能的占比持续增加,导致软件安全性对系统的安全至关重要。因此,探索一种符合发展趋势且合理的软件验证方法成为了迫切需要,而如何针对复杂软件进行有效验证,成为软件安全性工作的难点。
[0003]目前主流的软件安全性验证方法为通过安全性分析方法捕获软件的安全性需求,结合形式化验证技术完成对软件的验证工作。采用的形式化验证技术包括定理证明技术和模型检验技术。
[0004]定理证明的主要思想是:将系统模型和待验证性质逻辑化,用公式表示出来,根据严格的推理过程,由系统模型推导出待验证性质进而证明系统模型的正确性。采用定理证明的方法能够处理系统无限的状态空间,不存在空间爆炸问题。但定理证明的过程中需要了解整个系统和待验证性质的大量信息,增加了对验证人员的知识要求和能力要求,同时定理证明的方法未能实现完全的自动化,验证过程中需要人工辅助进行,验证效率低,难以在大型复杂系统的形式化验证中应用。因此定理证明主要用于科研研究领域,并没有在工业领域得到广泛的应用。而模型检验技术用于针对有限状态,通过有穷状态空间搜索系统的整个状态空间来检查该系统是否满足给定的性质,而传统的软件开发模式以代码为核心,对模型进行验证时,必须花费大量工作在建造模型上,同时需要开发者针对形式化验证语言验证流程特别熟悉,大大加大了开发的时间和精力。

技术实现思路

[0005]针对现有技术中的缺陷,本专利技术提供一种安全关键软件验证方法,以解决现有技术验证时在建造模型上花费大量工作,且对验证人员要求高,及人为干扰因素大的问题。
[0006]第一方面,本专利技术提供的一种安全关键软件验证方法,包括:
[0007]基于LTL语言扩展FTA模型得到形式化的系统安全性约束条件及对应的软件需求规范;
[0008]将所述软件需求规范按照预制定转换规则和MBD的软件规范符号匹配,使所述软件需求规范转化为安全规约模型;
[0009]将所述安全规约模型和预先生成的SCADE软件设计模型输入模型验证器,完成对软件的安全性验证。
[0010]由上述技术方案可知,本专利技术提供的安全关键软件验证方法,通过LTL语言进行扩展,使安全性约束条件和安全性约束条件对应的软件需求规范满足形式化特征,同时依据预制定的转换规则,使软件需求规范可以转化为安全规约模型,用以输入模型验证器中进
行验证,避免了安全性验证方法的人为因素的干扰,提高了可靠性。
[0011]可选地,所述基于LTL语言扩展FTA得到规范化的系统安全性约束条件及对应的软件需求规范,包括:
[0012]获取FTA的最小割集X,并确定FTA中顶事件T和最小割集X之间的关系;
[0013]获取针对于顶事件T和最小割集X的故障树的安全性约束条件及与所述安全性约束条件对应的软件需求规范。
[0014]可选地,所述顶事件T关于所述最小割集X的关系表达式为
[0015][0016]其中,式中∑代表并集,II代表交集,X
i
代表第i个最小割集。
[0017]可选地,所述安全性约束条件为任何时候T均不能发生,即对应的所述软件需求规范的表达式为
[0018]可选地,所述软件需求规范与安全规约模型的预制定转换规则为
[0019][0020]其中,“\”表示没有对应的形式化建模符号。
[0021]可选地,所述SCADE软件设计模型的生成方法,包括:
[0022]以设计文档作为输入,基于SCADE完成待开发软件的设计实现,输出软件设计模型。
[0023]可选地,所述SCADE软件的安全性验证包括如下步骤:
[0024]通过形式化验证器完成软件的验证,若验证通过,则软件设计模型符合软件安全需求,否则输出用于修改SCADE软件设计模型的反例。
[0025]第二方面,本专利技术提供的安全关键软件验证装置,包括:
[0026]规范生成模块,用于基于LTL语言扩展FTA模型得到形式化的系统安全性约束条件及对应的软件需求规范;
[0027]模型转换模块,用于将所述软件需求规范和MBD软件规范软件模范符号匹配,使所述软件需求规范转化为安全规约模型;
[0028]验证模块,用于将所述安全规约模型和完成预验证的SCADE软件设计模型输入模型验证器,完成对软件的安全性验证。
[0029]可选地,所述规范生成模块,具体用于:
[0030]获取FTA的最小割集X,并确定FTA中顶事件T和最小割集X之间的关系;
[0031]获取针对于顶事件T和最小割集X的故障树的安全性约束条件及与所述安全性约束条件对应的软件需求规范。
[0032]可选地,所述规范生成模块中所述顶事件T关于所述最小割集X的关系表达式为
[0033][0034]其中,式中∑表示并集,II表示交集,X
i
表示第i个最小割集,C
j
表示第j个中间事件,r表示中间事件的个数。
[0035]可选地,所述规范生成模块中所述安全性约束条件为任何时候T均不能发生,即对应的所述软件需求规范的表达式为
[0036]可选地,所述模型转换模块中,所述软件需求规范与安全规约模型的预制定转换规则为
[0037][0038]其中,“\”表示没有对应的形式化建模符号。
[0039]可选地,所述验证模块中所述SCADE软件设计模型的生成方法,包括:
[0040]以设计文档作为输入,基于SCADE完成待开发软件的设计实现,输出软件设计模型。
[0041]可选地,所述验证模块,具体用于:
[0042]通过形式化验证器完成软件的验证,若验证通过,则软件设计模型符合软件安全需求,否则输出用于修改SCADE软件设计模型的反例。
[0043]第三方面,本专利技术一实施例提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行计算机程序时实现上述任一种方法的步骤。
[0044]第四方面,本专利技术一实施例提供了一种计算机可读存储介质,其上存储有计算机程序指令,该计算机程序指令被处理器执行时实现上述任一种方法的步骤。
[0045]采用上述技术方案,本申请具有如下技术效果:
[0046]本专利技术提供的安全关键软件验证方法,通过LTL语言进行扩展,使安全性约束条件和安全性约束条件对应的软件需求规范满足形式化特征,同时依据预制定的转换规则,使软件需求规范可以转化为安全规约模型,用以输入模型验证器中进行验证,避免了安全性验证方法的人为因素的干扰,提高了可靠性。同时对于输入验证器的安全规约模型和软件设计模型,在验证未通过的情况下,验证器会自动生成反例,以及该反例的路径信息,以便于错误分析及定本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种安全关键软件验证方法,其特征在于,包括:基于LTL语言扩展FTA模型得到形式化的系统安全性约束条件及对应的软件需求规范;将所述软件需求规范按照预制定转换规则和MBD的软件规范符号匹配,使所述软件需求规范转化为安全规约模型;将所述安全规约模型和预先生成的SCADE软件设计模型输入模型验证器,完成对软件的安全性验证。2.根据权利要求1所述的方法,其特征在于,所述基于LTL语言扩展FTA得到规范化的系统安全性约束条件及对应的软件需求规范,包括:获取FTA的最小割集X,并确定FTA中顶事件T和最小割集X之间的关系;获取针对于顶事件T和最小割集X的故障树的安全性约束条件及与所述安全性约束条件对应的软件需求规范。3.根据权利要求2所述的方法,其特征在于,所述顶事件T关于所述最小割集X的关系表达式为其中,式中∑代表并集,II代表交集,X
i
代表第i个最小割集。4.根据权利要求2所述的方法,其特征在于,所述安全性约束条件为任何时候T均不能发生,即对应的所述软件需求规范的表达式为对应的所述软件需求规范的表达式为5.根据权利要求1所述的方法,其特征在于,所述软件需求规范与安全规约模型的预制定转换规则为其中,“\”表示没有对应的形式化建模符号...

【专利技术属性】
技术研发人员:吴康朱守园牟明于沛赵文
申请(专利权)人:中航机载系统共性技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1