记录画图笔记

三、大公司实践:哪些必须画,哪些可以略?

图类型 是否必须 备注
系统架构图 ✅ 必画 项目评审、开发同步都需要
时序图 ✅ 必画 每个关键业务流程建议都画
部署图 ✅ 必画 交付上线、运维对接不可少
数据库ER图 ⚠️ 视情况 如果表少可以省略,但核心模块一定要画
功能流程图 ⚠️ 视情况 产品需求阶段有产出即可,开发侧通常参考,不一定自己画
状态图、类图等 ❌ 可选 通常用于复杂逻辑或多人协作时补充

不要所有功能都画图,而是聚焦以下内容:

  • 核心流程(如登录、支付、下单、退款等)
  • 系统间接口(微服务之间的调用)
  • 重复变更或多人维护的模块

图和文档要并行更新,避免图过期。

图要版本化管理 ,推荐放在 Git 项目文档目录下(如 /docs/design/

✅ 2. 流程图 / 泳道图 / 业务流程图

用途:展示一个完整业务流程的步骤、用户参与方、状态变化。

是否要做 场景 原因与建议
要做 涉及多个角色协作的流程(如 审核流、订单流、支付链路) 有助于对齐需求,避免遗漏关键逻辑,开发测试理解统一
要做 复杂状态变化(如:订单状态、审批状态) 泳道图可清晰展示不同用户或系统的操作边界
可以不做 单接口单操作场景,逻辑很简单(如"点击就执行") 这类流程写成文字+接口文档即可,画图反而啰嗦
可以不做 接口功能已经在时序图中完整表达了 如果时序图已涵盖流程,流程图可不画,避免重复工作

✅ 总结建议(给开发的实战建议)

图类型 什么项目要画 不画的替代方式
菜单图 / 模块结构图 做后台管理系统、SaaS 简单系统可直接列接口文档或接口分组
流程图 / 泳道图 有复杂业务流程,涉及多个角色 简单逻辑用接口注释或文字流程描述代替
权限功能表格 权限体系明确、多角色系统 权限不复杂时写在 PRD 或模块描述里

泳道活动图,更侧重于表达谁做了什么事;而时序图,除了强调流程中交互的消息和顺序,还表达谁对谁做了什么事。

我的体会是,遇到强调消息传递、时间顺序的,用时序图;遇到流程比较复杂、分支比较多的,用活动图。

相关推荐
韩家阿杰21 小时前
RabbitMQ技术的使用
1024程序员节
CoderYanger1 天前
动态规划算法-简单多状态dp问题:15.买卖股票的最佳时机含冷冻期
开发语言·算法·leetcode·动态规划·1024程序员节
CoderYanger1 天前
递归、搜索与回溯-FloodFill:33.太平洋大西洋水流问题
java·算法·leetcode·1024程序员节
CoderYanger2 天前
动态规划算法-斐波那契数列模型:2.三步问题
开发语言·算法·leetcode·面试·职场和发展·动态规划·1024程序员节
CoderYanger2 天前
动态规划算法-简单多状态dp问题:16.买卖股票的最佳时机含手续费
开发语言·算法·leetcode·动态规划·1024程序员节
CoderYanger2 天前
C.滑动窗口-求子数组个数-越短越合法——3258. 统计满足 K 约束的子字符串数量 I
java·开发语言·算法·leetcode·1024程序员节
CoderYanger2 天前
动态规划算法-路径问题:9.最小路径和
开发语言·算法·leetcode·动态规划·1024程序员节
CoderYanger2 天前
动态规划算法-路径问题:7.礼物的最大价值
开发语言·算法·leetcode·动态规划·1024程序员节
CoderYanger2 天前
动态规划算法-简单多状态dp问题:12.打家劫舍Ⅱ
开发语言·算法·leetcode·职场和发展·动态规划·1024程序员节
金融小师妹2 天前
机器学习驱动分析:ADP就业数据异常波动,AI模型预测12月降息概率达89%
大数据·人工智能·深度学习·编辑器·1024程序员节