统一建模语言(UML)在软件研发过程中常用图接受:类图、用例图、时序图、状态图、活动图、流程图、顺序图

UML具有许多不同类型的图表,包括:

  • 静态图:用例图、类图、对象图、组件图、部署图
  • 动态图:活动图、状态图、时序图(又叫顺序图、序列图)、协作图

软件工程(软件工程中的各种图一般用于以下三个阶段):

需求分析阶段:

用例图:

用户与系统交互的最简表示形式,展现了用户和与TA相关的用例之间的关联关系。通过用例图,人们可以获知系统不同种类的用户和用例。它帮助开发团队理解系统的功能需求,包括基于基本流程的角色关系以及系统内用例之间的关系。用例图通常显示系统的全部用例或完成特定功能的一组用例,以及执行这些用例的角色。

用例图主要有4个构成元素:

参与者(Actor)是指存在于系统外部并直接与系统进行交互的人、系统、子系统或类外部实体的抽象。

系统(System)是用例图的一个组成部分,代表的是一个软/硬件或-一个活动等,并不是真正实现的软件系统。系统边界,指系统与系统之间的界限:

(一般已一个圆角矩形来表示系统)

用例(Use Case)用来描述系统提供给参与者的服务或功能。

关系(Association),表示参与者和用例间的关联关系。

流程图:

以特定的图形符号加上说明,表示算法的图,称为流程图或框图

概要设计阶段:

类图:

类图(Class diagram)是显示了模型的静态结构,特别是模型中存在的类、类的内部结构以及它们与其他类的关系等。

详细设计阶段:

时序图:(Sequence Diagram)又叫(顺序图、序列图、循序图)

是一种UML交互图。它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。它可以表示用例行为顺序,当执行一个用例行为时,其中的每条消息对应一个类操作或状态机中引起转换的触发事件

它显示具体用例(或者是用例的一部分)的详细流程,几乎自描述,并显示了流程中不同对象之间的调用关系,同时还可以很详细地显示对不同对象的不同调用。顺序图有两个维度:垂直维度显示消息/调用的序列,水平维度显示消息被发送到的对象实例。

状态图:

状态图(Statechart Diagram)是是描述一个实体基于事件反应的动态行为,显示了该实体如何根据当前所处的状态对不同的事件做出反应。通常我们创建一个UML状态图是为了以下的研究目的:研究类、角色子系统、或组件的复杂行为

初始/最终/选择状态 这三个都是伪状态(Pseudostate):

  • 初始状态:用一个实心圆形
  • 最终状态:用一个圆圈内嵌实心圆点表示
  • 选择状态:用一个菱形表示,条件分支上方括号内的文字表示**监护条件** (guard conditions)

一般状态

UML中使用一个圆角矩形表示一个一般状态

车辆行驶状态图

活动图:

活动图(activity diagram,动态图)活动图是UML用于对系统的动态行为建模的常用工具,它描述活动的顺序。活动图在本质上是一种流程图,着重表现从一个活动到另一个活动的控制流,是内部处理驱动的流程。

活动图的 图例符号与状态图一致。

相关推荐
JZC_xiaozhong20 小时前
OA 审批流与业务流程引擎区别:企业流程自动化进阶
运维·自动化·流程图·bpm·业务流程管理·流程设计可视化·流程监控
杨筱毅3 天前
【Android】Handler/Looper机制相关的类图和流程图
android·java·流程图
时光追逐者4 天前
一个使用 WPF 开发的 Diagram 画板工具(包含流程图FlowChart,思维导图MindEditor)
c#·.net·wpf·流程图
helloworddm4 天前
Orleans 流系统握手机制流程图
流程图
做科研的周师兄9 天前
【机器学习入门】8.2 主成分分析:一文吃透主成分分析(PCA)—— 从原理到核心逻辑
人工智能·算法·决策树·机器学习·流程图
做科研的周师兄13 天前
【机器学习入门】7.1 决策树 —— 像 “判断流程图” 一样做分类
决策树·机器学习·流程图
东风西巷14 天前
draw.io(免费流程图制作工具) 中文绿色版
学习·电脑·流程图·软件需求·draw.io
aesthetician1 个月前
ReactFlow:构建交互式节点流程图的完全指南
前端·流程图·react
fish-man1 个月前
测试流程图展示问题
linux·服务器·流程图
zzywxc7871 个月前
自动化测试框架是软件测试的核心基础设施,通过预设规则和脚本自动执行测试用例,显著提高测试效率和覆盖率。
运维·人工智能·自动化·prompt·测试用例·流程图