ARTICLE DETAIL

资讯详情

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

需求分析四步法:价值确认、需求澄清、优先级排序与验收交付

需求分析四步法:价值确认、需求澄清、优先级排序与验收交付 上个月帮一家做出口贸易的客户梳理ERP选型需求连续开了三天会业务部门提的需求清单越拉越长到最后已经写满了三张A3纸的便利贴。我问了现场一句话各位现在提的需求假设全部做完大概需要几期没有人能答上来。其中一个仓储主管还反过来问我你先想办法把系统搞出来能不能用上再说。那一刻我就知道这个项目的需求分析如果不换打法后面一定会在上线的道路上反复返工。后来我把这套“不管项目多大需求分析只做四件事”的框架总结成了一个比较好记的缩写VRPD。V是Value价值R是Requirement需求P是Priority优先级D是Delivery验收交付。听起来很普通但我带过的项目里凡是需求阶段出问题的回头去看几乎都是这四件事里的某一环没做实。把这四件事按顺序捋清楚了新系统上线前的混乱程度至少能降一半。这篇文章就把这套方法完整展开讲讲每个环节到底怎么做、用什么工具、踩过什么坑。适合正在被公司推着做新系统选型或内部研发的BA、项目经理、产品经理也适合那些临时被拉去做需求调研的技术人员。1. 先别急着收集需求把四件事按顺序捋顺了再说1.1 需求翻车通常不是输在“没收集”而是输在“没框架”很多人一听说要做需求分析第一反应就是约业务部门开会让大家把想法一条条说出来然后拼命记笔记。这个方法看起来热闹但实际效果很差。业务人员不是产品经理他们表达出来的往往不是真实需求而是带着情绪、带着个人工作经验、甚至带着临时灵感的碎片化想法。你今天问他他这样说三天后你再问他可能又改口了。我见过更极端的项目光需求文档就写了三百多页把每个界面按钮、每个字段都列得清清楚楚结果开发做到一半业务说流程变了。为什么因为大家都没有在同一个框架里对话收集需求变成了“记录愿望清单”没有人真正回答过几个关键问题这个系统为什么值得上上线后用什么指标证明它是成功的哪些需求其实可以放到二期所以我的建议是动手收集需求之前先建立一套共同的语言和检查清单。这正是VRPD四要素存在的意义。它给需求分析划分出一个清晰的动作边界每一件事都有明确的输出物做完一件再进入下一件顺序不能乱。价值没确认清楚就急着列功能清单等于地基没打就砌墙。1.2 VRPD需求分析可以压缩成四个动作VValue价值确认。这一件事回答的问题是为什么做值不值得做做成之后拿什么衡量收益很多新系统项目死在“为做而做”上管理层觉得老系统落后了应该换下面的人觉得换了系统会增加工作量大家屁股决定脑袋方向完全不一致。RRequirement需求澄清。这一件事回答的问题是系统到底要做什么把“我想要一个更方便的系统”这种模糊表达翻译成“系统需要支持在10秒内完成客户资料的搜索”这样可执行、可测试的描述。这是整个流程中工作量最大、也最考验分析能力的一环。PPriority优先级排序。这件事回答的问题是先做什么、后做什么、哪些这期不做、哪些永远不做。很多项目失败不是因为该做的没做而是因为错误地把资源砸在了不该先做的事情上。DDelivery验收交付。这件事回答的问题是做到什么程度算“做完”凭什么说这个需求实现了需求阶段不把验收标准和交付物约定清楚到了测试阶段就会出现“开发说做完了业务说根本不是我要的”这种经典纠纷。四个字母串起来其实就是一个完整的逻辑闭环想清楚为什么做定义清楚做什么排清楚先做什么约定清楚怎么做完算数。我建议不管项目大小哪怕只是上一个内部审批的小工具这四个动作都不要省只是投入的深度可以不同。1.3 这套方法适合谁不适合谁VRPD这套思路最合适的场景是公司内部要上的业务系统、中小型IT项目、或者从零开始的SaaS选型评估团队规模不大没有专职的需求分析工程师也没有一整套成熟的产品研发流程。这样的团队最缺的不是方法论的种类而是一个不复杂、能落地、就算临时换人接手也能继续推进的框架。它也适合被临时拉去顶岗的技术人员。我就带过不少开发转岗做需求分析的同事他们一开始最迷惑的就是“需求到底分析到什么程度算到位”。有了VRPD之后至少知道每个阶段要产出什么价值确认出评估表需求澄清出用户故事和验收条件优先级排序出MVP清单验收交付出测试场景和UAT计划。目标一明确执行就不会跑偏。但也要说清楚如果你所在的企业已经有了成熟的产品经理体系和完备的业务架构方法论那VRPD更多是一个对齐共识的沟通工具而不是替代品。它不做端口级的数据字典不画复杂的ER图不做严格的领域建模。它解决的是“项目前期最常见的混乱”而不是“所有软件工程问题”。认识到这个边界反而会让你用得更顺手。2. VValue价值确认需求分析启动前先回答“为什么”2.1 价值确认被跳过后面全是风险大多数项目在做需求分析时跳过的第一个环节就是价值确认。大家默认“系统总是要上的预算也批了赶紧干活吧”于是直接从需求清单开始。这个省略带来的后果通常不是立刻爆发而是积累到项目中期才全面显现业务部门参与度低反正不是他们要上的系统上线后没人愿意用大家还是退回Excel管理层问效果项目组拿不出一组漂亮的数据来回答。我见过一个典型案例。某公司要上线考勤和排班系统信息部门直接把市面上主流的考勤机都列了一遍然后挨个收集部门意见。结果销售部门说他们不需要坐班要求弹性打卡生产部门说排班要支持各种班次自动拼接人事部门说所有数据必须和薪资对接。需求越堆越多系统预算翻了将近一倍最后上线日期拖了一年。回头复盘才发现公司上个新系统的核心目标其实是解决“考勤数据不透明导致薪资核算每个月都要人工核对三天”的问题。全部围绕这个目标来做很多需求根本不需要在第一期实现。价值确认就是逼着所有人回到这个起点我们到底为什么折腾这一次这个系统上完业务指标上能有什么变化如果回答不上来那项目本身就有问题。2.2 一张表格完成价值盘点做价值确认不需要写长篇的商业计划书我常用一张A4的表格就能完成。关键是召集真正参与决策的业务负责人和项目实施方坐到一起把这几个维度逐一过一遍。下面是一张我常用的价值盘点表直接拿客户管理系统的场景举例。评估维度要问的问题示例回答业务现状现在是怎么做的痛点集中在哪客户信息散落在Excel和销售各自手机里跨区协作只能打电话问离职交接经常漏人期望收益上线后能带来什么可量化的改善客户跟进记录完整率从60%提升到95%销售查客户资料从平均10分钟缩短到1分钟成本预算愿意投入多少钱、多少人力、多久时间预算40万信息部2个开发加1个外包团队周期6个月时间窗口最晚什么时间上线不会影响业务明年4月销售季之前必须上线否则要等下一季成功指标什么指标达到就可以宣告项目成功上线3个月后销售部门日活使用率≥80%客户重复跟进率下降30%这张表填完项目到底做不做得成、值不值得做基本能看出个大概。如果连“期望收益”都写不出具体数字我所做的第一件事不是继续往下细化需求而是和用户一起把收益找出来。找不到就别急着上系统因为大概率上线了也是一堆石头互相摩擦谁也没获益。2.3 价值确认的三个实操动作第一个动作是把价值盘点表做成工作坊而不是邮件传阅。拉上拍板的高管、实际使用的业务骨干、以及有决定权的IT负责人在一个会议室里花半天时间把表格一格格过掉。注意不要让与会人员把表格带回去“有空再填”那基本等于白填。第二个动作是把成功指标拆到可跟踪。不要写“提高效率、降低成本”这种话要写“订单录入时间从15分钟降到5分钟以内”“每月手工导出数据次数从20次降到3次”。有了这些数字后续做优先级排序时就多了一把尺子凡是和这些数字强相关的需求优先做弱相关的需求往后排。第三个动作是写一段不超过两百字的“项目定位声明”挂在项目文档最显眼的位置。格式可以是为了达成什么业务目标我们要为哪些角色提供一个什么样的系统这个系统要覆盖哪些核心业务范围不在范围内做的事情明确写出“本期不做”。我见过太多项目做着做着就迷失方向有了定位声明每次评审会对需求有争议时把它念一遍就能解决大部分争论。2.4 避坑当业务方说“领导要求做的”怎么往下问价值确认阶段最容易遇到一句话“这个系统是领导拍板要上的我们也不知道为什么。”遇到这种情况直接跳过价值分析去做需求是危险的因为你想不清楚目标后续所有需求决策都失去了依据。我的做法是换个角度问那领导最关心这个系统解决什么问题如果业务方答不上来就去找发起项目的领导聊一次只问三个问题您希望上线一年后业务上哪里和现在不一样这个不一样靠什么数据来体现如果系统上线后没达到预期您觉得最可能的原因是什么这三个问题问完价值方向基本就清楚了。实在找不到人也没关系把系统立项时的会议纪要、年度经营目标里和效率、成本、收入相关的指标拿来对齐也能凑出一份靠谱的价值假设总比不做强。3. RRequirement需求澄清把“我想要”翻译成“系统要做什么”3.1 先打好基础什么是需求分析里的“需求”价值确认做完项目方向统一了接下来才进入大多数人认为的需求分析环节。需求这两个字看着简单但在实际沟通中经常被扭曲。业务方说“我想要一个看板界面”这是需求吗不是这是一个解决方案。真正的需求是“我想看到全国各区域当天的销售情况并能快速发现异常区域”。至于这个用看板、报表还是每日邮件推送来实现是后面的事。所以进入R环节的第一件事是跟所有参会人员对齐一个认知我们收集的是业务述求不是具体功能按钮。业务述求回答“业务上要达成什么”功能按钮回答“系统界面怎么做”。这两个从混在一起需求分析就会变成一场技术方案辩论赛谁也说服不了谁。我一般在项目启动会上讲一遍这个区分后续开会再遇到有人说“我要一个按钮”我会追问一句“这个按钮是要帮你完成什么业务动作”3.2 需求采集不是只有开会一条路很多人做需求采集只会一种方法把业务人员叫过来开会问他们平时怎么做事的。这个方法不是不能用但只靠它一定会漏信息。因为业务人员在自己做了多年的工作里会形成大量“理所当然”的默契你问他他觉得你都应该知道根本不会特意讲出来。要想把需求挖全至少要结合下面几种方式。一对一访谈适合挖掘深层痛点。不着急记需求先听业务讲一天的工作流程遇到哪个环节最烦、最花时间为什么烦。访谈有个特别好的副产品——你能识别出谁是真正的一线用户谁是凭着想象发表意见的旁观者。跟岗观察是我个人最推荐的方式。选一个正常工作日搬把椅子坐业务旁边看他们怎么操作旧系统、怎么记小本本、怎么相互确认信息。你观察到的往往比对方嘴上说的真实得多。问卷适合解决“不同区域、不同意见众说纷纭”的场景可以快速收集优先级信息但要注意问卷题目的设计必须落到具体业务场景不能问“你希望新系统有哪些功能”这种开放题。需求工作坊则是把跨部门的业务人员拉到一起在主持人引导下围绕核心业务场景一条条过流程现场画流程图和用例图效率很高。3.3 用用户故事和验收条件把需求说清楚需求采集回来后整理格式非常有讲究。我不建议一上来就写那种几百条的“功能性需求列表”因为那不便于讨论也不便于评审。我更推荐用用户故事的格式来写作为什么角色我希望做什么事情以便达成什么业务目标。举个电商购物系统的例子。好的用户故事长这样“作为前台购物用户我希望在搜索商品时能按价格区间筛选以便在预算范围内快速找到合适的商品。”不推荐的写法是这样系统需要提供一个价格筛选功能支持按价格区间过滤搜索结果。原因在于前者写清楚了用户角色和业务目标开发拿到之后能理解“为什么做”遇到界面设计上的分歧时可以回到业务目标去判断。后者只是一个冷冰冰的功能描述业务价值丢了评审时各人理解会出现很大偏差。每条用户故事还要配套写验收条件。这个我会在第5章展开讲但在需求澄清阶段就要同步写因为很多需求如果在写验收条件时发现有歧义说明还没想清楚需要回去细化。3.4 功能需求和非功能需求一个都不能漏功能性需求是最容易想到的比如“系统可以下单”“系统可以打印标签”“系统可以生成报表”这些是大家开会时最热烈讨论的部分。容易被忽略的是非功能需求也就是系统运行时要满足的质量要求比如性能、安全性、可用性、兼容性、备份恢复。这类需求一旦漏了等到上线测试才发现返工代价比功能Bug大得多。我至少见过三个项目因为事前没提性能要求上线第一天几百人同时点按钮数据库被打满接口响应从2秒变成30秒。业务方很生气地找过来开发团队很无辜地说“你也没说要支持500人同时在线啊”。这种扯皮完全可以在需求阶段用一张非功能需求检查表避免掉比如系统预期峰值在线用户数是多少关键操作的最大响应时间不能超过多少秒数据要保留几年备份频率如何哪个部门负责权限管理3.5 大坑预警把解决方案当成需求需求澄清阶段最需要注意的一个坑是业务方出于对新技术的想象或者对旧系统的心理阴影提出各种预设的解决方案。比如“我觉得新系统一定要上微服务架构否则以后没法扩展”“登录方式必须支持人脸识别否则太落后了”。这类想法不是不能采纳但要在需求阶段把它们跟业务需求解耦。我的处理方式是把这些技术偏好记录在独立的“设计方案建议”栏里不混入需求清单。然后问一句如果不用这个技术方案有没有其他方式达到同样的业务目标有的话就把技术方案的选择权交给后续的架构评审需求清单上只保留目标和验收条件。坚持这么做你已经避开了大量技术绑架需求的坑。技术选型是必要的但应该建立在业务需求之上的分析而不是让业务人员替技术团队做主。4. PPriority优先级排序划清MVP边界别让需求清单失控4.1 为什么必须做优先级排序需求澄清做得越扎实收集到的需求清单就越长这是个必然结果因为业务场景复杂每个人的诉求都要被尊重。但一个现实是团队平均能完成的需求量往往只有需求清单总量的40%到60%。很多人潜意识里接受这个比例但在做计划时又习惯性地把整张需求清单塞进项目排期里。这就会导致一个结果表面上每项需求都排了期实际开发时资源严重不足项目时间线只能无限拉长或者功能做到一半被砍掉质量没法保障。优先级排序就是为了解决这个核心矛盾明确把有限的资源集中在当下价值最高的需求上同时把“不做、晚点做”摆到台面上而不是让它在后期突然冒出来干扰节奏。一位老销售跟我说过一句话放在这里很贴切你不能指望一个背包上山的人顺便背着整个超市。4.2 三种排序武器MoSCoW、KANO、价值-成本矩阵在实际项目里我常用三种方法搭配使用而不是只用一种第一个是MoSCoW法则。把需求分成四类Must have必须有这类不满足系统无法上线或核心业务无法运转Should have应该有这类很重要但不至于阻碍上线可以有替代方案先撑着Could have可以有属于锦上添花有精力就做没精力就放弃Wont have这次不做明确放掉或放到下一期。这个方法简单粗暴适合在评审会上快速和大范围地达成共识。第二个是KANO模型。从用户满意度角度把需求分为基本型、期望型、兴奋型、无差异型和反向型。基本型需求不做用户会非常不满比如电商系统的下单流程期望型需求做得越好用户越满意比如搜索筛选的丰富度兴奋型需求平时用户不会主动提一旦有了会惊喜比如一键唤醒客服无差异型做了用户也没感觉反向型做了反而惹人烦比如频繁弹窗引导。这个模型能帮你识别“用户嘴上说要其实做了也不会加分”的需求。第三个是价值-成本矩阵。用横坐标代表业务价值高低纵坐标代表实现成本高低把需求分进四个象限。高价值低成本的无脑先做高价值高成本的认真规划作为核心低价值低成本的有空就做低价值高成本的直接砍掉或冷冻。这个工具的计算逻辑最直白也最适合拉技术团队和业务团队坐到一起对话因为业务谈价值、技术谈成本交叉下来反而容易收敛出一个大家都服气的排期。排序方法核心维度适用场景输出物MoSCoW是否必须有快速划定版本边界粗粒度共识Must/Should/Could/Wont清单KANO用户满意度影响优化体验类需求判断做不做不会加分需求分类表价值-成本矩阵业务价值与实现成本技术团队与业务团队联合决策四象限需求地图4.3 优先级评审会怎么开最关键优先级排序一定不能是某个人关在办公室里自己默默排好的而是要放在一个正式的评审会上让核心干系人吵一遍。这个会必须请三类人业务方中能拍板的人、开发团队中能评估成本的技术负责人、以及掌握项目目标的项目经理或BA。开会之前我会先把需求清单按用户故事格式打印出来每一页写一个大需求和对应的验收条件。会上花二十分钟一起过一遍业务全景然后进入排序环节。排序环节我不用投票而是用“目标回溯法”每讨论一个需求先问一个问题——做好这个需求离我们在V环节定下的成功指标是更近还是更远如果答案是更远就算它再酷也只能往后安排。会议最后必须输出一份MVP版本的需求范围表明确标出本期上线必须包含的功能清单以及这批功能的验收条件。同时还要输出一个“暂缓清单”记录被推迟到二期或之后的需求。这份暂缓清单非常关键有了它你以后被人质疑“为什么这个功能没有”时有白纸黑字可以拿来说明。4.4 实操心得排序不是民主投票而是业务价值的取舍做过几次优先级评审会你就会发现真正难的不是排前十个而是说服别人放弃。业务方往往天然认为自己的需求最重要谁也不愿意被排到二期。这时如果主持人陷入“每人投票”的民主陷阱排序会变成人缘竞赛最后出来的这个清单一定是不科学的。我的方法是在排序前先统一口径需求清单不是“谁的需求优先”而是“业务目标的贡献度优先”。有了这个共识排序过程中就算有人不服气你也可以把他的需求放到目标框架里去检验。在产品室里立一块白板左边写成功指标右边写需求卡片每张卡片都拉一条线连到成功指标上。连不上的就问一句这个需求和指标什么关系如果对方答不上来那它在当前版本里的优先级就不该高。这个动作执行几次之后团队里会形成一种感觉提需求不再是一件轻松的事每条需求背后都需要站得住脚的业务逻辑。5. DDelivery验收交付把“做完”变成白纸黑字的契约5.1 没有验收标准的需求做完等于没做完很多项目走到验收环节业务方说“这个好像不是我想要的那样”开发方说“我全是按你写的做的啊”——矛盾的根源几乎都是需求阶段没有把验收标准定义清楚。你以为的只是文字描述了大概方向对方理解成了自己脑子里想象的完美功能双方天然错位越往后期越难调和。所以我在R环节就强调每条用户故事在进入开发之前必须配备可验证的验收条件英文叫Acceptance Criteria简写AC。AC就是一条需求完成与否的判定契约。没有AC的需求我不允许排入研发排期因为团队拿到它之后一定会产生歧义。5.2 AC验收条件的写法Given-When-Then写AC我推荐一种来自行为驱动开发的场景化写法稍微简化一下就能在普通需求评审里用给定某个初始状态当某个操作发生时那么系统应该产生某个可观察的结果。举一个电商系统购物车场景的例子给定购物车中有两件商品、总金额为210元当用户使用一张满200减30的优惠券时那么订单总额应变为180元且结算页面应显示优惠明细。这样写出来的AC至少有三个优势开发知道用户的真实操作场景测试可以直接把Given-When-Then翻译成测试步骤业务方在评审时更容易发现理解偏差。比起在需求文档里写一句“系统需要支持优惠券功能”这个AC的确定性高了不止一个数量级。我自己实践下来平均一条中等复杂度的用户故事写3到8条AC就够了不需要堆砌太多场景。5.3 从需求到测试用例让测试报告反向驱动需求需求阶段把AC写清楚到研发后期的测试阶段就能顺水推舟。很多测试团队最头疼的就是测到一半发现需求描述模糊设计方案也说不清到底哪个是正确的只能找产品经理一个个口述确认。AC转测试用例正好填了这个坑。具体转法很简单每条AC就是一条主测试场景测试工程师把Given里的初始状态准备为数据步骤把When里的操作拆成界面点击或接口调用步骤最后把Then写成断言和预期结果。如果需要回归测试可以再加边界值、异常输入等用例。到了测试报告阶段反过来追踪“哪些AC已经通过、哪些未通过”一眼就能对应到实际需求覆盖情况从需求到测试报告的链条是完全闭合的。这个闭环还有一个额外收益上线验收时业务方可以不用看研发代码打开测试报告里对应AC的执行记录就能判断需求是否达预期。扣住需求的契约感会让团队整体的交付质量观更强。5.4 UAT用户验收怎么组织才不走过场进入上线前的UAT阶段很多项目是直接把系统开放给用户“随便点一点没问题就签字”。这种无导向的UAT得到的结果通常是什么都测不出来。我的做法是把UAT设计成一连串业务场景而不是自由浏览。具体来说从需求清单中抽取最高优先级的端到端业务流程编排成3到5个业务剧本每个剧本就是一个真实的日常工作案例。比如供应链系统做UAT就让仓库管理员拿着剧本“今天有一批货下午到我需要提前把库位安排出来”按流程操作一遍并观察每一步是否有阻碍。UAT结束后让每位参与者填写一张UAT清单逐项确认对应的AC是否达成、哪里操作不流畅、流程步骤是否符合日常习惯。这样组织的原因很简单业务方参加UAT的时间非常有限只有用真实工作场景测试他们才能发现系统是否真正匹配日常习惯。如果只是让他们看一张功能列表很可能出现“每个功能都对但组合起来完全没法用”的尴尬。5.5 文档沉淀需求文档、测试报告、操作手册一脉相承验收阶段结束项目组往往会顺手把需求文档一关投入下一个项目。这个习惯我强烈建议改掉因为操作手册、培训PPT再次启动的时候你会体会到一笔笔“技术债”多让人痛苦。实际上操作手册的最快路径不是重新写而是把AC和测试报告里的场景提炼成标准操作流程。我把这个动作叫“从验收场景到操作手册的三步转化”从AC和测试案例中找出最高频的十个操作路径按用户角色整理成步骤式说明然后配上系统截图。整个转化做下来两个工作日基本能完成还不用担心手册内容与系统实际情况脱节。文档这块我还有一个执念需求文档里每一条AC都要和测试报告里对应的用例编号互链。这样等系统上线一年后新增功能或者换人维护时任何人看到“当时为什么要这样做”都能快速翻回原始的业务账。信息化落地的资产不只是代码是这套完整的需求到交付的证据链。6. 踩坑记录VRPD实践中最常见的五个问题和应对方法6.1 需求蔓延止不住怎么办需求蔓延几乎是所有上新系统项目都会遇到的。刚开始做需求阶段很收敛到了开发阶段业务方突然冒出来“我们突然发现报表里最好加一个同比环比不复杂吧”一次不复杂十次就会让项目崩盘。要止住蔓延第一道闸门就在需求优先级的暂缓清单上。开发阶段收到任何新增需求我不直接对业务说“不做”而是问三个问题这个需求在当初的暂缓清单里吗它和项目成功指标的关联强度是多少如果这期必须加你愿意砍掉哪个排期里的需求来换大部分情况下业务方思考完这三个问题后会发现新增需求其实可以放到正式二期。如果他说不出砍掉哪个需求那我只好提醒他不加变化不等于是停步等于把项目拖延的风险转嫁给了所有人。6.2 关键干系人不表态评审会开成了确认会有些业务负责人习惯性在需求评审会上不说话散会后又在邮件里提意见或者更糟——在项目快交付时才表示“这跟我们方向不符合”。出现这种情况通常不是因为对方没想法而是因为会议氛围或流程没有给他表达的空间。我的排查办法是把需求评审拆成两步。第一步是小范围预审只请最核心的两个业务决策者和相关功能的一线骨干带上具体到字段级的需求稿子进行充分讨论第二步才是大范围会签让相关协同方确认没有遗漏。两步分开后关键干系人的沉默压力会减轻很多因为争议已经在第一步就被消化了第二步只是走确认流程他不需要在公开场合冒险质疑一堆人。当然也有个别负责人习惯性表态暧昧那就把他放到“必须确认否则需求不上线”的位置上让他意识到不表态也是一种表态是拿项目的风险在表态。6.3 模糊需求“到时候再说”等到后面就是巨坑“这个到时候再说吧”大概是我做需求分析时最讨厌的一句话。模糊需求一旦进入开发阶段就会像一个没有标注半径的圆开发自由发挥测试无从下手业务说不对开发说你不是说灵活处理吗过程极其撕裂。遇到这种模糊需求如果它属于优先级高的Must需求我会组织一场专门的澄清会把可能场景列出来逐一让业务方确认。比如他要求“系统要能智能预警库存”我会追问预警触发条件是什么阈值按天跑还是实时跑预警消息发给谁用什么渠道发如果确实有部分需要在系统中做成可配置的那也要明确哪些参数可配哪些逻辑先写死。总之一定要把“到时候再说”变成“现在有了一份备选方案清单”。这件事没有捷径只能靠不断追问来磨。6.4 需求文档写了没人看评审会变成念稿会不少团队需求文档写了一大堆评审会开成“念文档大会”念完大家大眼瞪小眼该通过的通过该忽略的忽略有价值的讨论几乎没有。问题出在文档形式而不是内容上说明写出来的东西不方便对方快速理解。我后来把评审时的材料改成两个各司其职的版本评审会演示版只放高保真原型图、端到端流程图和场景卡片用业务语言讲流程与会者能迅速理解会后归档版才是繁复的需求规格说明用于开发查询和测试追踪。这个改动效果非常明显业务方对演示版投入的关注度远高于对几十页文档的阅读关键争议也能在评审会当场暴露。既然大家都不爱看长文档那会议的目标就是达成共识、把问题谈透文档只是共识的证据而已。6.5 “研发说做不了业务说必须做”怎么调停这种冲突每到排期和开发阶段就会出现而且往往谁都很委屈。研发眼里的技术限制可能是真实存在的业务眼里的业务刚需也可能是真实的硬碰硬只会让项目僵在那里。我的处理方式是先砍掉情绪把争议转成三层问题真实的技术边界是什么会直接影响业务结果的硬性限制还是没有明确证据的预判业务目标的本质是什么是否有其他功能可以达到同样目的如果保留技术边界业务的最小可接受版本是什么样的举个实际例子曾有客户要求“所有报表导出都要实时跑全量数据”研发说全量实时跑会导致数据库严重压力。调停后发现业务真实性需求是“每周一上午领导要看完整版数据”平时只要看增量数据就行。最后方案就是全量报表在夜间预生成白天走增量接口双方都满意。这种方案之所以能谈出来靠的就是在VRPD的框架下聊需求本质而不是在技术细节里互相抬杠。我在实际做项目时最大的体会是VRPD不是一个高深理论它就是个最容易对齐动作的清单。每次项目例会我会把四个字母写在白板角落谁跑题了我点一下字母提醒。几句题外话一提会议方向就回到正轨。方法本身不值钱值钱的是坚持在过去混乱的需求流程里划出一条清晰的线然后让所有相关方都站在这条线上对话。
返回列表