掌桥专利:专业的专利平台
掌桥专利
首页

基于AADL和Object-Z的形式化组合建模和模型转换

文献发布时间:2023-06-19 19:30:30


基于AADL和Object-Z的形式化组合建模和模型转换

技术领域

本发明公开了一种基于AADL和Object-Z的形式化组合建模和模型转换的方法,主要用于对安全关键领域的CPS使用AADL行为附件及其Object-Z扩充建模语言进行半形式化建模,接着通过模型转换规则转换为形式化的自动机模型。本发明是一种半形式化模型转换到形式化模型的建模转换方法。

背景技术

信息物理融合系统(CPS)是实现物理资源与信息资源紧密结合在一起的一个组合系统,在CPS系统中,不仅存在离散的状态迁移,在每个状态中,还存在着对于当前状态的变量的连续变化。而现如今还未能通过一种特定的同时刻画连续变化和离散变化性质的语言对CPS进行直接的半形式化建模。

2006年法国图卢兹计算机与信息研究所实验室提出了AADL行为附件BA(BehaviorAnnex),它提供了标准的子语言扩展,允许将行为规范附加到AADL组件,是AADL的重要组成部分。行为附件BA是一个简单的状态转换关系系统,主要包括三个部分:变量、状态和转换。

Object-Z是Z面向对象的扩展,由澳大利亚昆士兰大学软件验证研究中心的研究人员在现有Z语言的语法和语义上开发而来。是所有以面向对象方式扩展Z的语言中最成熟的一个。无论在表达能力还是语言可读性上,Object-Z都比Z语言更强。目前,Object-Z规格说明语言已经在学术界和工业界得到了广泛的应用。

由于AADL是一个半形式化的模型,因此无法直接对其使用形式化验证和分析工作。而接口自动机作为形式化模型,可以很好的描述离散和连续特性。通过转换算法进行模型转换,再进行形式化验证与模型检测等后续工作。

发明内容

形式化方法在安全关键型软件工程中得到了越来越广泛的应用。一个系统应该用形式化的模型来指定,如自动机、Petri网和进程代数,以便进行形式化的验证。本发明提出了一个具有更强大能力的形式化模型--用Objeet-Z语言表达的OZIA。定义了从AADL-Object-Z模型到OZIA模型的转换规则以支持形式化验证。最后,一个例子说明了我们在飞机着陆过程中的结果。

本发明基于AADL和Object-Z的形式化组合建模和模型转换的方法,主要包括以下步骤:

步骤1:基于AADL行为附件进行Object-Z约束

AADL的语义的形式化研究是一项极其庞大的工程,为了采用形式化的方法更好的进行建模和分析,我们选取AADL的子集作为研究对象,在AADL进行数据约束的扩充描述时,AADL中行为附件中包括状态和状态变迁等,适合于用形式化规格说明Object-Z语言进行形式化描述。

步骤2:使用AADL和Object-Z对CPS进行组合建模并提出相应的AADL-Object-Z规范

AADL自带的行为附件包括状态和状态变迁等,但对于组件之间数据的约束性质的描述能力有限,故引进Object-Z语言对AADL的行为附件Behavior Annex进行扩充,对其变量添加形式化的描述。我们将带数据约束的实时系统用Object-Z-AADL规范刻画为一个六元组

步骤3:通过接口自动机的语法和语义给出OZIA模型

带Object-Z的接口自动机也就是OZIA组合规范,它是由Object-Z语言和接口自动机规范相结合形成一种兼具接口模型性质和数据约束性质的能力。

步骤4:提出模型转换规则,并利用互模拟定义来证明前后两个模型等价

根据模型转换算法将AADL-Object-Z模型(半形式化模型)转换为接口自动机OZIA(形式化模型)用于证明两个模型互模拟等价,即证明后续可靠性验证结果的一致性。

本发明根据信息物理融合系统的实际特性对AADL语言进行了面向对象的扩展,使其在描述信息物理融合系统的状态变化的同时可以使用面向对象的方法模型转换算法将模型转为自动机模型,为后续进一步的形式化验证和分析工作奠定基础。

附图说明

图1为基于AADL和Object-Z的形式化组合建模和模型转换的流程图

图2为AADL架构图

图3为Object-Z基本模式图

图4为类A[T]的模式图(其中“?”表示判断是否满足条件)

图5为继承类A[T]的类B[T]模式图(其中“?”表示判断是否满足条件)

图6为由AADL扩充建模语言模型通过转换算法得到的接口自动机

图7为两个模型的互模拟向前和向后条件

图8为飞机着陆系统图(在案例说明部分)

具体实施方式

本发明的实施提供了一种基于AADL和Object-Z的形式化组合建模和模型转换的方法,为使本领域技术人员更好地理解本发明的技术方案,下面结合附图和具体实施方式对本发明作进一步详细描述。通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。

本发明的目的是,为了解决AADL建模中无法对模型状态的变量和变迁中变量变化的约束关系进行形式化描述,针对信息物理融合系统进行半形式化建模,并提出一种从初步半形式化建模转换到形式化的自动机的模型转换方法。

对于半形式化建模的方法,采取AADL的体系结构建模语言对信息物理融合系统进行建模,为了能够解决其数据约束方面的不足,对AADL建模语言进行了扩充,提出了AADL-Object-Z规范,将接口自动机扩充为带有Object-Z模式的OZIA。

基于AADL和Object-Z的形式化组合建模和模型转换的流程图如附图1所示。具体的发明实施方法如下:

1.使用AADL行为附件以及Object-Z规范进行组合建模,提出AADL-Object-Z规范

AADL-Object-Z规范不仅可以描述信息物理融合系统的建模特征,还能够对变量及变迁进行数据约束。AADL-Object-Z规范

(1)

(2)

(3)D

(4)P

(5)

(6)

2.通过接口自动机的语法和语义给出形式化的OZIA模型

2.1接口自动机(Interface Automata)是一个以自动机为基础的轻量级组件规范语言,它将构件中的每个活动看作是一个输入、输出或内部活动

接口自动机是一个六元组

(1)V

(2)

(3)

(4)

其中,如果在接口自动机P中仅有某些内部动作,符号表示为

2.2提出带Object-Z的接口自动机即OZIA组合规范

带Object-Z约束的接口自动机是一个十一元组

(1)S

(2)

(3)

(4)

(5)

(6)

(7)

通过在接口自动机中添加Object-Z模式,实现了在具备面向对象的数据约束。

3.根据AADL-Object-Z规范和OZIA的语法语义提出模型转换规则和算法

由AADL-Object-Z规范模型可以转换成一个与之相对应的接口自动机

(1)AADL-Object-Z中的State模块V

(2)AADL-Object-Z中的初始状态initial_states

(3)AADL-Object-Z中的动作集合A

(4)AADL-Object-Z中的变量集合V

(5)AADL-Object-Z中的动作与自动机OZIA的映射函数为

(6)AADL-Object-Z中的变量与自动机OZIA的映射函数为

(5)AADL-Object-Z中的状态转换

模型转换的算法如附图6所示。

该转换的输入为AADL-Object-Z规范模型,输出为接口自动机OZI。

4.根据模型转换算法,得到接口自动机,并对两个模型进行互模拟等价证明

AADL的变迁系统

证明:

(1)对于所有的

(2)对于所有的

得证。

实施案例

本实施案例采用飞机着陆系统进来说明带数据约束实时系统模型建模的具体过程,以及转换以后的形式化接口自动机模型,飞机着陆系统如附图8所示。飞机着陆系统是一个典型的信息物理融合系统,着陆分为下滑(dropHeight)、拉平(flareOut)、平飘(floatFoating)、接地(grounding)和滑跑五个阶段。下滑主要是为着陆创造条件。控制塔发出App信号,跑道信号灯接收到控制塔发出的App信号后,信号灯由原来的绿灯状态(表示飞机跑道处于空闲状态)变为红色状态(表示飞机跑道处于忙碌状态)。下滑到规定高度时,拉杆增大迎角,增大升力,使下滑角减小。迎角增大,飞机阻力随之增大,飞机做减速运动,高度也逐渐降低。飞机平飘阶段,由于迎角较大、阻力较大,飞机的速度逐渐减小。飞机接地前,升力略小于重力,飞机缓慢下沉。此时,由于飞机迎角增大及地面效应影响,使机头自动下俯。所以,需要随飞机下沉适当向后带杆,以保持飞机的接地姿态和升力,使飞机以较小的速度和较少的下沉速度轻轻接地。飞机两点接地后,阻力使飞机减速。随着减速减小,升力降低,机头自动下俯,前轮自动接地。当飞机离开跑道进入停机坪时,控制塔台发出Exit信号,跑道信号灯接受到此Exit信号后从红灯状态(表示飞机跑道处于忙碌状态)变为绿灯状态(表示飞机跑道处于空闲状态)。

使用AADL对信息系统建模,如下所示。

/>

上述alp线程构件用Object-Z语言对其变量约束和变迁形式化描述如下:

状态inactive:

状态dropHeight:

状态flareOut:

状态flatFloating:

状态grounding:

状态taxi:

状态exit:

/>

技术分类

06120115938941