MARTE规范解读:简介
1 什么是MARTE
MARTE(Modeling and Analysis of Real-Time Embedded Systems)是UML面向实时和嵌入式系统的建模扩展。支持基于模型的实时和嵌入式系统的开发的全过程:需求定义->设计->实现->确认和验证。MARTE可以描述实时嵌入式系统的软件及其所运行的硬件设施,尤其关注性能和时序调度的建模。
使用MARTE可以获得的好处:
- 为实时嵌入式系统开发的硬件和软件方面提供一种通用的建模方法,以改善开发人员之间的交流。
- 支持需求、设计、验证、代码生成等工具之间的互操作性。
- 可以建立同时兼顾硬件和软件特性的模型,该模型可用于对系统的实时和嵌入式特性进行定量预测。
MARTE关注2个方向的建模:
- 实时和嵌入式系统
- 系统属性的分析的标记
2 MARTE规范有什么内容
如下是MARTE规范的内容图示:
图.MARTE 的架构
基础包包括(设计模型和分析模型都会使用一些基础概念,这些基础概念被放入基础包):
- Core Elements ,核心元素
- NFP ,非功能属性
- Time,增强的时间建模
- GRM,通用的资源建模
- GCM,通用组件模型
- Alloc ,分配建模
MARTE设计模型包括如下包:
- GCM,Generic Component Model, 通用组件模型
- HLAM,High-Level Application Modeling,高层应用模型
- SRM ,Software Resource Modeling, 软件资源建模
- HRM,Hardware Resource Modeling ,硬件资源建模
MARTE分析模型包括:
- GQAM, Generic quantitative Analysis Modeling ,通用定量分析建模
- SAM ,Schedulability Analysis Modeling,时间分析建模
- PAM ,Performance Analysis Modeling, 性能分析建模
MARTE附加包:
- VSL,Value Specification Language, 数值描述语言
- RSM,Repetitive Structure Modeling ,复用结构建模
- MARTE_Library, MARTE库,主要是一些基础的数据类型。
3 MARTE的用户和适用场景
MARTE的潜在的用户如下图所示:
1.模型设计者:这些是专门设计用于RT/E系统开发过程上下文中的模型的建模人员。模型可以用于通常的规格说明、设计或实现阶段。但是模型也可以用于分析,以确定它们是否会满足性能和可调度性需求。
2.RT/E系统架构师:他们是关注整体架构的特定建模人员,他们通常在硬件、软件或两者中实现功能之间进行权衡。
3.硬件建模者:这些是专门用于RT/E系统开发的硬件方面的建模人员。
4.硬件架构师:他们是负责设计硬件架构的建模人员。
5.软件建模者:这些是专门针对RT/E系统开发的软件方面的建模人员。
6.软件架构师:他们是关心设计软件架构的建模师。
7.模型分析师:这些建模者关心注释系统模型,以便执行特定的分析方法。
8.执行平台提供者:他们是运行时技术(基于硬件或软件的平台)的开发人员和供应商,例如实时CORBA、实时操作系统和特定的硬件组件。
9.方法论提供者:他们是负责为RT/E领域定义基于模型的方法的个人和团队。这个类别包括UML工具提供者。又可以进一步分为
- 9.1 设计方法提供者:这些是专门的方法提供者,他们负责定义基于模型的方法,用于指定、设计或实现RT/E系统。
- 9.2 分析方法提供者:这些是专门的方法提供者,他们负责定义基于模型的分析方法,如RMA或排队论,以及技术提供者,如工具供应商,提供支持特定模型分析方法的工具和过程。
这些用户使用MARTE的用例图如下:
MARTE 的规范的常见用例
场景 | MARTE提供的支持 |
软件建模 | 构建实时和嵌入式(RTE)软件应用程序及其非功能属性的建模。 |
硬件建模 | 构建实时和嵌入式(RTE)系统的高级硬件建模,包括其NFP。 |
系统架构设计 | 包括前面提到的软件建模和硬件建模的适用场景,以及分配的扩展单元。 |
性能分析 | 它包括解决实时和嵌入式系统(RTES)性能评估所需的扩展单元。 |
调度性分析 | 它包括解决实时和嵌入式系统(RTES)可调度性分析所需的扩展单元。 |
基础设施供应商 | 它包括了解决平台特定服务(例如操作系统服务)的定义和/或使用所必需的扩展单元。这可以用于创建RTOS服务模型库,以及指定平台所需的服务,以支持更高级别的RT设计方法。 |
方法学家 | 符合当前适用案例的工具应支持其他适用案例所需的所有扩展单元,这实际上意味着支持MARTE的所有必要特性。 |
MARTE的每个适用场景需要支持的扩展单元如下表