泳道图

  • 分为横向纵向泳道,可分开也可结合
  • 纵向一般划分为职能或者不同的业务模块
  • 横向一般划分为不同环节或者时间点

示例:

系统架构图

一般来说可分为:

  1. 访问层:访问设备、用户群体
  2. 应用层:各端提供哪些服务、不同设备使用方式、不同设备技术选型等
  3. 服务层:提供哪些后端服务
  4. 数据层:数据库存储哪些数据、存储方式、数据库技术选型
  5. 核心业务流程:有哪些核心业务流程

示例:

流程图

流程图各种元素名称和作用。

示例:

时序图

基本元素与关系:

元素 图形 含义 备注
角色(Actor) 系统外部参与者:人、外部系统、子系统等 常作为发起者/触发者出现在最左侧或最上方
对象(Object) 参与交互的对象/实例(或类) 命名常见3种:对象名:类名 、 :类名 (匿名对象)、 对象名: (只写对象名)
生命线(LifeLine) 对象在时间维度上的存在(时间线) 表示对象随时间推进的“存在期”,消息沿时间自上而下
控制焦点/激活条(Activation) 对象在某段时间内正在执行/占用控制权 常用于同步调用:表示方法执行区间、可嵌套(调用栈效果)
简单消息(Message) 对象之间的信息传递/调用 常见3 类:同步、异步、返回(见下三行)
同步消息(Synchronous Message) 发送方把控制权交给接收方并等待返回 常对应“函数调用/阻塞调用”,接收方通常出现Activation
异步消息(Asynchronous Message) 发送方不等待接收方返回,继续执行 常对应“事件/消息队列/并发执行”,不一定有返回消息
返回消息(Return Message) 表示过程调用的返回值/返回控制权 也可不画(很多图会省略返回消息以简化)
自反消息 对象内部方法调用自身/调用同对象其他方法 常配合Activation的嵌套显示递归或内部调用链

示例:

UML类图

下面的文章讲的挺好的,不赘述了:https://www.processon.com/knowledge/classdiagram

示例:

ER图

比较简单,一般用于数据库设计
文章教程:https://www.processon.com/knowledge/ertu

示例:

甘特图

甘特图的绘制原则一般有以下3条:

  1. 任务具体可执行:每项任务必须是具体的可执行的工作,最好有明确的优先级;
  2. 任务分配合理:人力资源一定要和工作内容匹配,让合适的人做合适的事;
  3. 时间安排合理:时间期限不能由管理层拍脑门敲定,具体的执行人员一定要参与时间的评估,要给任务预留缓冲时间。

示例:

此外还可使用AI生成PlantUML、Mermaid、xml文本,通过文本绘图方式绘图,具体可参考以下文章:https://juejin.cn/post/7496777696912949258?searchId=20260130144213D735083B2A9ADE1800F5

如有错误欢迎补充指正。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐