CN110502211A - 一种基于SysML模块图的AADL模型构造方法 - Google Patents

一种基于SysML模块图的AADL模型构造方法 Download PDF

Info

Publication number
CN110502211A
CN110502211A CN201910720499.6A CN201910720499A CN110502211A CN 110502211 A CN110502211 A CN 110502211A CN 201910720499 A CN201910720499 A CN 201910720499A CN 110502211 A CN110502211 A CN 110502211A
Authority
CN
China
Prior art keywords
sysml
aadl
module
component
state
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910720499.6A
Other languages
English (en)
Other versions
CN110502211B (zh
Inventor
刘畅
王金岩
李奎
符佳盼
王科翔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Aeronautical Radio Electronics Research Institute
Original Assignee
China Aeronautical Radio Electronics Research Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Aeronautical Radio Electronics Research Institute filed Critical China Aeronautical Radio Electronics Research Institute
Priority to CN201910720499.6A priority Critical patent/CN110502211B/zh
Publication of CN110502211A publication Critical patent/CN110502211A/zh
Application granted granted Critical
Publication of CN110502211B publication Critical patent/CN110502211B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/10Requirements analysis; Specification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/22Procedural

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种基于SysML模块图的AADL模型构造方法,包括以下步骤:步骤一,基于SysML模块图进行模块分类;步骤二,基于SysML模块图构建ADDL组件类型声明;步骤三,基于SysML模块图构建AADL组件类型实现;步骤四,基于SysML状态机图构建AADL组件的状态;步骤五,基于SysML状态机图构建AADL组件的状态转换。通过本发明,用户可以实现基于SysML模块图的AADL模型的自动构造,可以在维护嵌入式系统架构模型、子系统模型关联关系的基础上,兼顾系统整体模型与子系统模型的非功能属性,完成嵌入式系统架构从软件到硬件层次的建模与验证,还可以在软件开发的早期阶段对系统架构模型的可行性和正确性进行验证,尽早的发现系统架构方面的问题,降低系统开发的成本,实现系统整体的高可靠目标。

Description

一种基于SysML模块图的AADL模型构造方法
技术领域
本发明属于航空电子系统设计技术,涉及一种基于SysML模块图的AADL模型构造方法。
背景技术
任务关键系统是高可靠性、高实时性、高集成度的复杂嵌入式系统。MBSE(ModelBased System Engineering)已被公认为是实现复杂关键系统各个步骤的最佳方案,它将建模语言和工具与需求分析、设计、实现、集成及测试等嵌入式软件开发过程紧密相连。基于上述目的,OMG(Object Management Group)提出了一种标准化的系统建模语言SysML(System Modeling Language),SysML为系统工程师提供了系统架构设计的高级视图,完成高级建模任务,支持系统建模工程的早期阶段。在嵌入式软件设计时,SysML模块用来记录模块的结构、关系,以构成系统的结构。SysML模块的属性、操作等特征展示了不同模块之间的层次关系。模块是系统的静态结构化单元,不仅可以表示为逻辑单元也可以表示软件、硬件等物理单元。
为了分析任务关键嵌入式软件系统的非功能属性,提高软件系统的质量,缩短软件开发周期,美国自动机协会SAE(Society of Automotive Engineers)于2009年1月发布了航空标准AS5506——体系结构分析与设计语言AADL(Architecture Analysis andDesign Language)2.0版本。AADL作为一种嵌入式实时系统的建模语言,为负责实施的工程师提供系统实现的低级视图,详细描述嵌入式系统中软件、硬件、操作系统以及它们之间信息交互的细节,支持系统建模工程的后期阶段,为嵌入式系统的实时性、安全性和可靠性提供分析,在任务关键和安全关键嵌入式领域有着广阔的应用前景。
中国航空无线电电子研究所提出用SysML分析系统需求和建模系统逻辑结构,利用AADL分析模型结构中的非功能属性。南京航空航天大学研究学者邓佳佳等针对系统设计阶段难以对刹车控制系统进行实时性分析验证的问题,提出基于SysML和AADL的实时性验证方法,但是他们的基于SysML模块图构造AADL模型的方法缺少规范化和精准化描述,无法形成完整的体系结构。所以本发明的目标是利用SysML和AADL在嵌入式系统建模领域的互补性,通过提出一种规范化的基于SysML模块图构造AADL模型的方法,实现SysML模块图和AADL模型在系统建模过程中的无缝桥接。
发明内容
针对以上问题,本发明提供了一种基于SysML模块图的AADL模型构造方法,通过本发明,用户可以在维护嵌入式系统架构模型、子系统模型关联关系的基础上,兼顾系统整体模型与子系统模型的非功能属性,完成嵌入式系统架构从软件到硬件层次的建模与验证。研究成果可以在软件开发的早期阶段对系统架构模型的可行性和正确性进行验证,尽可能早的发现系统架构方面的问题,降低系统开发的成本,改善嵌入式系统的质量。本发明可应用于任务关键系统的开发,例如,航空领域、航天领域、交通运输领域等。
本发明提供的一种基于SysML模块图的AADL模型构造方法,包括以下步骤:
步骤一,基于SysML模块图进行模块分类;
步骤二,基于SysML模块图构建ADDL组件类型声明;
步骤三,基于SysML模块图构建AADL组件类型实现;
步骤四,基于SysML状态机图构建AADL组件的状态;
步骤五,基于SysML状态机图构建AADL组件的状态转换。
进一步的,步骤一具体为,a)用SysML模块图中的继承关系来实现模块之间的层次关系,使用SysML模块来区分AADL的各种软硬件组件类型;b)基于SysML模块图详细描述系统的结构、实现系统自顶向下的完全分解,系统分解的过程同时关注模块的对外接口;通过构建模块图的树形结构,可以清晰地说明系统组件之间的层次关系和关联关系;树形结构分为三层。
进一步的,上述三层树形结构具体为:第一层,基于SysML模块图的树形结构的根节点是整个系统,建模者所有的建模都是对树结构的根节点进行描述,根节点一定为系统<system>;第二层,基于SysML模块图的树形结构的第二层是各种子系统、硬件或者软件模块,该层的所有节点都对应于系统某个模块的整体功能,即功能模块,功能模块可以是<system>、<hardware>或<software>;第三层,基于SysML模块图的系统树结构的第三层是各种硬件或者软件模块,该层的所有节点都对应于系统模块的特定功能,即功能单元,功能单元可以是<hardware>或<software>。
进一步的,步骤二具体为,a)基于SysML模块定义图构建AADL组件;b)基于SysML模块图构建AADL组件端口;c)基于SysML模块关系构建AADL组件关系。
进一步的,上述步骤二a)具体为:假设SysML模块定义图中的所有模块都已经被正确分类,以此为基础,根据SysML模块图树结构的各个节点对应的模块类型,直接生成对应的AADL组件类型声明<component_category>,组件类型名称为节点名称<defining_component_type_identifier>。
上述步骤二b)具体为:将SysML中的端口分为以下两种类型:1)可独立实现信息交互功能的端口,拥有内部结构并执行一定的行为,将该端口转换为AADL中的子程序组件,并根据它所属的模块绑定到对应的AADL组件,同时根据端口中的功能实现进一步的细化;2)不可以独立实现信息交互功能的端口,针对该端口,在端口映射时转换为AADL组件类型声明中的<features>中的端口,根据它所属的模块绑定到对应的AADL组件;同时根据端口完成的功能来进行进一步的区分。
上述步骤二c)具体为,包括两种SysML模块定义图中模块之间的关系:1)SysML模块之间的泛化关系,利用AADL组件之间的继承<extends>来构建SysML模块之间的继承关系,所有的模块继承关系都在AADL组件类型实现中进行实现;2)SysML模块之间的分配关系,将SysML模块之间的分配关系转换为AADL中软硬件组件之间的绑定关系,分配关系的映射转换主要针对以下三种软硬件关系:软件和内存的绑定,软件和处理器的绑定,组件连接和总线的绑定。
进一步的,步骤三具体为:a)构建AADL组件类型实现的<subcomponents>,SysML模块的分隔框<parts>与SysML模块之间的组成包含与被包含的关联关系,依据该关系将被包含模块转换为对应的AADL组件的子组件,子组件的组件类型(component_category)为对应的被包含的SysML模块类型,子组件的名称为对应的被包含SysML模块的名称;b)构建AADL组件类型实现的<connections>,基于SysML内部模块图构建AADL组件之间的连接,主要的转换规则为:
1)根据IBD图对应的SysML模块找到对应的AADL组件类型实现;
2)根据IBD图中连接线两端的SysML模块端口找到对应的AADL组件端口;
3)根据SysML端口传输的数据类型构建AADL组件端口传输的数据类型;
4)根据SysML连接线建立AADL组件连接。
进一步的,步骤四具体为,基于SysML简单状态和复合状态,根据AADL核心规范,针对所有的AADL组件类型,提出如下的AADL组件状态构建规则:
a)忽略SysML简单状态和复合状态的entry、do等内部状态;
b)SysML模块拥有的简单状态转换为对应的AADL组件的状态;
c)SysML模块拥有的复合状态不进行转换,复合状态中的子状态转换为对应的AADL组件的状态;
d)SysML模块拥有的复合状态如果有子状态机,则从外部状态进入时只能进入与子状态机的初始节点相连的状态;如果子状态机有结束节点,则只能从与结束节点相连的状态退出子状态机;如果子状态机没有初始节点或结束节点,则可以从子状态机的任一状态进入或退出子状态机;
e)SysML模块的复合状态没有子状态机,外部状态依照转换条件可以进入任意一个子状态。
进一步的,步骤五具体为,基于SysML状态机图中状态之间的转换,针对所有的AADL组件类型,提出如下的AADL组件状态转换的构建规则:
a)AADL核心规范的状态转换使用端口触发机制,这对应于SysML状态机事件触发机制中的信号事件和调用事件触发器;
b)转换表示的是模型的一种状态可以转换为另一种状态,SysML转换线两端对应模块状态转换的起始状态和目标状态,以此构建AADL组件状态转换的起始状态和目标状态;
c)信号事件触发器对应于SysML模块中的分隔框<receptions>,SysML信号事件触发器对应于AADL组件状态转换条件中的事件端口触发器;
d)调用事件触发器对应于SysML模块中的分隔框<operations>,调用事件触发器对应于AADL组件中的数据端口触发器或数据事件端口触发器;
e)弱SysML模块的状态转换没有转换条件,则AADL组件的状态转换条件同样为空;
f)根据触发状态转换的端口,判断由于AADL组件自身状态的转换而导致的子组件的变换,实现AADL子组件的动态配置。
本发明提供的一种基于SysML模块图的AADL模型构造方法,可以实现面向系统建模早期的SysML模块图的嵌入式系统架构建模,使设计的模型能够在系统开发的早期进行验证和确认,以构造高质量的架构模型。
通过本发明,用户可以实现基于SysML模块图的AADL模型的自动构造,用户可以在维护嵌入式系统架构模型、子系统模型关联关系的基础上,兼顾系统整体模型与子系统模型的非功能属性,完成嵌入式系统架构从软件到硬件层次的建模与验证。本发明可以在软件开发的早期阶段对系统架构模型的可行性和正确性进行验证,尽可能早的发现系统架构方面的问题,降低系统开发的成本,实现系统整体的高可靠、高安全等目标,为未来嵌入式系统的最终研制提供坚实的基础,并迈出关键步骤。例如,利用本发明,结合OSATE等开源软件,可以实现不同抽象层次的AADL设计模型非功能属性的验证建模,包括调度、实时性(包括流延迟、系统模态转换的实时性以及关键任务和线程执行的实时性)和可靠性。
附图说明
图1为SysML模块层次关系图;
图2为SysML模块图树形层次结构图;
图3为AADL组件类型声明示意图;
图4为AADL类型实现示意图。
具体实施方式
本发明的一种具体实施方式为:
本发明主要解决基于SysML模块图的AADL模型构造方法,包括AADL模型组件如系统组件、进程组件、线程组件、子程序组件、数据组件等的生成方法,AADL模型组件之间连接的生成方法,以及AADL模型组件状态机的生成方法。
步骤1:基于SysML模块图实现模块分类。
步骤101:SysML模块图的模块分类。
本发明使用SysML模块图中的继承关系来实现模块之间的层次关系,以方便使用SysML模块来区分AADL的各种软硬件组件类型。SysML模块图中的模块子类之间的继承关系具体如图1所示:
步骤102:基于SysML模块图及其树形结构生成。
本发明基于SysML模块图来详细描述系统的各个子系统整体结构,、实现系统自顶向下的完全分解。系统分解的过程中同时关注模块的对外接口,以说明系统模块之间的信息共享交互机制。通过SysML构建模块图的树形结构,可以清晰地说明嵌入式系统组件之间的层次关系和关联关系。基于SysML模块图的树形结构大致可以分为以下三层,具体层次结构如图2所示:
1)基于SysML模块图的树形结构的根节点是整个系统,建模者所有的建模都是对树结构的根节点进行描述,根节点一定为系统<system>;
2)基于SysML模块图的树形结构的第二层是各种子系统、硬件或者软件模块,该层的所有节点都对应于系统某个模块的整体功能,即功能模块。功能模块可以是<system>、<hardware>或<software>;
3)基于SysML模块图的系统树结构的第三层是各种硬件或者软件模块,该层的所有节点都对应于系统模块的特定功能,即功能单元。功能单元可以是<hardware>或<software>;
步骤2:基于SysML模块图构建AADL组件类型声明。
AADL组件类型通过特征、流约束以及属性集等进行声明,代表了系统中的某一个组件的抽象。其中组件特征<features>表示外部可见的,且可以与其他外部组件交互的窗口,主要包括端口、数据访问以及子程序调用三种类型;属性集<properties>表示组件本身固有的某些特性。AADL组件类型声明具体如图3所示:
步骤201:基于SysML模块定义图构建AADL组件。
假设SysML模块定义图中的所有模块都已经被正确分类,以此为基础,根据SysML模块图树结构的各个节点对应的模块类型,直接生成对应的AADL组件类型声明<component_category>,组件类型名称为节点名称<defining_component_type_identifier>。
步骤202:基于SysML模块图构建AADL组件端口。
本发明将SysML模块中的端口分为以下两种类型:
1)可以独立实现信息交互功能的端口。这种端口类似于模块,可以拥有内部结构并执行一定的行为,例如标准端口、全端口和嵌套端口。针对SysML中独立实现信息交互功能的端口,本发明将其转换为AADL中的子程序组件,并根据它所属的模块绑定到对应的AADL组件,同时根据端口中的功能实现进一步的细化:
如果端口中的功能含有输入值,则将其转换为<in parameter>;
如果端口中的功能含有返回值,则将其转换为<out parameter>;
如果端口中的功能可以被外部调用,则添加关键字<provides>;如果端口中的功能需要从外部调用,则添加关键字<requires>;
2)不可以独立实现信息交互功能的端口。这种端口仅代表拥有它的模块的外部接口,例如流端口和代理端口。针对SysML中不能独立实现信息交互功能的端口,在端口映射时转换为AADL组件类型声明<features>中的端口,并根据它所属的模块绑定到对应的AADL组件。同时本发明将根据端口完成的功能来进行进一步的区分:
如果端口中包含分隔框<values>或<operations>,则将转换为<data port>;
如果端口中包含分隔框<receptions>,则将转换为<event port>;
如果端口中包含分隔框[(values||operations)&&(receptions)],则将转换为<event data port>;
SysML模块端口的方向确定决定AADL组件的端口方向,有in、out、inout三种。
步骤203:基于SysML模块关系构建AADL组件关系。
本发明主要讨论如下两种SysML模块之间的关系:
1)SysML模块之间的泛化关系。主要反映了SysML模块之间的抽象,即SysML子模块不仅拥有它本身的特性,还拥有父模块的特性。本发明利用AADL组件之间的继承<extends>来构建SysML模块之间的继承关系,同时为了忽略AADL组件类型继承和组件实现继承的区别,本发明中所有的模块继承关系都基于AADL组件类型实现进行实现。
2)SysML模块之间的分配关系。主要反映了SysML模块中软件模块和硬件模块的关联关系。本发明将SysML模块之间的分配关系转换为AADL中软硬件组件之间的绑定关系。分配关系的映射转换主要针对以下三种软硬件关系:
软件和内存的绑定。主要针对类型为<data>、<subprogram>、<thread>、<process>的模块和类型为<memory>的模块,在AADL中使用<Actual_Memory_Binding>指定;
软件和处理器的绑定。主要针对类型为<thread>、<process>的模块和类型为<processor>的模块,在AADL中使用<Actual_Processor_Binding>指定;
组件连接和总线的绑定.主要针对<prot conections>、<subprogram access>等连接方式和类型为<bus>的模块,在AADL中使用<Actual_Connection_Binding>指定;
步骤3:构建AADL组件类型实现。
AADL组件类型实现是组件类型声明的一个具体实现,每个组件类型声明可以拥有零个到多个组件类型实现。AADL组件类型实现通过子组件<subcomponents>、子组件之间的连接<connections>、子程序调用<calls>、组件状态<modes>以及属性集<properties>来完成定义。AADL组件类型实现具体如图4所示。组件类型为对应的SysML模块类型(component_category),组件类型实现名称为对应的SysML模块名称加后缀字符串‘.impl’。
步骤301:构建AADL组件类型实现的<subcomponents>。
SysML模块的分隔框<parts>与SysML模块之间的组成关联关系表示被包含模块是包含模块的一部分,所以将被包含模块转换为对应的AADL组件的子组件。子组件的组件类型(component_category)为对应的被包含的SysML模块类型,子组件的名称为对应的被包含SysML模块的名称。
步骤302:构建AADL组件类型实现的<connections>。
SysML内部模块图IBD(Internal Block Diagram)主要是用来描述单个模块内部的信息交流以及模块与外部模块之间的信息交流,即SysML内部模块图主要反映了SysML模块之间的连接,所以本发明基于SysML内部模块图构建AADL组件之间的连接,主要的转换规则如下:
1)根据IBD图对应的SysML模块找到对应的AADL组件类型实现;
2)根据IBD图中连接线两端的SysML模块端口找到对应的AADL组件端口;
3)根据SysML端口传输的数据类型构建AADL组件端口传输的数据类型;
4)根据SysML连接线建立AADL组件连接。SysML模块之间连接线的方向即为AADL组件之间信息传输的方向;SysML流出信息的端口即为AADL组件连接的起始端口;SysML接收信息的端口即为AADL组件连接的结束端口。
步骤4:基于SysML状态机图构建AADL组件的状态。
基于SysML简单状态和复合状态,本发明根据AADL核心规范,针对所有的AADL组件类型,提出如下的AADL组件状态构建规则:
1)本发明忽略SysML简单状态和复合状态的entry、do等内部状态;
2)SysML模块拥有的简单状态转换为对应的AADL组件的状态;
3)SysML模块拥有的复合状态不进行转换,但是复合状态中的子状态需要转换为对应的AADL组件的状态;
4)SysML模块拥有的复合状态如果有子状态机,则从外部状态进入时只能进入与子状态机的初始节点相连的状态;如果子状态机有结束节点,则只能从与结束节点相连的状态退出子状态机;如果子状态机没有初始节点或结束节点,则可以从子状态机的任一状态进入或退出子状态机;
5)SysML模块的复合状态没有子状态机。外部状态依照转换条件可以进入任意一个子状态。
步骤5:基于SysML状态机图构建AADL组件的状态转换。
本发明基于SysML状态机图中状态之间的转换,针对所有的AADL组件类型,提出如下的AADL组件状态转换的构建规则:
1)AADL核心规范的状态转换使用端口触发机制,这对应于SysML状态机事件触发机制中的信号事件和调用事件触发器;
2)转换表示的是模型的一种状态可以转换为另一种状态,SysML转换线两端对应模块状态转换的起始状态和目标状态,本发明以此构建AADL组件状态转换的起始状态和目标状态;
3)信号事件触发器对应于SysML模块中的分隔框<receptions>,SysML信号事件触发器对应于AADL组件状态转换条件中的事件端口触发器;
4)调用事件触发器对应于SysML模块中的分隔框<operations>,调用事件触发器对应于AADL组件状态转换条件中的数据端口触发器或数据事件端口触发器;
5)如果SysML模块的状态转换没有转换条件,则AADL组件的状态转换条件同样为空;
6)根据触发状态转换的端口,判断由于AADL组件自身状态的转换而导致的子组件的变换,实现AADL子组件的动态配置。

Claims (10)

1.一种基于SysML模块图的AADL模型构造方法,其特征在于,包括以下步骤:
步骤一,基于SysML模块图进行模块分类;
步骤二,基于SysML模块图构建ADDL组件类型声明;
步骤三,基于SysML模块图构建AADL组件类型实现;
步骤四,基于SysML状态机图构建AADL组件的状态;
步骤五,基于SysML状态机图构建AADL组件的状态转换。
2.根据权利要求1所述的一种基于SysML模块图的AADL模型构造方法,其特征在于,所述的步骤一具体为:
a)用SysML模块图中的继承关系来实现模块之间的层次关系,使用SysML模块来区分AADL的各种软硬件组件类型;
b)基于SysML模块图详细描述系统的结构、实现系统自顶向下的完全分解,系统分解的过程同时关注模块的对外接口;通过构建模块图的树形结构,可以清晰地说明系统组件之间的层次关系和关联关系;树形结构分为三层。
3.根据权利要求2所述的一种基于SysML模块图的AADL模型构造方法,其特征在于,所述的三层树形结构具体为:第一层,基于SysML模块图的树形结构的根节点是整个系统,建模者所有的建模都是对树结构的根节点进行描述,根节点一定为系统<system>;第二层,基于SysML模块图的树形结构的第二层是各种子系统、硬件或者软件模块,该层的所有节点都对应于系统某个模块的整体功能,即功能模块;第三层,基于SysML模块图的系统树结构的第三层是各种硬件或者软件模块,该层的所有节点都对应于系统模块的特定功能,即功能单元。
4.根据权利要求1所述的一种基于SysML模块图的AADL模型构造方法,其特征在于,所述的步骤二具体为:
a)基于SysML模块定义图构建AADL组件;
b)基于SysML模块图构建AADL组件端口;
c)基于SysML模块关系构建AADL组件关系。
5.根据权利要求4所述的一种基于SysML模块图的AADL模型构造方法,其特征在于,所述的步骤二a)具体为:假设SysML模块定义图中的所有模块都已经被正确分类,以此为基础,根据SysML模块图树结构的各个节点对应的模块类型,直接生成对应的AADL组件类型声明<component_category>,组件类型名称为节点名称<defining_component_type_identifier>。
6.根据权利要求4所述的一种基于SysML模块图的AADL模型构造方法,其特征在于,所述的步骤二b)具体为:将SysML中的端口分为以下两种类型:
1)可独立实现信息交互功能的端口,拥有内部结构并执行一定的行为,将该端口转换为AADL中的子程序组件,并根据它所属的模块绑定到对应的AADL组件,同时根据端口中的功能实现进一步的细化;
2)不可以独立实现信息交互功能的端口,针对该端口,在端口映射时转换为AADL组件类型声明中的<features>中的端口,根据它所属的模块绑定到对应的AADL组件;同时根据端口完成的功能来进行进一步的区分。
7.根据权利要求4所述的一种基于SysML模块图的AADL模型构造方法,其特征在于,所述的步骤二c)具体为,包括两种SysML模块定义图中模块之间的关系:
1)SysML模块之间的泛化关系,利用AADL组件之间的继承<extends>来构建SysML模块之间的继承关系,所有的模块继承关系都在AADL组件类型实现中进行实现;
2)SysML模块之间的分配关系,将SysML模块之间的分配关系转换为AADL中软硬件组件之间的绑定关系,分配关系的映射转换主要针对以下三种软硬件关系:软件和内存的绑定,软件和处理器的绑定,组件连接和总线的绑定。
8.根据权利要求1所述的一种基于SysML模块图的AADL模型构造方法,其特征在于,所述的步骤三具体为:
a)构建AADL组件类型实现的<subcomponents>,SysML模块的分隔框<parts>与SysML模块之间的组成包含与被包含的关联关系,依据该关系将被包含模块转换为对应的AADL组件的子组件,子组件的组件类型(component_category)为对应的被包含的SysML模块类型,子组件的名称为对应的被包含SysML模块的名称;
b)构建AADL组件类型实现的<connections>,基于SysML内部模块图构建AADL组件之间的连接,主要的转换规则为:
1)根据IBD图对应的SysML模块找到对应的AADL组件类型实现;
2)根据IBD图中连接线两端的SysML模块端口找到对应的AADL组件端口;
3)根据SysML端口传输的数据类型构建AADL组件端口传输的数据类型;
4)根据SysML连接线建立AADL组件连接。
9.根据权利要求1所述的一种基于SysML模块图的AADL模型构造方法,其特征在于,所述的步骤四具体为,基于SysML简单状态和复合状态,根据AADL核心规范,针对所有的AADL组件类型,提出如下的AADL组件状态构建规则:
a)忽略SysML简单状态和复合状态的entry、do等内部状态;
b)SysML模块拥有的简单状态转换为对应的AADL组件的状态;
c)SysML模块拥有的复合状态不进行转换,复合状态中的子状态转换为对应的AADL组件的状态;
d)SysML模块拥有的复合状态如果有子状态机,则从外部状态进入时只能进入与子状态机的初始节点相连的状态;如果子状态机有结束节点,则只能从与结束节点相连的状态退出子状态机;如果子状态机没有初始节点或结束节点,则可以从子状态机的任一状态进入或退出子状态机;
e)SysML模块的复合状态没有子状态机,外部状态依照转换条件可以进入任意一个子状态。
10.根据权利要求1所述的一种基于SysML模块图的AADL模型构造方法,其特征在于,所述的步骤五具体为,基于SysML状态机图中状态之间的转换,针对所有的AADL组件类型,提出如下的AADL组件状态转换的构建规则:
a)AADL核心规范的状态转换使用端口触发机制,这对应于SysML状态机事件触发机制中的信号事件和调用事件触发器;
b)转换表示的是模型的一种状态可以转换为另一种状态,SysML转换线两端对应模块状态转换的起始状态和目标状态,以此构建AADL组件状态转换的起始状态和目标状态;
c)信号事件触发器对应于SysML模块中的分隔框<receptions>,SysML信号事件触发器对应于AADL组件状态转换条件中的事件端口触发器;
d)调用事件触发器对应于SysML模块中的分隔框<operations>,调用事件触发器对应于AADL组件中的数据端口触发器或数据事件端口触发器;
e)弱SysML模块的状态转换没有转换条件,则AADL组件的状态转换条件同样为空;
f)根据触发状态转换的端口,判断由于AADL组件自身状态的转换而导致的子组件的变换,实现AADL子组件的动态配置。
CN201910720499.6A 2019-08-02 2019-08-02 一种基于SysML模块图的AADL模型构造方法 Active CN110502211B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910720499.6A CN110502211B (zh) 2019-08-02 2019-08-02 一种基于SysML模块图的AADL模型构造方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910720499.6A CN110502211B (zh) 2019-08-02 2019-08-02 一种基于SysML模块图的AADL模型构造方法

Publications (2)

Publication Number Publication Date
CN110502211A true CN110502211A (zh) 2019-11-26
CN110502211B CN110502211B (zh) 2023-02-28

Family

ID=68587987

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910720499.6A Active CN110502211B (zh) 2019-08-02 2019-08-02 一种基于SysML模块图的AADL模型构造方法

Country Status (1)

Country Link
CN (1) CN110502211B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111191325A (zh) * 2019-12-24 2020-05-22 中国航空工业集团公司西安飞机设计研究所 一种基于SysML的飞机直接机务准备建模方法
CN111290783A (zh) * 2020-03-07 2020-06-16 上海交通大学 基于SysML模型的级联失效致因图形化系统
CN111596915A (zh) * 2020-05-19 2020-08-28 西安电子科技大学 基于状态机图的无人机飞行模式的c++代码生成方法
CN112306476A (zh) * 2020-11-03 2021-02-02 中国航空工业集团公司西安航空计算技术研究所 一种嵌入式系统安全性建模方法
CN112395818A (zh) * 2020-12-02 2021-02-23 北京信息科技大学 基于SysML的硬件算法模型构建方法
CN115454590A (zh) * 2022-08-09 2022-12-09 北京机电工程研究所 一种面向活动图的仿真调度方法和系统
CN115758789A (zh) * 2022-12-01 2023-03-07 金航数码科技有限责任公司 一种复杂实时嵌入式系统的软件架构设计与架构传递方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040143819A1 (en) * 2003-01-10 2004-07-22 National Cheng Kung University Generic software testing system and mechanism
CN102053910A (zh) * 2010-11-18 2011-05-11 西北工业大学 一种基于aadl模态蜕变关系的嵌入式软件测试方法
US20180150378A1 (en) * 2016-11-30 2018-05-31 Swaminathan Gopalswamy Verification of model-driven software architecture
CN109376469A (zh) * 2018-11-21 2019-02-22 中国航空无线电电子研究所 一种基于aadl的航电系统部件元模型的建模方法
CN109522007A (zh) * 2018-10-16 2019-03-26 南京航空航天大学 面向安全关键嵌入式系统的SysML模型向AADL模型自动转换方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040143819A1 (en) * 2003-01-10 2004-07-22 National Cheng Kung University Generic software testing system and mechanism
CN102053910A (zh) * 2010-11-18 2011-05-11 西北工业大学 一种基于aadl模态蜕变关系的嵌入式软件测试方法
US20180150378A1 (en) * 2016-11-30 2018-05-31 Swaminathan Gopalswamy Verification of model-driven software architecture
CN109522007A (zh) * 2018-10-16 2019-03-26 南京航空航天大学 面向安全关键嵌入式系统的SysML模型向AADL模型自动转换方法
CN109376469A (zh) * 2018-11-21 2019-02-22 中国航空无线电电子研究所 一种基于aadl的航电系统部件元模型的建模方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
PIERRE DE SAQUI-SANNES等: "Combining SysML and AADL for the Design, Validation and Implementation of Critical Systems", 《ERTS2 2012》 *
刘承威等: "面向限定自然语言需求的AADL自动生成工具", 《小型微型计算机系统》 *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111191325A (zh) * 2019-12-24 2020-05-22 中国航空工业集团公司西安飞机设计研究所 一种基于SysML的飞机直接机务准备建模方法
CN111191325B (zh) * 2019-12-24 2023-06-23 中国航空工业集团公司西安飞机设计研究所 一种基于SysML的飞机直接机务准备建模方法
CN111290783B (zh) * 2020-03-07 2023-04-28 上海交通大学 基于SysML模型的级联失效致因图形化系统
CN111290783A (zh) * 2020-03-07 2020-06-16 上海交通大学 基于SysML模型的级联失效致因图形化系统
CN111596915A (zh) * 2020-05-19 2020-08-28 西安电子科技大学 基于状态机图的无人机飞行模式的c++代码生成方法
CN111596915B (zh) * 2020-05-19 2022-12-02 西安电子科技大学 基于状态机图的无人机飞行模式的c++代码生成方法
CN112306476A (zh) * 2020-11-03 2021-02-02 中国航空工业集团公司西安航空计算技术研究所 一种嵌入式系统安全性建模方法
CN112306476B (zh) * 2020-11-03 2023-04-14 中国航空工业集团公司西安航空计算技术研究所 一种嵌入式系统安全性建模方法
CN112395818B (zh) * 2020-12-02 2023-05-26 北京信息科技大学 基于SysML的硬件算法模型构建方法
CN112395818A (zh) * 2020-12-02 2021-02-23 北京信息科技大学 基于SysML的硬件算法模型构建方法
CN115454590A (zh) * 2022-08-09 2022-12-09 北京机电工程研究所 一种面向活动图的仿真调度方法和系统
CN115758789A (zh) * 2022-12-01 2023-03-07 金航数码科技有限责任公司 一种复杂实时嵌入式系统的软件架构设计与架构传递方法
CN115758789B (zh) * 2022-12-01 2023-11-17 金航数码科技有限责任公司 一种复杂实时嵌入式系统的软件架构设计与架构传递方法

Also Published As

Publication number Publication date
CN110502211B (zh) 2023-02-28

Similar Documents

Publication Publication Date Title
CN110502211A (zh) 一种基于SysML模块图的AADL模型构造方法
Sangiovanni-Vincentelli et al. Taming Dr. Frankenstein: Contract-based design for cyber-physical systems
Wang et al. Integrating model checking with SysML in complex system safety analysis
CN111782539B (zh) 一种基于国产操作系统的测试诊断一体化开发平台
CN108089861B (zh) 一种从SysML模型转换到AltaRica模型的转换方法
CN101416164A (zh) 用于基于学习模型的生命周期诊断的方法和系统
CN102103504A (zh) 一种反射式建模工具及其重构方法
CN101739258A (zh) Aadl模型的自动代码生成方法
CN101673198A (zh) 一种验证uml模型中动态行为与时序契约的一致性的方法
CN109376469A (zh) 一种基于aadl的航电系统部件元模型的建模方法
CN115935872A (zh) 一种可扩展的fpga仿真验证自动化方法
Doucet et al. Introspection in system-level language frameworks: meta-level vs. integrated
Mueller et al. UML for ESL design: basic principles, tools, and applications
McInnes et al. Formalizing functional flow block diagrams using process algebra and metamodels
Varona-Gomez et al. AADL simulation and performance analysis in SystemC
Pang et al. Automatic model generation of IEC 61499 function block using net condition/event systems
Roshandel et al. Multi-view software component modeling for dependability
Bhave Multi-view consistency in architectures for cyber-physical systems
Xie et al. Unified property specification for hardware/software co-verification
CN110262795B (zh) 一种应用系统部署体系结构建模和验证方法
Aldrich et al. Managing verification activities using SVM
Ailane et al. Toward formalizing the emergent behavior in software engineering
Ahmad et al. An AADL-DEVS Framework for Cyber-Physical Systems Modeling and Simulation Supported with an Integrated OSATE and DEVS-Suite Tools
Calvez A system specification model and method
Leue et al. An AsmL semantics for dynamic structures and run time schedulability in UML-RT

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant