第5章 搭建产品架构 — 1张表、4张图

产品经理最怕的场景是什么?评审会上,开发问"这个功能的状态有哪些?",你愣住了。改需求时,产品说"这个流程好像不太对",你发现想不全。这不是能力问题,是架构没搭好。

我是怕浪猫,这一章不讲理论,只讲实操。1张表、4张图,帮你把任何产品的架构搭得清清楚楚。

5.1 产品架构方法论

5.1.1 产品架构的本质与价值

产品架构是什么?简单说就是"把产品的所有要素组织起来的结构"。

为什么要画产品架构?因为人脑处理不了太复杂的信息。产品经理脑子里装着200个功能点、50个流程节点、30个角色------不画出来,根本理不清。

产品架构的三个价值:

第一:系统化思考的工具

画架构的过程就是强迫自己思考的过程。"内容模块和用户模块是什么关系?搜索功能依赖哪些基础能力?"架构图画着画着,这些问题就想清楚了。

第二:团队沟通的媒介

PRD评审时,一图胜千言。你花10分钟讲清楚架构图,比写1000字的设计说明更有用。开发、设计、测试看了架构图,就知道你要做什么。

第三:迭代决策的依据

产品迭代时,架构图告诉你"改A会影响B"。你知道改动的影响范围,才能做决策。没有架构图,改了一个地方可能引发三个地方的问题。

产品架构不是"写完就完了"的文档,而是"一直在用"的工具。好的架构图,每次迭代都应该拿出来对照。

5.1.2 1张表:功能清单/需求矩阵

功能清单表是产品架构的"地基"。没有这张表,所有架构图都是空中楼阁。

功能清单表的结构

ID 模块 功能名称 功能描述 用户角色 优先级 依赖功能
F001 用户 注册 手机号+验证码注册 访客 P0
F002 用户 登录 手机号+验证码登录 访客 P0 F001
F003 内容 发帖 发布图文/视频内容 创作者 P0 F001,F002
F004 内容 浏览 列表流浏览内容 消费者 P0
F005 内容 评论 对内容发表评论 消费者 P1 F001,F004

模块划分方法

模块划分有两种思路:

思路一:按业务域划分。适合复杂业务系统。

业务域 说明 模块示例
用户域 用户相关的一切 注册、登录、资料、会员
内容域 内容生产与消费 发帖、浏览、搜索、推荐
交易域 交易与支付 购物车、订单、支付、售后
社交域 社交互动 点赞、评论、关注、消息

思路二:按页面/功能入口划分。适合C端产品。

入口 包含功能
首页Tab 推荐流、分类入口、搜索入口
搜索Tab 搜索框、历史记录、搜索结果
发布Tab 发布器、内容编辑、话题选择
消息Tab 评论、赞、关注、系统通知
我的Tab 个人信息、设置、钱包、订单

功能清单表的自检标准

画完功能清单表后,问自己三个问题:

  1. 每一行都有明确的用户角色吗?没有用户角色的功能是"假功能"------你以为自己需要,其实没人用。
  2. 每一行都有清晰的优先级吗?P0/P1/P2/P3,不是给老板看的,是给自己排版本用的。
  3. 依赖关系是否完整?任何一个P0功能,如果依赖了P2功能,优先级应该提升。

5.1.3 4张图:信息架构图、功能架构图、业务流程图、状态机图

这四张图是产品架构的核心表达。

图1:信息架构图

信息架构图回答的问题是:"产品里有哪些信息,这些信息之间是什么关系?"

以电商App为例:

bash 复制代码
商品信息
├── 商品基础信息(名称、价格、库存)
├── 商品详情信息(图片、描述、规格)
└── 商品评价信息(评分、评价内容)
用户信息
├── 账户信息(手机、密码、昵称)
├── 收货信息(地址簿)
└── 资产信息(积分、优惠券、余额)
订单信息
├── 订单基础信息(订单号、时间、状态)
├── 订单商品信息(商品快照、数量)
└── 订单支付信息(支付方式、金额)

信息架构图的价值:帮助设计师理解"数据模型",帮助开发理解"数据库设计"。好的信息架构是前后端沟通的基础。

图2:功能架构图

功能架构图回答的问题是:"产品的功能是怎么组织的?哪些是底层能力,哪些是上层应用?"

以内容平台为例:

bash 复制代码
┌─────────────────────────────────────────┐
│              内容展示层                   │
│  [首页推荐] [搜索结果] [个人主页] [详情页]  │
└─────────────────────────────────────────┘
                      ↑
┌─────────────────────────────────────────┐
│              内容运营层                   │
│  [话题管理] [内容审核] [推荐算法] [搜索排序] │
└─────────────────────────────────────────┘
                      ↑
┌─────────────────────────────────────────┐
│              内容供给层                   │
│  [发布器] [内容处理] [媒资管理] [创作者工具] │
└─────────────────────────────────────────┘
                      ↑
┌─────────────────────────────────────────┐
│              基础能力层                   │
│  [用户体系] [权限体系] [通知体系] [数据分析] │
└─────────────────────────────────────────┘

功能架构图的价值:让你看清楚"复用关系"。如果两个功能都要用"搜索排序",你应该把搜索排序做成底层能力,而不是重复实现两次。

图3:业务流程图

业务流程图回答的问题是:"用户做一件事,要经历哪些步骤,每一步是什么?"

以电商下单流程为例:

bash 复制代码
开始 → 浏览商品 → 点击详情 → 选择规格 → 加入购物车 → 
去购物车结算 → 确认订单 → 选择地址 → 选择支付方式 → 
确认支付 → 跳转支付 → 支付成功 → 生成订单 → 结束

扩展流程:

bash 复制代码
加入购物车
├── 库存充足 → 加入成功
├── 库存不足 → 提示"已售罄" / "到货通知"
└── 未登录 → 跳转登录 → 登录后继续

确认支付
├── 余额充足 → 支付成功
├── 余额不足 → 提示"余额不足"
└── 支付超时 → 订单关闭

业务流程图的价值:帮你穷举所有可能。用户走的每一条路,你都要提前想清楚。没有业务流程图,上线后就会出现各种"没想到的bug"。

图4:状态机图

状态机图回答的问题是:"一个实体(订单、内容、用户)有哪些状态,这些状态之间是怎么转换的?"

以订单状态机为例:

bash 复制代码
[待付款] --付款成功--> [待发货] --商家发货--> [待收货] --确认收货--> [已完成]
    ↑                    |                    |
    └─────取消/退款───────┴───申请退款─────────┘

更复杂的状态机(考虑退货):

bash 复制代码
[待付款]
    │
    ↓ 付款成功
[待发货]
    │
    ↓ 商家发货
[待收货]
    │
    ├─→[确认收货]→[已完成]
    │
    └─→[申请退款/退货]→[退款/退货中]
              │
              ├─→[退款成功]→[已退款]
              └─→[退货成功]→[已退货]

状态机图的价值:开发看了状态机,就知道"每一种状态变化应该触发什么逻辑"。产品经理看了状态机,就知道"哪些状态转换容易出错"。很多订单bug,根源都是状态机没画清楚。

四张图不是"全部要画",而是"根据需要选择"。C端产品优先画业务流程图和状态机图。B端产品优先画功能架构图和信息架构图。没有标准答案,只有最适合你的选择。

四张图的适用场景

图类型 回答的问题 最适合的产品 优先级
信息架构图 有哪些数据? B端、平台型产品
功能架构图 功能如何组织? 所有产品
业务流程图 流程是什么? C端、交易类产品
状态机图 状态有哪些? 有状态变化的实体

5.2 产品架构实战

5.2.1 思维导图与流程图工具运用

好的工具让架构设计效率提升10倍。我用过的工具里,有三个最推荐。

工具一:XMind(思维导图)

适合画:功能清单表、信息架构图、功能架构图

XMind的优势是结构清晰、层次分明,适合梳理"包含关系"------"A模块包含B和C,B包含D和E"。缺点是对流程图和状态机图支持不好。

使用技巧:用XMind的"大纲模式"直接生成功能清单。每一行包含"模块/功能/描述/优先级",在XMind里一目了然。

工具二:ProcessOn(在线流程图)

适合画:业务流程图、状态机图

ProcessOn的优势是在线协作,团队可以同时编辑。模板库丰富,直接选用模板改一改就行。缺点是需要联网,离线体验一般。

使用技巧:用ProcessOn的泳道图来画跨角色的流程。每个泳道代表一个角色,横向看就能看到每个角色的工作。

工具三:Figma(设计协作)

适合画:所有类型的图(如果你愿意的话)

Figma的优势是设计工具的精度,适合画需要给设计师参考的架构图。缺点是学习曲线稍高,不如前两者"轻量"。

使用技巧:用Figma的框架工具画信息架构图。框架内可以嵌套框架,层次关系很清楚。

5.2.2 实战案例:资讯App产品架构搭建

用一个完整的案例,把"1张表、4张图"串起来。

背景

做一个面向职场人士的新闻资讯App,核心功能:新闻浏览、话题讨论、个人中心。

步骤一:功能清单表

ID 模块 功能名称 功能描述 用户角色 优先级
F001 首页 推荐流 算法推荐新闻 消费者 P0
F002 首页 分类浏览 按分类查看新闻 消费者 P1
F003 首页 搜索 搜索新闻和话题 消费者 P1
F004 详情 新闻阅读 阅读新闻正文 消费者 P0
F005 详情 评论 对新闻发表评论 消费者 P0
F006 详情 收藏 收藏新闻 消费者 P1
F007 话题 话题列表 浏览热门话题 消费者 P1
F008 话题 话题讨论 在话题下参与讨论 消费者 P1
F009 用户 登录注册 账户体系 访客/用户 P0
F010 用户 个人信息 修改昵称头像等 用户 P1
F011 用户 收藏管理 管理收藏的新闻 用户 P1
F012 用户 阅读历史 查看历史浏览记录 用户 P2

步骤二:信息架构图

bash 复制代码
用户数据
├── 账户(手机号、密码、第三方绑定)
├── 资料(昵称、头像、简介)
├── 行为(收藏记录、阅读历史)
└── 社交(关注、粉丝)

内容数据
├── 新闻(标题、正文、作者、来源、发布时间)
├── 分类(分类ID、名称、图标)
├── 评论(内容、用户、新闻、时间)
└── 话题(标题、描述、参与人数、热度)

系统数据
├── 推送记录
├── 广告配置
└── 内容推荐模型

步骤三:功能架构图

bash 复制代码
┌────────────────────┐
│      内容展示层      │
│  [首页推荐] [分类] [搜索] [话题] │
└────────────────────┘
         ↑
┌────────────────────┐
│      内容运营层      │
│  [内容推荐] [搜索排序] [话题热度] │
└────────────────────┘
         ↑
┌────────────────────┐
│      内容供给层      │
│  [新闻采集] [内容处理] [内容审核] │
└────────────────────┘
         ↑
┌────────────────────┐
│      基础能力层      │
│  [用户] [权限] [搜索] [推送] [数据] │
└────────────────────┘

步骤四:业务流程图

核心流程------阅读新闻:

bash 复制代码
打开App → 首页推荐流 → 点击新闻卡片 → 进入详情页 → 阅读正文 → 
发表评论 → 收藏 → 返回首页 → 浏览其他内容 → 退出App

扩展流程------搜索新闻:

bash 复制代码
点击搜索入口 → 输入关键词 → 展示搜索建议 → 点击搜索 → 
加载搜索结果 → 点击结果 → 进入详情页

异常流程------新闻加载失败:

bash 复制代码
点击新闻卡片 → 加载中(3秒)→ 加载失败(超时/网络异常)→ 
显示错误页 → 重试按钮 → 重试加载 → 加载成功

步骤五:状态机图

评论状态机:

bash 复制代码
[待发布] --点击发送--> [发布中]
                           ↓ 成功
                       [已发布] --被删除--> [已删除]
                           ↓ 被举报
                       [审核中] --通过--> [已发布]
                                      --不通过--> [已删除]

收藏状态机:

bash 复制代码
[未收藏] --点击收藏--> [已收藏]
                         ↓
                   [取消收藏] --> [未收藏]

架构设计不是"一次性完成"的工作,而是在产品迭代中持续完善的。新功能上线后要更新架构图,改了架构图要同步更新PRD------保持文档的一致性,比文档本身更重要。

产品架构迭代检查清单

检查项 频率 说明
功能清单更新 每次版本规划时 新增功能加入清单
信息架构更新 涉及数据结构变更时 和开发对齐数据模型
流程图更新 流程发生重大变更时 老流程作废,新流程替换
状态机更新 涉及状态变更时 和开发对齐状态逻辑

本章小结:产品架构是产品经理的"底层能力"。1张表(功能清单表)把你要做的事情列清楚,4张图(信息架构图、功能架构图、业务流程图、状态机图)从四个维度把产品结构表达清楚。架构清晰了,后面的设计、评审、开发才会顺畅。

本章核心知识点 一句话总结
功能清单表 所有功能的完整列表,含优先级和依赖
信息架构图 产品有哪些数据,数据之间的关系
功能架构图 功能如何分层组织,底层和上层的关系
业务流程图 用户做一件事的完整路径,含分支和异常
状态机图 一个实体的所有状态,以及状态之间的转换关系
工具选择 XMind梳理结构,ProcessOn画流程,Figma做精细设计

觉得有用?收藏起来,下次画产品架构直接照抄模板。

你画架构图时踩过什么坑?评论区说说。

关注怕浪猫,下期我们讲"交互原型设计"------Axure怎么用、原型怎么画、交互状态怎么设计,怕浪猫带你从零开始搞定原型。

系列进度 5/16

下章预告: 第6章是产品经理的手艺活。原型的画法看似简单,但大多数人画出来的原型------要么太简陋(没有交互),要么太花哨(开发做不出来)。下一章,我教你如何画一个"开发看了就知道怎么做"的原型。

相关推荐
word1 天前
AI Agent 工作流实战:从线性脚本到可维护的自动化系统
人工智能·产品
冬奇Lab1 天前
开源项目第181期:Open Code Review — 阿里巴巴内部锤炼的 AI 代码审查工具,token 消耗仅为通用 Agent 的 1/9
人工智能·开源·资讯
星期一研究室1 天前
飞书文档行文重点强调:五大招式,让你的信息“亮”起来!
微服务·产品·设计
星期一研究室2 天前
飞书文档层级标题的“潜规则”,让你的信息流精致呈现
微服务·产品·设计
冬奇Lab3 天前
开源项目第178期:OptMem — 426 个 token 的提示词,给 AI Agent 跨会话的持久记忆
人工智能·开源·资讯
领麦微红外3 天前
MLX90614国产替代:MEMS红外测温传感器核心参数全面比较
产品经理·智能硬件
星期一研究室3 天前
高颜值飞书封面、审美网站推荐、配色网站安利
微服务·产品·设计
苏灿烤鱼3 天前
今日 GitHub 热门|Agent 记忆重回榜首,+2,690 项目却只排第三
typescript·agent·资讯
冬奇Lab4 天前
开源项目第177期:Apache Airflow — 用 Python 写出来的工作流调度器,数据工程师的标配工具
人工智能·开源·资讯