前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >UML统一建模语言

UML统一建模语言

作者头像
WuShF
发布2023-11-19 08:41:12
1560
发布2023-11-19 08:41:12
举报
文章被收录于专栏:笔记分享笔记分享

UML包含3种构造块:事物、关系、图。

  • 事物:模型中代表性成分的抽象
  • 关系:把事物结合在一起
  • 图:聚集了相关的事物

事物

结构事务:模型的静态部分,包括类、接口、协作、用例、主动类、构件、制品、结点 行为事物:模型的动态部分,包括交互、状态、活动 分组事物:模型的组织部分,包括包 注释事物:模型的解释部分

关系

依赖:A变化会影响B 关联:描述了一组链,链是对象之间的连接。两个类之间可以有多个不同角色标识的关联。

  • 聚集:部分和整体生命周期不一致。整体消失了,部分仍然存在
  • 组合:部分和整体生命周期一致。整体消失了,部分也要消失

泛化:子元素共享父元素的结构和行为,父类泛化子类,子类继承父类 实现:一个类元指定由另一个类元保证执行的契约 关联的多重度:一个类的实例能够与另一个类的多少个实例相关联

  • 静态建模:类图、对象图、用例图
  • 动态建模:序列图、通信图、状态图、活动图
  • 物理建模:构件图、部署图

序列图、通信图被称为交互图。 类图:一组对象、接口、协作和它们之间的关系 用例图:一组用例、参与者已经它们之间的关系 对象图:某一时刻一组对象以及它们之间的关系 序列图(顺序图):以时间顺序组织对象之间的交互活动

类图

描述一组对象、接口、协作和它们之间的关系。 类图包括:

  • 接口
  • 协作
  • 依赖、泛化和关联关系

类中权限修饰符包括:

  • +:public公有的
  • -:private私有的
  • #:protected受保护的
  • ~:package包的

类图用于对系统的静态设计视图建模,支持系统的功能需求。以下三种方式使用类图:

  • 对系统的词汇建模
  • 对简单的协作建模
  • 对逻辑数据库模式建模

对象图

展示某一时刻一组对象以及它们之间的关系。 给出系统的静态设计视图和静态进程视图。 描述对象的静态快照。对象是类图中所建立事物的实例。 对象图包括对象和链。

用例图

用例图用于对系统的静态用例视图建模,支持系统的行为。两种使用方式:

  • 对系统的语境建模
  • 对系统的需求建模

展现一组用例、参与者以及它们之间的关系。 参与者:系统交互的外部实体,包括使用者、与系统交互的外部系统、基础设备。 用例:一个类,代表一类功能而不是使用该功能的某一具体实例。 关联:参与者和参与者之间。 包含、扩展:用例和用例之间。 扩展:一个用例执行的时候,可能会发生一些特殊的情况或可选的情况,这种情况就是这个用例的扩展用例。 泛化:子类继承父类,父类泛化子类。

交互图

对系统的动态方面建模。 有一组对象和它们之间的关系组成,包含它们之间可能传递的消息。 表现为序列图、通信图、交互概览图和计时图

  • 序列图:强调消息时间顺序
  • 通信图:强调接收和发送消息的对象的结构组织

一般包含对象、链和消息

序列(顺序)图

强调对象之间信息的时间顺序,用于展示系统中一个用例和多个对象的行为。 是场景的图形化表示,描述以时间顺序组织的对象之间的交互活动。

  • 参加交互的对象放在图的上方,水平排列
  • 通常,发起交互的对象放在左边,下级对象依次放在右边
  • 1.2.1:create():发送消息调用SR的create()方法,该方法须在SR中实现。

序列图有对象生命线:垂直的虚线,表示对象在一段时间内存在。 序列图有控制焦点:瘦高的矩形,表示一个对象执行一个动作所经历的时间段。

通信(协作)图

强调收发消息的对象的结构组织。展现对象之间的消息流及其顺序。

  • 通信图有路径:链的末端附上一个路径构造型。
  • 通信图有顺序号:消息前加数字前缀。

序列图和通信图是同构的,可以相互转换。

image.png
image.png

状态图

展现一个状态机:由状态、转换、事件和活动组成。 关注系统的动态视图。对反应型对象建模。描述一个对象在多个用例之间的行为。 状态:系统的行为模式,规定系统对事件的响应方式。

  • 响应包括:做动作、改变状态

状态图定义的状态有:初态、终态、中间状态

  • 初态:·黑圆点
  • 终态:黑圆点外加一个圆,可以没有,也可以有多个。
  • 状态:圆角四边形,必有状态名,可选状态变量、可选活动。

状态中活动表的语法格式:事件名(参数表)/动作表达式。 事件:引起系统做动作或转换状态的控制信息:事件(监护信息)/动作

  • 事件触发转换(迁移)
  • 如果没有事件名,则会自动触发转换。
  • 转换包括两个状态:源状态、目标状态。

动作可以在状态内执行,也可以在状态转换时执行。 三种标准事件:entryexitdo

  • entry:进入状态,立即执行
  • exit:退出状态、立即执行
  • do:内部活动、占有限时间、可以中断

活动图

特殊的状态图:展示系统内从一个活动到另一个活动的流程。 专注于系统的动态视图,强调对象间的控制流程。 包括:活动状态、动作状态、转换、对象。 常用方式:

  • 对操作流建模
  • 对操作建模

构件图

展现了一组构件之间的组织和依赖。 构件图专注于系统的静态实现视图。 将构件映射为一个或多个类、接口和协作。

image.png
image.png

部署图

面向对象系统的物理方面建模,展现制品的配置。 对静态部署视图建模,与构件图相关。 展现系统的软件和硬件的关系,在实施阶段使用。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-11-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 事物
  • 关系
    • 类图
      • 对象图
        • 用例图
          • 交互图
            • 序列(顺序)图
            • 通信(协作)图
          • 状态图
            • 活动图
              • 构件图
                • 部署图
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档