软件开发各阶段图表速查

按阶段整理架构图、数据流图、UML图及项目管理图表,每张图配一个示意小样,可切换到更丰富的示例

每张图默认为简例,可单独切换;也可以一次展开全部:

系统上下文图

概念
用户 短信服务 运营后台 支付网关 订单系统 (本系统) 下单 通知 配置 支付
系统边界 用户 运营后台 支付网关 短信服务 风控服务 物流系统 订单系统 (本系统) 下单 / 查询 发货单 配置 支付 通知 风控

界定系统与外部实体(用户、外部系统)的边界,展示数据/信息如何跨越边界流动,是概念阶段最宏观的一张图。

概念设计 / 需求早期

概念架构草图 / 方块图

概念
用户端(Web / App / 小程序) 业务应用 商品服务 订单服务 用户服务 数据库 / 缓存 / 文件存储
用户端:Web · App · 小程序 · 客服台 业务应用 商品服务 订单服务 用户服务 库存服务 支付服务 营销服务 消息队列 · 缓存 · 全文检索 MySQL 主从 · 对象存储

以高层方块展示系统的主要功能模块及其关系,不涉及技术细节,用于向非技术干系人传达整体构想。

概念设计

可行性分析结构图

概念
可行性研究 经济可行性 · 成本估算 · 收益预测 技术可行性 · 技术选型 · 团队能力 组织可行性 · 组织流程 · 干系人支持 可行性结论 技术可行 · 成本可控 · 建议立项
可行性研究 经济可行性 技术可行性 组织可行性 进度可行性 成本估算 技术选型 流程适配 里程碑 收益预测 团队能力 干系人支持 资源到位 可行性结论 技术可行 · 成本可控 · 风险可接受 · 建议立项

从经济、技术、组织三维度评估项目可行性,使用系统流程图或结构图辅助论证,产出可行性研究报告。

立项阶段

业务流程图 / 泳道图

需求
客户 客服 系统 提交申请 人工审核 生成工单 短信通知 确认结果
客户 客服 系统 风控 提交申请 确认结果 资料初审 结果通知 生成工单 短信通知 风控审核 通过 拒绝 通知

描述业务从起点到终点的完整流转,泳道图额外标明各部门/角色的职责边界,用于理解业务现状并识别系统支撑点。

需求分析

用例图

需求
订单系统 下单 查询订单 取消订单 支付 客户 支付网关
订单系统 下单 支付 查询订单 取消订单 申请退款 客户 支付网关 运营人员

以参与者和用例为核心描述系统对外功能集合。需求阶段使用业务用例图捕获客户需求,是SRS的核心配图。

需求分析

数据流图(DFD)

需求
客户 1 校验订单 2 生成工单 D1 订单表 订单 校验通过 写入 处理结果
客户 1 校验订单 2 生成工单 3 扣减库存 D1 订单表 D2 客户表 D3 库存表 订单 校验通过 锁定库存 写入 读取 扣减 处理结果

从数据流动角度刻画系统,展示数据从输入到输出的加工过程,配套数据字典使用,是结构化分析的核心工具。

需求分析

原型图(线框图 / 高保真)

需求
订单列表 提交
搜索商品 立即购买 跳转 列表页 详情页

产品经理绘制,用于与客户确认交互逻辑和界面布局,是需求确认的重要依据。

需求分析

状态图

需求
待支付 已支付 已发货 已取消 已完成 支付 发货 取消 签收
待支付 已支付 待发货 已取消 退款中 已发货 已完成 支付 备货 发货 签收 取消 申请退款 退款完成

描述业务实体在生命周期中的状态变化及触发条件,适用于订单、工单、审批流等状态敏感场景。

需求 / 详细设计

概念 ER 图

需求
客户编号 订单号 下单时间 客户 订单 下单 1 N
客户编号 客户等级 订单号 下单时间 商品编号 库存量 客户 订单 商品 下单 包含 1 N 1 N

以实体-关系模型表达核心业务实体及其关系,用于与业务方确认数据需求,不涉及具体表结构。

需求 / 概念数据设计

系统架构图

方案
表现层 Web · App 应用层 订单 · 商品 · 用户 领域层 实体 · 业务规则 基础设施层 DB · 缓存 · MQ 外部依赖 支付网关 短信服务 对象存储
表现层 Web · App · 小程序 接入层 网关 · 鉴权 · 限流 应用层 订单 · 商品 · 用户 领域层 聚合根 · 领域服务 基础设施层 DB · Cache · MQ 外部依赖 支付网关 短信服务 对象存储 横切关注点 · 日志 / 链路追踪 · 监控 / 告警 · 安全 / 限流

展示系统分层结构或组件拓扑关系,是方案文档中最核心的一张图,概要设计阶段的核心产物。

方案 / 概要设计

部署图

方案
浏览器 客户端 «server» 应用服务器 Tomcat · App 数据库 MySQL HTTPS JDBC
«device» 浏览器 «node» Nginx 集群 «node» 对象存储 «container» 应用节点 A Spring Boot «container» 应用节点 B Spring Boot «database» MySQL 主 3306 «cache» Redis 缓存 «queue» Kafka «database» MySQL 从 HTTPS 反向代理 读写 缓存 消息 复制

描述软件组件在物理节点(服务器、容器、云资源)上的分布及节点间通信路径,方案阶段绘制有助于提前对齐运维需求。

方案 / 实现 / 部署

时序图 / 顺序图

方案
用户 Web 服务 数据库 提交订单 createOrder() INSERT OK 订单号 下单成功
用户 Web 订单服务 库存服务 数据库 提交订单 createOrder() lockStock() UPDATE stock OK 锁定成功 校验金额 订单号 下单成功

展示对象之间按时间顺序的消息交互,概要设计阶段表达模块间接口调用关系,详细设计阶段细化到方法级别。

方案 / 详细设计

类图

方案
Order - id: Long - amount: Money + pay(): bool + cancel(): void Customer - id: Long - name: String «interface» Payment + pay(): bool 1 N «use»
«interface» Payment + pay(): bool AlipayPay + pay(): bool + refund() WechatPay + pay(): bool + refund() Order - id: Long - amount + pay(): bool OrderItem - qty: int - price: Money Customer - id: Long - name: String «use» 1 N N 1

描述系统中类、属性、方法及类间关系。概要设计阶段描述静态结构并设计接口,详细设计阶段产出指导编码的类图。

方案 / 详细设计

包图

方案
ui · 表现层 service · 业务层 dao · 数据层 import import import
表现层 ui 应用层 application 领域层 domain 基础设施层 infrastructure 公共模块 · common «use» «use» «use» «use» «use» «use» «use»

组织类和其他模型元素,展示模块划分和依赖关系,适合中大型系统的架构分层表达。

方案 / 概要设计

逻辑 ER 图 / 物理 ER 图

方案
客户表 customer id BIGINT PK name VARCHAR(50) phone VARCHAR(20) created_at DATETIME 订单表 orders id BIGINT PK customer_id BIGINT FK amount DECIMAL(10,2) status TINYINT created_at DATETIME 1 N
客户表 customer id BIGINT PK name VARCHAR(50) phone VARCHAR(20) level TINYINT created_at DATETIME 订单表 orders id BIGINT PK customer_id BIGINT FK amount DECIMAL(10,2) status TINYINT created_at DATETIME order_item 明细 order_id + product_id 联合主键 1 N 1 N

概要设计阶段绘制逻辑 ER 模型用于团队和客户确认;详细设计阶段转换为具体表结构,确认主外键并应用范式审核。

方案 / 详细设计

组件图

方案
IOrderService «component» 订单组件 OrderComponent «component» 支付组件 PayComponent «use»
IOrderService «component» 订单组件 OrderComponent IPayService «component» 支付组件 PayComponent «component» 库存组件 «component» 仓储组件 RepoComponent «use» «use» «use» «use»

以组件及其关系的形式表示软件系统的高层结构,在设计阶段展示系统架构的构成单元。

方案 / 概要设计

详细类图 / 方法级时序图

开发
:OrderService :OrderRepo save(order) validate(dto) updateStatus() Order(id=1)
:Controller :OrderService :OrderRepo submit(req) save(entity) SQL id orderId audit() insertLog() ok

在概要设计基础上扩展细化,为每个模块确定算法和数据结构,直接指导代码编写。

详细设计 / 开发

活动图

开发
接收订单 有货? 锁定库存 通知补货 是 否
接收订单 参数合法? 返回校验失败 校验库存 校验优惠 冻结额度 生成订单 否 是

描述复杂业务逻辑或算法流程中的控制流,适合表达有分支、并发和同步的场景。

详细设计

数据库 Schema 图

开发
orders · 订单表 id BIGINT · PK user_id BIGINT · FK → users.id status TINYINT amount DECIMAL(10,2) created_at DATETIME INDEX idx_user_status (user_id, status)
users · 用户表 id BIGINT PK phone VARCHAR(20) UK nickname VARCHAR(50) status TINYINT created_at DATETIME orders · 订单表 id BIGINT PK user_id BIGINT FK amount DECIMAL(10,2) status TINYINT created_at DATETIME order_item · 订单明细表 order_id + product_id 联合主键 · qty INT 1 N 1 N

展示所有数据表的字段、类型、索引和表间关系,是开发阶段直接用于建库的蓝图。

详细设计 / 开发

甘特图 / 路线图

汇报
1月 2月 3月 4月 5月 需求调研 方案设计 编码开发 测试验收 上线 里程碑
1月 2月 3月 4月 5月 阶段 今天 需求调研 方案设计 编码开发 测试验收 上线发布 里程碑

用于进度汇报、里程碑管理和资源分配。立项阶段出具初版,迭代过程中持续更新。

全阶段 / 汇报

燃尽图 / 燃起图

汇报
80h 40h 0 D0 D2 D4 D6 D8 理想 实际
80h 60h 40h 20h 0 D0 D2 D4 D6 D8 需求新增 +8h 理想 实际

敏捷开发中可视化每个 Sprint 的剩余工作量变化,每日站立会产出燃尽图。

敏捷迭代 / 汇报

用户故事地图

汇报
浏览商品 加入购物车 下单支付 查看订单 搜索商品 加入购物车 填写地址 订单列表 分类筛选 修改数量 选择支付 物流跟踪 商品详情 删除商品 提交订单 申请退款 MVP V1.1 V2.0
浏览商品 购物车 下单支付 查看订单 售后服务 MVP 商品列表 加入购物车 提交订单 订单列表 V1.1 分类筛选 修改数量 在线支付 物流跟踪 申请退款 V2.0 商品评价 收藏夹 优惠券 发票管理 售后工单 V3.0 智能推荐 拼团 分期支付 订阅提醒 在线客服 发布边界:MVP 只做下单主流程,其余按版本递进

敏捷规划阶段将用户故事按用户旅程排列,形成产品全景图,产出“产品地图”。

敏捷规划 / 汇报

简化架构图(汇报版)

汇报
用户入口:Web · App · 小程序 接入层 业务应用:订单 · 商品 · 用户 · 支付 业务层 数据与中间件:MySQL · Redis · MQ 数据层
接入层 Web · App · 小程序 · 公众号 日均 10w 请求 业务层 订单 · 商品 · 用户 · 支付 核心 5 个业务域 数据层 MySQL · Redis · MQ · ES 可用性 99.9% 运维保障 监控告警 · 日志 · 灰度发布 7×24 值守 HTTPS SQL / Cache

将详细架构图简化为“一页纸架构图”,突出核心分层、关键组件和外部依赖,便于非技术决策者快速理解。

汇报 / 评审