后端通识 - 后端工程开发常用的流程图类别

后端开发常用流程图类型 + 使用场景(直接复制用于文档、架构图、需求文档)

一、UML 系列(后端项目最主流)

1. 用例图 Use Case Diagram (功能)

作用:站在使用者视角,描述系统提供哪些能力适用:需求分析、对外平台、用户 / 管理员功能边界

2. 类图 Class Diagram (类之间关系)

作用:实体、DTO、Service、数据库模型、类之间关系(继承 / 关联 / 聚合)适用:领域模型设计、DDD 领域对象、微服务实体设计

3. 时序图 Sequence Diagram ⭐后端高频 TOP1 (接口调用流程时间顺序)

后端开发使用最多 横向参与者,纵向时间顺序,展示接口调用流程、同步 / 异步、跨服务交互场景:

  • 登录流程、下单流程
  • 微服务之间 RPC 调用
  • 网关→服务→MQ→消费者完整链路

4. 活动图 Activity Diagram (流程分支流转)

作用:业务流程、分支判断、循环、任务流转(类似标准流程图)场景:审批流、订单状态流转、退款业务、多种分支业务判断

5. 状态图 State Diagram (实体状态周期变化)

作用:描述单个实体生命周期状态变化场景:订单状态、支付状态、工单、审批节点、任务调度状态

6. 组件图 Component Diagram (模块依赖关系)

作用:系统内部模块、依赖关系场景:模块化拆分、分层架构展示

7. 部署图 Deployment Diagram (服务部署关系)

作用:服务部署拓扑、服务器 / 容器、中间件物理部署场景:上线架构、集群部署、阿里云 ECS/RDS/Redis/MQ 拓扑


二、架构类图表(技术方案、架构文档)

1. 架构图(分层架构图 / 系统架构图)

常见叫法:

  • 分层架构图(Controller → Service → Mapper)
  • 微服务架构图
  • 领域架构图(DDD)展示模块划分、依赖、中间件(Redis、MQ、DB、网关)

2. 数据流图 DFD(Data Flow Diagram)

关注:数据从哪里来、经过哪些处理、流向哪里、存储在哪场景:ETL、数据同步、报表、向量数据入库(你的 PostgreSQL 向量库流程很适合)

3. C4 架构图(现代后端架构推荐)

分层:Context(上下文)→ Container(容器 / 服务)→ Component(组件)→ Code(代码)适合微服务大型项目,标准技术架构文档。


三、业务流程 & 运维流水线相关

1. BPMN 流程图(业务流程建模)

专门用于复杂审批流、工作流(Flowable、Camunda)

和普通活动图区别:支持泳道、任务执行人、流程引擎解析

2. CI/CD 流水线图

场景:代码提交 → 编译 → 测试 → 打包 Jar → 部署就是你之前学习的 GitLab CI-CD 流程图表

3. ER 图(实体关系图 ERD)⭐后端必备

数据库表结构、表与表外键、关联关系MySQL / PostgreSQL 建表设计必画。


四、消息 & 并发场景专用

1. 泳道图(可以是活动图 / 时序图变种)

按角色 / 服务划分泳道:前端、网关、A 服务、B 服务、MQ、定时任务多人 / 多服务协作业务流程首选。

2. 事件风暴图 Event Storming(DDD 领域驱动)

领域建模,命令、事件、聚合根,复杂业务中台项目


快速选型对照表(后端日常直接照这个选)

表格

需要表达什么 优先选用图表名称
接口调用、跨服务请求链路 时序图
订单 / 工单多分支业务流程 活动图(泳道图)
订单状态、实体状态变更 状态图
数据库表结构设计 ER 图
系统整体模块、微服务拓扑 架构图 / C4 图
领域对象、类之间关系 类图
CI-CD 自动部署流程 活动图 / 流水线流程图
数据同步、向量入库数据流 数据流图 DFD
审批引擎工作流 BPMN 流程图

补充小知识(画图工具对应)

  • PlantUML:时序图、类图、活动图(代码生成图表,开发最爱)
  • Draw.io/ Excalidraw:架构图、泳道图、数据流图
  • PowerDesigner / Navicat:ER 图
  • MiGrate、flowable-modeler:BPMN 流程

补充:UML全称是什么,UML是用来做什么的?

UML 全称:Unified Modeling Language(统一建模语言)

作用:用于软件系统进行可视化、详述、构造和文档化的标准化建模语言。

相关推荐
WIN赢1 小时前
【抽象思想-从复杂中抽离简单、收敛的口子】
java·前端·javascript
captain3761 小时前
多线程单例模式
java·单例模式·java-ee
xiaotianyuanma2 小时前
【计算机毕业设计】基于Spring Boot的体育馆预约系统的设计与实现
java·spring boot·课程设计
何以解忧,唯有..2 小时前
MySQL 索引分类与底层原理深度剖析
java
水无痕simon2 小时前
6、六大工作模式-2
java·rabbitmq
2601_963870212 小时前
【计算机毕业设计】基于Spring Boot的非遗文创产品交易平台的设计与实现
java·spring boot·后端
lv__pf2 小时前
Spring之AOP底层源码解析(下)【TL spring14】
java·后端·spring
水无痕simon3 小时前
5、六大工作模式-1
java
KhalilRuan3 小时前
UnityCsReference——笔记
java·开发语言·笔记