十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

产品经理必懂的业务架构、应用架构与数据架构实战指南

产品经理必懂的业务架构、应用架构与数据架构实战指南 我刚做产品经理那会儿最怕听到的词里“架构”绝对排前三。技术团队开会动不动就聊业务架构、应用架构、数据架构我表面点头内心全是大写的问号这不都是程序员的事吗我老老实实画好原型、写好需求文档还不够吗后来被现实狠狠教育了一次。一个供应链协同项目业务方说“要一个订单协同功能”我按理解写了详细的需求文档技术团队也按期开发上线了。结果用了一个月业务方投诉不断销售想看订单进度仓库说没这权限财务要的数据库里根本没有字段运营想统计数据口径对不上。整个项目乱成一锅粥。复盘时技术负责人丢给我一句话“这件事从一开始的业务架构就没理清后面应用和数据全都是各干各的。”那次之后我才明白业务架构、应用架构、数据架构不是技术人员的专属品它们其实是产品经理在做需求分析、方案设计时绕不开的三种思维框架。这篇文章我就用自己踩坑换来的经验把这三者到底是什么、有什么区别、怎么落地一次性讲透。适合正在从“画原型”向“做方案”进阶的产品经理也适合业务分析师、刚转行做产品的朋友参考。1. 为什么产品经理要懂三种架构1.1 架构不是技术专属品我先说一个推翻自己旧认知的观点架构本质上是一种“结构化的思维方式”跟写不写代码没关系。你去餐厅吃饭看到的菜单是“产品体验”后厨的备菜流程是“业务流程”厨房不同灶台怎么分工是“应用架构”食材怎么采购、怎么存储、怎么保质是“数据架构”。一家餐厅能稳定运转靠的不是某个厨师超常发挥而是这套结构本身合理。产品经理做需求也是一样。你画的原型只是“界面层”界面背后要支撑哪些业务流程、哪些系统功能、哪些数据字段才是决定项目能不能落地的关键。如果产品经理只关注页面长什么样而不关注背后的结构需求到了技术手里就会产生大量歧义。技术同学只能自己猜猜对了是运气猜错了就是返工。我自己的习惯是接到一个稍复杂的需求先不着急画原型而是先想三件事业务上这件事怎么跑通系统上要哪些能力支撑数据上要记录哪些内容想清楚这三件事原型反而画得飞快。这就是架构思维最朴素的应用。1.2 三种架构各管一段谁也替不了谁业务架构、应用架构、数据架构听起来像三兄弟但它们的关注点完全不同。我用一张表帮你快速建立整体认知架构类型回答的核心问题主要关注对象一句话本质业务架构业务怎么运转为什么这么做业务目标、业务流程、组织职责、业务规则业务架构定方向应用架构系统怎么支撑业务谁来承接应用系统、模块划分、接口依赖应用架构定能力数据架构数据怎么组织怎么流转怎么治理数据模型、数据流转、数据标准数据架构定资产打个比方你计划装修一套房子。业务架构是“我们需要一个客厅、三个卧室、两个卫生间生活动线怎么走谁住哪间”应用架构是“这些房间分别由哪个施工队负责水电、木工、油漆怎么衔接”数据架构是“家里的电线怎么布线、水管怎么走、每个开关控制哪盏灯”。三者是同一件事的三个侧面不是三段独立的流程。业务架构定义清楚“做什么、为什么做”应用架构决定“用什么系统模块来承接”数据架构回答“这些操作会留下哪些数据资产、数据如何流转”。如果只做其中一两个项目一定出问题。很多产品经理喜欢一上来就画页面流程图然后直接丢给技术。这就是没有经过架构梳理的典型表现。页面流程是“用户操作路径”业务架构是“业务运转逻辑”应用架构是“系统协作方式”数据架构是“数据的产生与消费”。四者有关系但不等于一件事。产品经理至少要能在脑子里把这三层结构分开并且能把它们对齐起来。这才是和专业技术人员对话的基础。2. 业务架构从战略到流程的翻译器2.1 业务架构到底画什么业务架构是整个架构体系的起点也是最容易被忽视的一环。它要表达的不是“用户点了哪个按钮”而是“业务方是怎么运转的、为什么这么运转”。具体来说业务架构包含五样东西业务目标这个业务域要达成什么商业结果比如“缩短订单履约时长”“提升售后处理效率”。业务流程从起点到终点的端到端流程包含主流程、分支流程和异常流程。组织职责哪些部门、哪些岗位参与各自的职责边界是什么。业务规则流程中的判断条件、约束和例外处理比如“超过30天未发货的订单自动取消”。业务对象业务流程中反复出现的核心概念比如订单、商品、客户、账单。你可能会说这不就是流程图和分析业务吗我平时也做啊。但区别在于业务架构更强调“全局结构”而不是单个流程。我之前做过一个仓储管理系统。业务方提了一堆需求每条听起来都合理库管员要看到库位信息订单组要能创建出库单财务要核对出库记录。如果只是接需求画原型你会发现每个功能都能做但系统越做越乱。后来我花了两个星期把仓储域的业务架构图画出来才发现问题库管员和订单组都维护着自己的“库存数量表”数据口径完全不同所以系统上线后库存永远对不上。这就是业务架构缺失的代价。没有全局业务结构需求和需求之间就会互相打架。2.2 业务架构建模的核心要素业务架构怎么搭我建议你从下面四个核心要素入手逐个梳理。第一个是业务目标。不要小看这一步它决定了后续所有需求的优先级。比如你负责的交易域如果这个季度的核心目标是“提升支付成功率”那么支付流程的优化需求就比优惠券营销需求更优先。业务目标要尽量量化比如“把订单取消率从12%降到8%”这种目标才能让架构评审有判断依据。第二个是业务流程。画业务流程时我习惯用泳道图把不同组织或角色的职责放在不同的泳道里。泳道图有个天然优势它能直观暴露职责重叠和真空地带。比如某个节点没有泳道承接或者两个泳道都认为自己负责这个节点这就是业务风险。第三个是组织职责。业务架构里的组织不是行政组织而是“业务角色”。一个岗位可以承担多个业务角色一个业务角色也可以分散在多个岗位。关键是职责和权限要清晰。我见过最典型的问题仓库管理员既能建商品信息又能改库存数量还能确认出库单。这种权限高度集中看似方便实则容易出现业务漏洞这在业务架构阶段就要提出来。第四个是业务规则。计算机行业有句话叫“无规则不成流程”。业务规则包括条件判断比如满减门槛、状态流转订单从已支付到已发货、异常处理超时自动关闭等。画流程时很多新人容易只画happy path标准顺利路径但真正决定系统复杂度的往往是不正常路径。2.3 实操用业务架构图做需求梳理的步骤很多产品经理说“架构太虚了不知道怎么落地”。其实业务架构是可以直接应用到日常需求梳理中的。我分享一套自己的实操方法一共五步。第一步明确业务边界。先写清楚你要梳理的是哪个业务域比如“交易域”“仓储域”“售后域”别把整个公司的业务一次性画完。边界定了才不至于分析到一半变成无底洞。第二步识别核心业务对象。把业务过程中反复提到的名词记下来比如订单、库存、物流单、结算单。这些名词大概率是后续数据模型的基础。名词之间有什么关系也用连线表示出来。第三步画出端到端主流程。不要直接从某个系统操作开始而是从业务启动事件开始。比如“用户下单”的起点是“用户浏览商品”终点是“用户确认收货”中间每一步都画清楚。用泳道图把每个业务角色放进对应泳道。第四步补充分支流程和异常流程。主流程定下来后把各种分支和异常情况补充进去比如退款、取消、超时、审核不通过。这些异常流程的建议我通常用不同颜色的边框标出来方便评审时区分。第五步和业务方做一次正式确认。把画好的业务架构图拿给业务方看请他们确认三件事流程是否完整、职责是否清晰、规则是否准确。这一步一定要做而且要让业务方签字确认否则后面需求变了责任说不清。我做供应链协同平台时就是用这五步把销售、采购、仓储、财务四个部门的业务流程完整梳理了一遍。本来业务方提了四十多个需求架构图画完后砍掉了十几个重复需求剩下的大概只有二十个因为很多需求根本是同一个流程的不同视角。2.4 业务架构常见误区和避坑业务架构看着简单实际做起来很容易翻车。我总结几个高频误区。误区一把业务架构画成了系统流程图。业务架构要描述业务本身不要混入技术实现。比如业务上叫“创建订单”不要直接写成“调用订单中心接口”。产品经理一提“接口”和“系统”业务方就会看不懂评审容易失真。误区二只画主流程忽略异常分支。我见过很多项目上线后问题频发原因几乎都是主流程走得通异常情况没有前期的逻辑梳理。从业务架构阶段就应该把异常分支作为一等公民比如退款原因有几种哪些场景可以自动退款哪些必须人工审核这些没定义清楚后面开发必然返工。误区三业务对象命名不统一。同一个概念销售叫“客户”财务叫“往来单位”运营叫“会员”。等到设计数据架构时这三个词会被建成三张表后续数据打通就变成噩梦。业务架构阶段就要统一术语我给自己的要求是核心业务对象的命名反复和业务方对齐确定下来就锁死不允许各叫各的。避坑经验业务架构一定要先于应用架构、数据架构进行评审。不要想着“先开发再说后面再对齐”。业务架构是地基地基歪了后面无论应用还是数据层都会跟着歪。宁可业务架构阶段多花两个星期也不要上线后再花两个月填坑。3. 应用架构把业务能力拆成可落地的系统模块3.1 应用架构与应用系统、模块的关系业务架构梳理清楚之后下一步就是设计应用架构。应用架构要回答的问题是业务上需要的能力由哪些系统、哪些模块来承接先理解几个基本概念。应用架构里的“应用”是一个可独立部署、独立维护的系统或服务比如订单中心、支付系统、商品系统。“模块”是应用内部的子功能比如订单中心下可以分“订单创建模块”“订单查询模块”“订单状态管理模块”。“接口”是应用之间或模块之间的交互方式通常表现为API。应用架构的设计原则是高内聚、低耦合。高内聚是说把一个业务域相关的功能尽量放在同一个应用里低耦合是说应用与应用之间的依赖要尽量少、尽量清晰。举个例子电商系统里不要把“订单创建”和“商品评价”放在同一个模块里因为它们的业务变化频率和关注点差异很大。订单创建几乎每次交易都会触发性能和稳定性要求高商品评价相对低频业务规则更灵活。强行放在一起以后改评价功能可能影响订单功能风险很大。这就是“按业务变化频率划分模块”的朴素逻辑。3.2 应用架构设计的三个层次应用架构设计可以从三个层次来理解产品经理至少要能看懂前两层。第一层是应用划分。就是明确公司有哪些应用系统它们的边界在哪里。划分标准通常是业务域或业务能力而不是组织架构。常见错误是跟着组织架构走销售部提的需求就开发一个“销售系统”市场部提的需求就开发一个“市场系统”。但组织架构经常调整系统边界如果跟组织绑定每次组织调整系统都得跟着拆一遍。正确做法是按业务域划分比如客户管理系统、订单系统、库存系统组织架构变了系统的归属可以变但系统本身的边界不动。第二层是模块职责。每个应用内部再拆成若干模块模块之间职责要单一。我参与过的项目中最头疼的就是“万能模块”——什么功能都往一个模块里塞最后模块越来越大改动越来越难。判断模块职责是否清晰一个简单标准是看模块的命名能不能直接用一句话说清楚它是干什么的。如果你需要解释半天多半是职责不清晰。第三层是接口关系。应用之间怎么交互、谁依赖谁、数据流向哪里这些构成了接口关系图。产品经理不需要关心接口怎么实现但一定要关注接口所代表的“业务契约”。比如退款应用调用支付应用撤销支付这个调用背后的业务含义是“原路退款”如果业务规则是“用户余额与第三方支付组合支付退款要分路退回”那产品经理就必须把这条规则讲清楚否则开发会按最简单的方式实现。3.3 产品经理如何参与应用架构设计很多产品经理听到“应用架构设计”觉得这是架构师的事自己不用管。我的观点恰恰相反应用架构的输入很大程度上来自产品经理。因为应用边界本质上是业务能力的边界而这个边界产品经理最清楚。我自己的实操方法是“从用户场景推导应用边界”具体分四步。第一步列出核心用户故事。把要支撑的业务场景用“作为某某角色我想要某某功能以便实现某某目的”的格式写出来。比如“作为售后客服我想要发起退款以便快速处理用户投诉”。第二步识别用户故事中的核心业务对象和操作。每个用户故事都会涉及若干业务对象和动作。比如“发起退款”涉及订单、支付流水、退款单三个业务对象以及“读取订单状态”“查询支付流水”“创建退款单”三个操作。第三步把业务操作按业务域聚类。把所有用户故事里的操作放在一起看哪些操作天然属于同一个业务域。比如“查询支付流水”和“执行退款”大概率属于支付域“读取订单状态”属于订单域。聚类之后你就有了应用模块划分的雏形。第四步拿聚类结果去和技术架构师对齐。你把初步划分结果拿给技术负责人看他们判断模块之间的依赖关系、性能要求、部署策略最终确定应用边界。这套方法的好处是应用架构不是技术团队凭空想出来的而是从产品经理的业务分析中推导出来的自然能对齐业务需求。我做过一个企业内部的费用报销产品。刚开始应用架构是由技术团队按技术栈习惯划分的结果产品侧很多功能找不到归属代码。后来我们用用户故事重新梳理了一遍发现“报销单提交”“审批流配置”“预算金额校验”三个场景本来属于同一个业务域是被技术拆分到了不同的应用里。重新对齐后开发周期反而缩短了因为代码职责变得清晰多了。3.4 微服务、中台与产品经理的边界感现在的应用架构领域微服务和中台是非常热门的概念。产品经理不需要会写服务代码但有三个认知要建立起来。第一个认知微服务只是应用架构的一种落地形态。它不是银弹。微服务的核心价值是把大型应用拆成多个小型服务让团队可以独立迭代但拆分的代价是分布式复杂度剧增。产品经理不要一听到“微服务”就觉得很高级而要知道服务拆分的边界本质上还是要回到业务域是否清晰。第二个认知中台是沉淀可复用能力不是组织上设个部门。中台化的本质是把多个业务线共用的能力下沉比如订单中台、支付中台、用户中台。有些公司一提到中台就专门成立一个中台部门强制业务线把需求交到中台来做结果中台离业务越来越远需求响应越来越慢。产品经理如果负责中台产品要紧盯“复用”这个核心价值。如果一个需求只是一位客户的一次性诉求不值得沉淀到中台。第三个认知架构拆分要跟着业务演进而演进。做产品经常发现以前合理的模块划分业务发展之后就不合理了。比如公司刚开始只做B2C的订单管理后来开了B2B的批发业务订单模块是否需要拆成两个独立应用这没有标准答案要看业务形态差异大小。但产品经理要有这种“架构是动态的”意识不要以为架构评审完就万事大吉。我见过最极端的情况就是为了“中台化”而把两个业务流程完全不同的业务强行合并成一个中台结果中台既要支持快速消费品的高频小订单又要支持大客户的低频大订单逻辑互相冲突代码复杂到没人能维护。那种靠行政命令拍脑袋定的架构后面要用巨大的智力成本去偿还。4. 数据架构让数据成为可复用的资产4.1 数据架构的三大组成业务架构决定业务怎么转应用架构决定系统怎么建数据架构则决定数据怎么管。很多产品经理容易在这一环掉链子觉得数据是数据工程师的事。但等到要出报表、要做数据分析时才发现当初需求的字段定义、枚举值、报表口径全都没有数据模型支撑数据根本取不出来。数据架构包含三大组成数据模型、数据流转、数据治理。数据模型是把业务上的对象结构化形成实体、属性、关系。通俗讲就是设计“数据怎么存”。比如订单这个业务对象落到数据模型里就是订单表包含订单号、用户ID、商品ID、金额、状态等字段。数据流转是描述数据从产生、存储、加工到消费的全过程。下单产生一条订单记录订单表同步到数仓数仓经过ETL加工出订单宽表最后被报表和自助分析工具使用。数据流转像河流源头数据不干净下游就都是脏水。数据治理是对数据的标准、质量、安全进行管理。包括数据字典、指标的统一定义、权限控制等。这层常被忽略等到跨部门数据对不上时才后悔莫及。你可以在脑子里建立这样一个比喻数据是公司的石油数据模型是油田的地质结构数据流转是管道系统数据治理是质量标准和安全规章。没有架构石油就是一团乱泥。4.2 从业务实体到数据实体的映射产品经理做数据架构最核心的一步是把业务实体翻译成数据实体。业务实体是业务架构里的核心名词比如订单、商品、用户。数据实体是数据库里的表结构比如订单表、商品表、用户表。映射关系如下业务对象 → 数据实体表业务对象的属性 → 数据字段列业务对象之间的关系 → 外键或关联表举个例子“订单”这个业务对象映射到数据实体至少包含订单编号、下单时间、买家ID、卖家ID、商品ID、商品快照、支付金额、订单状态、物流单号等字段。“订单”和“用户”的业务关系映射到数据实体就是订单表里的买家ID关联用户表的用户ID。这里有一个产品经理最容易踩的坑业务对象上的关系是“多对多”到数据层往往要用中间表实现。比如多个客服跟进同一个客户一个客服也处理多个客户这就是多对多关系。如果不加中间表直接给客户表加一个“客服ID”字段这个客服ID根本无法存储多个客服信息数据就存不下了。产品经理至少要能识别“一对一对”“一对多”“多对多”这三种关系否则和数仓同事讨论时会非常吃力。还有一件事我反复提醒自己业务上的定义必须和数据上的口径一致。比如业务上说的“有效订单”是什么是支付成功但未取消的订单还是已发货的订单如果产品经理不定义清楚数据工程师会按自己的理解写逻辑最后运营看报表骂数据不准数据工程师指着产品说“需求没定义清楚”两败俱伤。4.3 产品经理需要掌握的数据建模基础你不一定必须会写SQL但至少要对数据建模的三个层次有概念概念模型、逻辑模型、物理模型。概念模型是业务视角用实体和关系表达业务结构通常就是ER图的主要部分。这个模型可以画得比较粗重点是让业务方看懂比如“用户”与“订单”是一对多关系“订单”与“商品”是多对多关系。产品经理画这个模型几乎没有技术门槛。逻辑模型进一步定义字段、主键和外键但还无关具体数据库实现。逻辑模型阶段就要把字段的枚举值、数据类型、是否可空定下来。产品经理至少要参与逻辑模型的评审因为字段口径是你最清楚的。物理模型是落到具体数据库的表结构设计涉及索引、分区、存储引擎。这是数据工程师的主场但有追求的产品经理可以了解一下因为物理模型会影响查询性能进而影响产品功能体验。最简单的例子给订单状态字段建了索引订单列表按状态筛选就很快没建索引一筛选全表扫描产品页面就卡死。我的建议是产品经理至少要到“能看懂逻辑模型、参与逻辑模型评审”的水平。看ERD图实体关系图时分清楚主键唯一标识一行、外键连接其他表、常见的数据类型这些就够了。理解和掌握这些并不需要技术基础只是静下心看几张图的事。4.4 数据权限、数据质量与标签体系数据架构不只是一堆表它还要回答三个业务问题谁能看这些数据数据准不准数据怎么用于分析和标签数据权限是产品经理必须参与设计的。最简单的原则就是“职责所需最小授权”比如仓库主管只能看自己仓的库存数据不能看全国销售毛利。产品经理要把角色和权限的矩阵梳理出来落到应用系统的权限模块和数据的行列级权限上。我见过太多权限事故就是权限模型没做细一个普通员工登录后发现能看到全公司薪酬数据。数据质量有四个维度最常用完整性不该空的字段不能空、准确性值与真实一致、及时性数据产生后能快速可用、一致性不同系统中同一指标的值相同。产品经理在提出数据需求时应该顺带定义这几个维度怎么验收。比如要求“下单数据T1出现在报表中准确率99.5%以上”这才能让数据团队有明确的执行标准。标签体系是把原始数据加工成业务可直接使用的标签比如用户标签、商品标签。产品经理参与标签体系时最关键的事情是定义标签的口径。比如“高价值用户”到底是指累计消费超过1万元还是最近30天购买次数超过5次口径不统一标签就会失真。标签体系本质上是对业务语义的一次统一定义这个工作业务和产品必须深度参与。我自己做过一个会员体系的数据架构刚接手时标签库里一个“沉睡用户”就有三种定义会员运营、客服、财务各有一套逻辑。后来我们花了两周统一口径重新梳理数据模型和标签定义整个团队的运营效率立马上了一个台阶。所以别小看数据架构它不只是技术活更是业务共识的载体。5. 三大架构如何协同工作一张图看懂端到端落地5.1 业务、应用、数据架构的映射关系前面的章节分开讲了三种架构各自是什么但实际工作中它们必须协同起来。产品经理最值钱的能力之一就是能把三种架构映射到同一条业务链路上。我总结了一个非常实用的对齐关系表业务架构要素应用架构承接数据架构落点业务目标应用能力规划指标体系与度量数据业务流程应用间接口流程数据流转链路业务对象应用模块与数据归属数据实体与数据表业务规则应用逻辑与校验数据约束与校验组织职责角色权限模块数据权限与行级授权每次评审方案我都习惯把这三列放在同一张表里逐行过一遍。比如“退款审核”这个业务规则应用架构里对应“退款单审核模块”数据架构里对应“退款单状态字段”的取值规范。如果某一行只有业务描述没有应用承接或没有数据落点这个方案就是不完整的。这就像盖房子时施工图、水电图、装修图必须能够精确对得上同一面墙。任由各专业各画各的最后墙会互相打架。5.2 从需求到落地的完整链路示例以“订单退款”为例光说理论很干我拿一个最常见的场景“订单退款”来演示三大架构是怎么协同的。业务架构层面退款流程大体是用户申请退款 → 系统校验退款条件 → 客服审核如需要 → 原路退款 → 更新订单状态。这个流程里有几个关键业务规则发货前可申请仅退款发货后可申请退货退款超过15天未处理的退款单自动通过。这些规则必须业务架构层面先定义清楚。应用架构层面上述流程要拆给多个应用去承接。用户申请退款由交易应用或售后应用提供条件校验可能要在订单应用、支付应用、风控应用间协同完成客服审核由售后应用处理原路退款执行则交给支付应用。产品经理此时要明确“退款最终状态由谁更新”“订单状态与退款状态如何联动”否则容易出现状态不一致。数据架构层面每条退款的发起、审核、打款、完成都要留下数据痕迹。数据实体方面需要有退款单表、退款流水表并且与订单表、支付流水表建立关联。指标方面要定义退款率、退款时长、拦截率等口径。这些口径不上手统一运营后面分析起来就是一团乱麻。我之前做退款重构时就是因为业务、应用、数据没有同步对齐漏了一个“退款完成后若原订单已发券需要回收优惠券”的业务规则。应用侧实现了回收但数据侧没有记录“券是否已回收”导致后续对账怎么都对不平。后来我在数据模型里补了一个字段才算解决。这正是三张图必须对照看的典型证明。5.3 架构评审会中产品经理该问的5个问题架构评审是产品经理沟通三大架构的高频场景。很多产品经理在评审会上插不上话或者只关心当前这个迭代排期多久。我建议你在评审会上养成提问的习惯下面五个问题基本能覆盖三类架构的关键风险。问题一这个业务变化会影响哪些应用这些应用的负责人是否确认了这一个问题最容易被业务架构忽略。业务上改一个规则往往牵一发动全身产品经理要确认应用层面的影响面防止某个应用负责人没上会、事后才说做不了。问题二数据从哪里来流到哪里去由谁负责维护质量这直接对应数据架构。数据源不明确字段没人负责最终结果就是报表数据没人信。问题三业务规则变化是配置化改造还是发版改造这个看似是技术问题其实产品经理必须清楚。如果业务规则经常变最好做成可配置否则每次调整都要重新排期。没有这个判断产品经理就会经常被业务追问“为什么改个参数还要开发两周”。问题四新增模块与已有模块之间的依赖是否合理有没有循环依赖这个问题应用架构最关注。循环依赖是系统重构的噩梦。虽然不一定要产品经理亲自查代码但你可以从业务调用链路上发现不合理的依赖比如A系统的功能居然要等B系统回写数据才能用这样的流程设计也许可以优化成异步状态通知。问题五核心指标的口径是否已经统一谁可以拍板这对应数据治理。很多指标冲突的根因就是没有产品经理在评审会上拍板口径。你是最懂业务的这个黑板你不上谁上。这五个问题问下来你会发现自己对项目的掌控力会上一个台阶。因为评审会上的对话不再只是技术名词的堆叠而是对业务目标、系统能力、数据资产三者的统一审视。6. 实操工具与上手建议6.1 常用建模工具对比画架构图用什么工具也是产品经理常遇到的问题。我结合自己的使用体验列一个工具对比表供参考工具适合场景上手难度协作能力我的评价draw.io业务架构图、ER图、各类流程图低可本地可在线支持与各类云端盘联动免费日常首选ProcessOn在线图表、团队协作低强评论分享方便国内访问好适合团队评审Visio微软生态标准文档交付中较弱主要文件协作公司强制交付时用Enterprise Architect企业级架构建模、数据建模高强支持多种框架专业人员用产品经理可了解Axure原型设计中一般画架构图不合适别混用我的个人组合是日常需求分析用draw.io画业务架构图团队协作评审用ProcessOn数据ER图和逻辑模型用draw.io就够。复杂的企业级架构公司若有规范再上Enterprise Architect。没必要一上来就追求专业工具先把图画清楚比工具高级重要得多。还有一个经验架构图不是画一次就完了要跟需求一起维护。很多团队的架构图半年不更新后面新同学看的时候一脸懵。产品经理可以把架构图的维护责任写进项目交付清单和需求文档一起走评审这样架构图才能保持生命力。6.2 新手学习路径建议别被“业务架构、应用架构、数据架构”这组词吓到。这三种架构不是一步到位学会的而是一边实践一边慢慢建立起来的。我建议刚接触这些概念的产品经理参照下面的路径来积累经验。第一步从自己负责的模块开始画一张业务流程图。不管你现在负责的是管理后台、小程序还是App先把你最熟悉的业务场景用泳道图画出来。画的过程中把业务对象列为名词清单比如这个流程里出现的关键名词是什么。这一步能让你建立“业务流程不只是在画页面”的感知。第二步和技术同事要一份当前系统的应用架构图。拿到之后把你画的业务流程图里的关键功能点对应到应用架构图里的模块上。你会很快发现哪些功能在哪个模块里哪些模块之间要通信。遇到对应不上的地方不要不好意思问请教技术负责人这是学习应用架构最快的方式。第三步去了解你负责业务的数据库ER图。找数仓或后端的同事帮忙导出一份现有表结构文档找到和订单、用户、商品相关的核心表理解这些表里有哪些字段、表有什么关系。如果发现某些你定义过的业务字段在表里不存在就要去确认它是被存在哪张表里了还是压根没设计到数据层。这一步能帮你建立起“业务定义→数据字段”的映射感。第四步参与一次架构评审会。刚开始可以不说话只听技术团队怎么讨论。听着听着你就会发现他们聊的模块边界、数据来源、接口依赖其实都对应着你画的业务流程图里的某些节点。那时候你就有底气发问了然后试着问出上面那五个问题之一。这条路径走完你对三种架构的理解就会从“名词”变成“工具”。到时候你会发现自己不再只是一个接需求的大爷而是一个能主动发现业务风险的人。我在实际带新人的过程中发现凡是能坚持做完这四步的新同学通常在三个月内就可以独立负责一个模块的方案设计了。所谓的“架构思维”无非是把一个复杂问题拆成结构化的几个侧面然后逐个击破。它能有多难也就是多做几次、多问几句、多画几张图的事。最后再分享一个小技巧。当你画完一张架构图不妨试试把它讲给一个完全不懂业务的人听。如果他能听懂你的架构图在说什么说明这张图的逻辑是清楚的如果你自己讲着讲着就卡壳了那大概率是某些关系还没想明白。架构图的价值不只在于交付更在于逼着你把模糊的想法变得清晰。这份被逼出来的清晰就是产品经理在架构这件事上得到的最实在的回报。
返回列表