首页/开发/系统分析与架构设计速查/剖面图与构造型(Profile / Stereotype)
需求分析与建模61 条

剖面图与构造型(Profile / Stereotype)

剖面图定义 UML 的扩展机制:通过构造型 «stereotype»、标记值与约束为特定领域(如 SysML、实时系统)定制建模语言。

剖面图是什么

剖面图定义 UML 的扩展机制:通过构造型、标记值与约束,为特定领域定制建模语言。构造型为已有元素附加领域语义,标记值是构造型附带的属性,例如某个服务构造型上附着服务水平等级与负责人。常见剖面包括面向系统工程的 SysML 与面向实时嵌入式的 MARTE。

为什么需要它

通用 UML 元素不足以表达领域特有概念时,直接发明新符号会让工具无法解析、团队各说各话;用剖面图扩展则保持与标准 UML 的兼容,图形能被工具识别,属性还能参与文档生成与校验。代价是扩展语义依赖团队约定,因此自定义构造型必须写进建模指南,说明适用场景、取值约束与负责人,否则图形语义会随人漂移。

基本信息

构造型为已有元素附加领域语义,按团队约定统一书写
标记值构造型附带的属性,如服务等级、负责人、依赖系统
约束用文字或形式化表达式限定元素的有效取值
常见剖面SysML 面向系统工程,MARTE 面向实时嵌入式
落地要求自定义构造型写进建模指南,明确语义与负责人

构造型定义示例(片段)

构造型定义示例(片段)
<stereotype name='service'>
  <tag name='SLA级别' type='enum' values='A/B/C'/>   # 枚举取值
  <tag name='负责人' type='string'/>                  # 文本属性
</stereotype>
# 使用:在服务元素上标注构造型与标记值
# 工单服务(service)SLA级别=A 负责人=某某

典型使用场景

  • 为服务与接口等元素补充服务水平、负责人等管理属性
  • 系统工程中表达需求、模块与物理部件,采用 SysML 剖面
  • 实时嵌入式系统表达时间与资源约束,采用 MARTE 剖面
  • 把领域约定固化进模型,供文档生成与校验工具使用
构造型与标记值让模型可以承载管理信息与领域约束,比在图形旁加注释更可靠,因为属性可以被工具读取与校验。
自定义构造型要在团队内约定含义并写进建模指南,否则图形语义各说各话,新人只能靠问人才能读懂模型。

易错点

  • 构造型命名随意,新人无法理解其含义,模型变成少数人的私有语言
  • 工具不支持自定义构造型时仍按图形约定沟通,评审中频繁产生误解
  • 标记值取值没有约束,同名字段出现多种写法,统计与校验都不可靠
  • 剖面被随意扩展却不纳入建模指南,人员交接时语义丢失
  • 用构造型承载过多实现细节,模型与代码之间失去稳定的对应关系

数据来源与参考

  • OMG UML 2.5.1 规范
  • OMG SysML 规范
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌