架构图

月伴飞鱼 2024-06-23 15:20:26
架构相关
支付宝打赏 微信打赏

如果文章对你有帮助,欢迎点击上方按钮打赏作者!

画图工具:

https://excalidraw.com/

https://www.processon.com/

https://app.diagrams.net/

OmniGraffle:https://www.omnigroup.com/download/

用例图

从用户的角度而不是从开发者的角度来描述需求,分析产品的功能和动态行为。

基本元素

image-20240115141354253

用例

image-20240115141444959

关联关系

参与者与参与者间的泛化关系:

比如腾讯用户,包括微信用户和QQ用户两部分,但是使用腾讯业务时,只需要是腾讯用户即可。

此时,可以采用泛化关系,采用三角空心箭头作为指向。

image-20240115142131230

参与者与用例间的关联关系:

参与者与用例间是简单的关联关系,一个参与者可以有着多个用例。

image-20240115142218712

用例与用例间的泛化关系:

用例之间可以存在泛化关系,比如常见的支付,可以选择微信支付、支付宝支付等等,但是这个操作就是支付。

泛化关系采用三角空心箭头。

image-20240115142307126

用例与用例间的包含关系:

包含关系用来把一个较复杂用例所表示的功能分解成较小的步骤。

  • 通常可以这么理解,由基础用例向复杂用例转换的过程。

但是最终被参与者直接操作的还是基础用例。

包含关系的图形为虚线箭头加<<include>>,箭头指向复杂用例。

image-20240115142523572

用例与用例间的扩展关系:

扩展关系是指用例功能的延伸,相当于为基础用例提供一个附加功能。

特定条件出现时,该扩展用例的行为才会被执行。

扩展关系的图形为虚线箭头加上<<<exclude>>>,箭头指向基础用例。

image-20240115142602672

简单案例

image-20240115142640075

类图

泛化关系:在代码中体现为继承关系,设计上用空心箭头实线表示。

img

实现关系:在代码中体现在接口和实现关系,设计上用空心箭头虚线表示。

img

关联关系:在代码中体现为两个类之间存在语义上的关系,体现在类之间存在的隐约关系。

  • 关联关系常用于数据库表的设计,与数据库范式相对应。

1、单向关联:

  • 学生可以拥有书籍,学生知道书籍的存在,但是书籍无需知道学生的存在,学生可以拥有多本书籍,因此从学生指向书籍关联。

  • 设计上用箭头实线表示。

img

2、双向关联:

  • 学生知道老师的存在,老师知道学生的存在。

设计上用实线表示。

img

聚合关系:特殊的关联关系,体现整体和部分的关系,设计上用空心菱形实线箭头表示。

部门不存在,员工仍然可以存在,员工离职,部门仍然存在。

  • 体现的是0和n,整体和部分,整体不存在,部分仍然可以存在。

img

组合关系:特殊的关联关系,和聚合关系类似,体现整体与部分关系,设计上用实心菱形实现箭头表示。

  • 公司和部门关系体现在公司不存在,则部门也不存在了,前者掌握整体的生命周期。

体现在0和0、1和n,整体不存在,则部分不存在,整体存在,则部分存在。

img

依赖关系:没有直接的关系,仅仅在代码运行期间,产生的依赖,如将A类中间的时间属性赋值到B类中的时间属性。

  • A类中调用类中类型为B类的属性,A类中调用的方法,需要用到B类的信息等。

设计上用箭头虚线表示。箭头指向方为被调用方。

img

周期图

时间轴

img

生命周期图

图片

图片

图片

XY轴坐标图

图片

坐标轴带图标模板

图片

系统架构图

应用依赖图

图片

系统分层简图

图片

系统分层彩图

图片

多维系统架构分层图

图片

业务流程图

三角流程图

图片

块状流程图

图片

链式流程简图

图片

链式流程彩图

图片

分类数据图

矩阵分类图

图片

业务大图

矩阵式业务大图

图片

支付宝打赏 微信打赏

如果文章对你有帮助,欢迎点击上方按钮打赏作者!