MetaGraph

MetaGraph 基于多架构统一建模语言 Karma 实现基于模型系统工程相关语言建模,架构驱动,代码生成, 指标分析验证及需求验证工具。Karma 语言是特定域建模 DSM 组织(http://www.dsmforum.org)认可的MBSE 形式化建模语言。

metagraph原理图

图 1 原理图

主要功能

·      实现不同通用建模语言及框架的模型库开发及建模,如 UML, SysML, BPMN, Capella, DoDAF, UAF 等。

·      实现特定域建模语言基于框架的模型库开发及建模,如 EAST-ADL 等。

·      可定制的架构驱动,即工具中架构模型之间的自动传递及转化。

·      可定制的代码生成,即工具中架构模型向其他代码及数据的自动传递及转化。

·      实现基于 Karma 语言的指标分析及验证

·      实现基于 Karma 语言的需求验证

·      支持模型与本体的信息的相互转化

主要特点

·      以文本可读的形式化语言表达 MBSE 模型

·      可以执行架构驱动与代码生成

·      支持模型状态机和系统架构的指标分解验证

·      支持自动执行联合仿真及故障树分析

MetaGraph 的核心理念是基于“文本可读的形式化语言”对复杂装备的需求、功能、逻辑、架构等系统工程视 点进行建模,并通过仿真分析及测试来验证指标的满足性及需求验证等。借助 MetaGraph 不仅可以在系统开 发的早期阶段形式化其需求、功能、逻辑、架构等视点,还可以在系统方案初步确认前的概念设计阶段检查系 统设计是否满足需求规范,从而极大地降低产品开发的成本与风险。

支持统一的 MBSE 语言形式化及建模

MetaGraph 通过 Karma 语言实现对元模型及模型的形式化描述,Karma 语言是一种面向对象的可读的文本 语言,有关模型的所有信息及数据都保形式化在  Karma  语言中,包括  GOPPRR  元元模型、元模型以及模型。 Karma 语言形式化模型支持面向对象的语法,例如“继承”“封装”等。

支持可定制架构驱动

MetaGraph 支持用于架构驱动的模型自动转换,通过架构驱动器实现一种模型(源模型)向其他模型(目标 模型)的转换,其中转换源模型及目标模型可以用不同的建模语言表达,例如从需求模型自动转换为物理架构 模型。

架构驱动器通过 Karma 语言编写模型转换规则,定义模型之间的映射规则,实现架构驱动的可定制化,架构 驱动器预置了常用的规则模板。

支持可定制代码生成

MetaGraph 支持自动生成目标代码以及报告文档。通过代码生成器将模型中的信息自动转换为目标代码,实 现模型数据向其他平台的传递及转化,例如通过物理架构生成 Simulink 的 M 代码实现 Simulink 仿真模型自 动生成,生成 Modelica 代码实现验证确认模型的自动生成,生成 XML 文档实现模型数据在网页端的展示。

MetaGraph  代码生成器通过  Karma  语言编写代码生成规则,进而实现目标代码的可定制化。代码生 成器提供了完整的代码生成规则模板,例如“属性输出”“元素遍历”“文件输出”“逻辑判断”等规则模板,此外, 代码生成器也预置大量 Karma 语言编写的生成器,例如可自动生成模型结构的 XML 文档等。

支持指标验证及需求验证

MetaGraph 使用 Karma 语言对需求指标进行建模、仿真并验证。MetaGraph 中包含了丰富的时间与逻辑运 算符,例如:“当…时”,“如果”,“大于”,“只有”等。通过对需求指标按照运算符进行逻辑公理描述,并验证 需求指标中是否满足公理描述;通过对仿真结果的观察,来验证需求规范中是否存在冲突与缺陷,进而保证了 需求规范的正确性。

MetaGraph 可以根据需求描述自动生成符合需求的测试用例,也可以在 MetaGraph 中使用 Karma描 述并执行形式验证。

支持验证的集成扩展性

MetGraph 支持其模型向本体转化,并导入集成仿真验证工具 Prajna 实现基于 FMU 的联合仿真、基于 HLA或 DDS 的分布式仿真、基于贝叶斯网络的故障树仿真及决策树仿真。

客户案例

§ 航天三院三部(用于建立某型号复杂装备开发过程中的需求)
§ 201 所(用于建立某型号复杂装备开发过程中的需求)