当前位置: 首页 > news >正文

【UML用户指南】-02-UML的14种图

1、结构图

1、类图(class diagram)

展现了一组类、接口、协作和它们之间的关系。

在面向对象系统的建模中所建立的最常见的图就是类图。类图给出系统的静态设计视图。

包含主动类的类图给出系统的静态进程视图。构件图是类图的变体。
 

2、对象图(object diagram)

展现了一组对象以及它们之间的关系。对象图描述了在类图中所建立的事物的实例的静态快照。

和类图一样,这些图给出系统的静态设计视图或静态进程视图,但它们是从真实案例或原型案例的角度建立的。
 

3、构件图 (component diagram)

展现了一个封装的类和它的接口、端口以及由内嵌的构件和连接件构成的内部结构。

构件图用于表示系统的静态设计实现视图。对于由小的部件构建大的系统来说,

构件图是很重要的(UML 将构件图和适用于任意类的组合结构图区分开来,但由于构件和结构化类之间的差别微不足道)。
 

4、组合结构图

组合结构图描述结构化类(例如:构件或类)的内部结构,包括结构化类与系统其余部分的交互点。组合结构图用于画出结构化类的内部内容。

5、包图(package diagram)

展现了由模型本身分解而成的组织单元以及它们的依赖关系。

6、部署图(deployment diagram)

展现了对运行时的处理结点以及在其中生存的构件的配置。部署图给出了体系结构的静态部署视图。通常一个结点包含一个或多个制品。

7、制品图 (artifact diagram)

展现了计算机中一个系统的物理结构。制品包括文件、数据库和类似的物理比特集合。

制品常与部署图一起使用。制品也展现了它们实现的类和构件。UML把制品图视为部署图的变体。

2、行为图

1、用例图(use case diagram)

展现了一组用例、参与者(一种特殊的类)及它们之间的关系。

用例图给出系统的静态用例视图。这些图在对系统的行为进行组织和建模上是非常重要的。

2、顺序图/序列图(sequence diagram)

顺序图和通信图都是交互图。交互图(interaction diagram)展现了一种交互,它由一组对象或角色以及它们之间可能发送的消息构成。

交互图专注于系统的动态视图。顺序图(sequence diagram)是强调消息的时间次序的交互图;通信图(communication diagram)也是一

种交互图,它强调收发消息的对象或角色的结构组织。顺序图和通信图表达了类似的基本概念,但每种图强调概念的不同视角,顺序图强调

时间次序,通信图强调消息流经的数据结构。定时图(不包含在本书中)展现了消息交换的实际时间。
 

交互图(interaction diagram)展现了一种交互,它由一组对象或角色以及它们之间可能发送的消息构成。交互图专注于系统的动态视图。

是一种交互图,强调消息的时间次序的交互图;

3、通信图(communication diagram)

是一种交互图,它强调收发消息的对象或角色的结构组织。

顺序图和通信图表达了类似的基本概念,

每种图强调概念的不同视角,

顺序图强调时间次序,

通信图强调消息流经的数据结构。

定时图展现了消息交换的实际时间。

4、状态图 (state diagram)

展现了一个状态机,它由状态、转移、事件和活动组成。状态图展现了对象

的动态视图。它对于接口、类或协作的行为建模尤为重要,而且它强调由事件引发的对象行为,这非常有助于对反应式系统建模。
 

5、活动图(activity diagram)

将进程或其他计算的结构展示为计算内部一步一步的控制流和数据流。

活动图专注于系统的动态视图。它对于系统的功能建模特别重要,并强调对象间的控制流程。
 

6、定时图/时序图(timing  diagram)

是一种交互图,它展现了消息跨越不同对象或角色的实际时间,而不仅仅是关心消息的相对顺序。

7、交互概览图

是活动图和顺序图的混合物


 

http://www.lryc.cn/news/357658.html

相关文章:

  • Linux驱动开发笔记(二) 基于字符设备驱动的I/O操作
  • 三品软件:打造高效安全的图文档管理体系
  • N1 one-hot编码
  • 数据库基础+增删查改初阶
  • 大模型日报2024-05-29
  • 如何摆脱打工人任人宰割的命运
  • “图片在哪”、“我是temunx”、“变成思维导图用xmindparser”gpt给出文本变字典
  • 【LeetCode】【5】最长回文子串
  • 主播们直播时的美颜是如何实现的?集成第三方美颜SDK方案详解
  • Leetcode - 131双周赛
  • 【CSharp】判断目录以及文件是否存在
  • kali基本扫描工具(自带)
  • 与MySQL的初相遇
  • 详解Spring IoCDI(一)
  • Android 14 - 绘制体系 - 概览
  • 【RAG论文】文档树:如何提升长上下文、非连续文档、跨文档主题时的检索效果
  • 【前端每日基础】day27——小程序开发
  • 【C语言】指针速览
  • Java基础学习:深入解析Java中的位运算符
  • 9.Redis之list类型
  • Git 的安装和使用
  • 大模型时代的具身智能系列专题(五)
  • 基于springboot+vue的社区医院管理服务系统
  • 车载电子电器架构 —— 智能座舱标准化意义
  • Compose在xml中使用滑动冲突处理
  • 微信网页版登录插件v1.1.1
  • 华为实训课笔记 2024
  • HTML静态网页成品作业(HTML+CSS)——宠物狗介绍网页(3个页面)
  • 网络模型-路由策略
  • 【MySQL精通之路】InnoDB(7)-锁和事务模型