我不知道你的团队有没有遇到过这样的场面:一个功能迭代了五个版本,每次评审都热热闹闹,上线数据一次比一次漂亮,结果半年后业务方说“这玩意儿根本不是我想要的”。更扎心的是,对方还补了一句“你们做的时候怎么不问问我要什么”。这时候你才意识到,不是迭代不够快,不是代码写得不够好,而是从头到尾都在一个错误的方向上使劲跑。
最近在圈子里看到两个热词挺有意思:一个是测量和图形学里的“迭代加密三角网”,一个是内存行业里被反复讨论的“LPDDR迭代情况”。一个讲空间数据的精度逼近,一个讲移动内存标准的代际更替。两个领域八竿子打不着,但底层逻辑出奇一致——所有迭代都必须先有一个明确的目标函数,否则加密再多三角网也只是浪费算力,提升再多频率也只是徒增功耗。软件开发里的迭代,也是同一个道理。
所以这篇不聊具体框架,也不贴代码模板,就想把“你怎么迭代都可以,但仍需要理解业务的需求”这句话掰开揉碎,聊聊为什么需求理解是所有迭代的地基,以及我们到底该怎么在日常开发里做到这一点。
1. 当“迭代能力”变成行业信仰,我们忘了问方向对不对
不知道从什么时候开始,“快速迭代”成了团队执行力的代名词。两周一个版本,小步快跑,灰度发布,A/B测试——这些方法论本身没问题,但当它们从手段变成目的,就很容易让人陷入一种“迭代勤奋”的假象:每个Sprint都排得满满当当,看板上的卡片一张接一张地滑到“已完成”,燃尽图漂亮得像教科书案例,但季度复盘时一看业务指标,该涨的没涨,该降的没降。
1.1 从LPDDR的迭代节奏说起:迭代快不等于技术进步
LPDDR的迭代速度在半导体行业里算典型的“按部就班”:LPDDR4到LPDDR4X,再到LPDDR5、LPDDR5X,每一代提升带宽、降低功耗,目标非常明确——满足移动设备越来越强的拍照算力、游戏渲染、AI推理需求。每一代标准的诞生都不是“我觉得频率能提就提一下”,而是先有一个需求场景摆在前面,比如4K视频录制时的内存带宽瓶颈,比如端侧大模型对内存带宽的饥渴,然后整个产业链再围绕这个需求去定规格、改设计、优化量产良率。
反过来看很多软件团队,迭代的发起往往是因为“别人的产品有这个功能”、“老板觉得我们更新太慢”、“上个版本定的KPI还没凑够”。这些理由不是不能出发迭代,但它们缺少一个关键成分——对业务需求的回扣。就像LPDDR的每一次规格升级都要回答“这个提升是为了解决什么场景的什么问题”,软件的每一次迭代也该回答“这个改动对应业务的哪个痛点、哪个目标、哪个衡量指标”。
我见过最典型的例子是一个B2B交易后台,团队把“刷新速度”从800毫秒优化到300毫秒,做了两轮迭代,技术方案从懒加载调到虚拟滚动,再把接口拆成并行请求,测试数据确实漂亮。但谁也没问过用户:他们根本不在这个页面反复刷列表,真正的痛点是批量导入时经常超时失败。这就像内存频率从3200涨到6400,但用户的实际瓶颈在App冷启动的IO等待上——提升频率再高也帮不上忙。
1.2 迭代加密三角网:没有目标约束的迭代会有多可怕
“迭代加密三角网”这个概念来自数字地形建模:先用稀疏的采样点构建一个粗糙的不规则三角网(TIN),然后不断加入新的采样点,把大三角形剖分成小三角形,使地形表面越来越逼近真实地貌。这个过程的精妙之处在于,每一步加密都是有方向、有判据的——哪个区域地形起伏大、误差贡献高,就往哪里补点;平缓的区域,点再稀也无所谓。
如果反过来,不加判据地均匀加密,会出现什么结果?算力全花在补点上,存储膨胀,但关键地形的精度反而没提上来。这跟软件迭代里“均匀用力”的毛病一模一样:每个模块都塞几个新功能,每个页面都调一调视觉,每块代码都顺手重构一下,看似到处都在变好,但对业务结果影响最大的那一个点,始终没有被真正打穿。
我在团队内部经常讲一句话:迭代加密三角网的关键不只是“加密”,而是“知道该往哪儿加密”。这个“哪儿”怎么确定?就是业务需求的分析结果。哪个环节用户流失率最高、哪个页面用户停留时间异常、哪条链路报错率上升——数据会告诉你地形哪里起伏大,需求分析会告诉你这里到底需要修路还是需要架桥。没有这一步,所有迭代都是盲人摸象式的“均匀加密”。
1.3 软件行业里“为迭代而迭代”的典型症状
症状一:版本计划排得满满当当,但每个需求都说不清楚“为什么是现在做”。问产品经理,回答是“老板说的”;问技术负责人,回答是“反正这期排期有富余”。需求不是来自用户痛点或业务目标的拆解,而是来自“排期表上总得有东西”。
症状二:复盘只看交付率。这个版本上线了10个功能,其中8个准时完成,2个延了两个迭代,团队复盘的大头全在这2个延期原因上,却没有人问那8个按时完成的功能里,有几个是用户真正用得上的。交付效率是提升了,交付方向对不对没人管。
症状三:把“技术驱动迭代”当成万能挡箭牌。引入新框架、重构旧模块、自研中间件,技术债务确实还了,架构也确实更先进了,但如果这些事情不能服务于某项业务阶段性目标,那它们就是团队自嗨——这句话很刺耳,但事实就是如此。技术迭代也要有业务语境的锚点,哪怕这个业务语境是“未来半年预计流量翻倍,需要提前做好水平扩展准备”,也比“人家都在用这个框架我们也跟上”要靠谱得多。
这三个症状的共同根源只有一个:团队把迭代本身当成了KPI,而忘了迭代只是手段,业务需求的理解和满足才是目的。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 业务需求不是“用户说的那个需求”:三层拆解法
要真正做到理解业务需求,第一步不是去逮着业务方问“你想要什么”,而是先搞清楚——业务方嘴上说的那个需求,通常已经是他们经过一层“自我加工”后的产品方案,而不是原始问题。如果你直接把这句话当需求拿去做,那你就只是业务方的一个外包开发,而不是一个真正能解决问题的工程师。
2.1 伪需求识别:用户说的不一定是真需求
我团队里有个前端小姑娘,有一次接到一个需求:“帮我在每个订单详情页加一个‘一键复制订单号’的按钮”。需求描述得很具体,按钮位置、交互样式、Toast提示文案都写好了。她差点就直接排期做了,但多问了一句“你为什么要复制订单号”,业务方回答“因为客服每天要对着订单号去ERP里查好多遍订单状态,手动复制容易漏字”。
追问到这一层,问题就变了:客服的核心痛点不是“复制这个动作”,而是“每天要反复在两个系统间核对订单状态,操作繁琐”。顺着这个方向一看,发现其实有现成的接口可以把这个查询动作直接做到后台里,订单页一行字“查看ERP状态”点进去就能看到,根本不需要复制订单号。最后实现的方案比原需求简单得多,但真正解决了业务问题,客服人均每天节省了大概40分钟的重复劳动。
这就是伪需求和真需求的区别。伪需求是用户在既有工作流里憋出来的“改进意见”,它默认了你得继续沿用他们现在的做事方式;真需求是用户想要达成的那个业务结果。识别伪需求的办法也很简单——多问几个“为什么”和“然后呢”,打破沙锅问到底,直到用户说出的内容不再是一个具体的界面交互,而是一个业务上的困境或目标。
2.2 需求的三层结构:表述层、动机层、约束层
我把需求拆成三层来看:
第一层是“表述层”,也就是用户原话里那个具体的东西。比如“这个Excel导出要支持按日期范围筛选”、“我要一个待办事项的角标红点”、“搜索框要支持模糊匹配”。这些往往是业务方观察到自己工作繁琐之后,自己脑海里的解决方案的具象化。它们不是不能做,但要审慎对待。
第二层是“动机层”,也是真正需要挖掘的地方。为什么需要按日期范围筛选导出?因为月底要对账,要导出整月的数据,逐日翻太累了。为什么需要待办角标红点?因为销售怕漏掉客户跟进,一旦漏了月底业绩就难看。动机层往往与业务KPI、岗位考核、协作成本、合规要求挂钩,找到动机层,你才真正理解了“为什么要做这个功能”。
第三层是“约束层”,这是最容易被忽略的。业务方的需求描述里通常不提约束,但约束一旦被突破,方案就是废纸。常见的约束有:数据权限(不同角色导出时能看到的列不一样)、性能预算(几千万行数据不能等十分钟才导完)、合规要求(客户手机号不能出现在本地缓存里)、上线时间(必须赶在月底盘点前)。技术人最容易犯的错是只盯着表述层,做了个系统上完美、业务上越权的功能。
2.3 一个订单导出功能的完整拆解案例
拿一个最常见的“订单导出”需求当例子,完整走一遍三层拆解:
假设业务方说:“我要在订单列表上加一个导出按钮,可以按时间、按状态筛选,导成Excel。”这是表述层。如果直接做,团队可能要做一个支持百万级数据导出的异步任务系统,还要处理Excel文件大小限制、内存溢出、权限过滤各种问题,预估两三个迭代才敢上线。
但如果你追问动机层,得到的答案可能是:“每月5号前要把上月的订单跟仓库实际发货记录做一遍核对,之前都是人工从前台一页页翻,眼睛都要看瞎了。”这时候你会发现,真正的需求不是“导出Excel”,而是“让对账这件事变得不再耗时耗力”。
再往约束层看,业务方补充:“导出的数据里有客户的收货地址和手机号,这些在系统里是敏感数据,老板说不能导出到个人电脑上。”这个约束一下就改变了技术方案——与其做一个通用导出功能,不如做一个“对账专用报表”,只在系统内展示,并且内置diff逻辑,直接把前台后台的数据差异标出来。用户连Excel都不用开,对账完成时间从两天缩短到两小时。
这个案例最想说明的是:理解业务需求不是一个虚头巴脑的“多沟通”要求,而是实实在在影响技术选型和迭代成本的动作。你不挖到动机层,就不知道“导出”只是表象;你不问约束层,就永远想不明白为什么用户总说“这个功能差点意思”。三层拆解法只是个工具,真正重要的是养成一个习惯——永远不满足于用户的第一句话,那句话只是他自己对问题的翻译,而你要去理解问题本身。
3. 需求理解的失败案例复盘:我们是怎么把系统迭代成废墟的
讲理论容易,落到实际就虚了。所以这一节想拆一个真实的失败案例,也算是给各位一个反面教材。这个案例不是网上抄来的,是我自己带团队时亲身经历的一个仓储管理系统(WMS)项目,前后做了五年,从一个被寄予厚望的业务中台,迭代成一个没人想用的老顽固。
3.1 第一阶段:完美复刻线下流程,却没人用系统
项目背景很简单:仓库管理的线下流程一直靠纸质单据和Excel表格,老板想上一个WMS系统,把出入库、盘点、库位管理信息化。立项时开了三次会,业务方全程配合,需求文档写得密密麻麻——拣货单要几联、盘点单要几个人签字、异常入库要走什么审批流、纸质单据上每个字段顺序都要在系统里还原。
团队当时觉得这需求挺清晰,照做就行。技术选型、表结构、界面交互全都围绕“复刻线下流程”来设计,每一个线下单据都在系统里有对应模块,每一个签字环节都做了线上审批流。前后做了八个月,上线那天业务方还很捧场地发了条朋友圈。
但三个月后,登录率只剩三成。原因特别讽刺:仓库管理员觉得系统太“重”了。原来手写一张单子几秒钟的事,系统里要开单、选库位、找商品、确认提交,步骤比原来还多。而且系统的设计逻辑完全照搬线下,线下有什么岗位角色,系统里就有什么角色权限——结果一个管理员要同时登两个账号才能干完原来的活。
复盘的时候我才想明白:线下流程是人和纸之间的默契,很多“必填字段”在实际操作里是可以后补的,但系统把它固化死。业务方的需求描述“把线下流程系统化”本质上是表述层的,真正的动机层是“减少重复登记、消除月底对账的麻烦、让老板随时能知道库存”,而最佳的方案大概率不是一比一复刻,而是重新设计一套更适合软件操作的流程。我们花了八个月做了一个“电子化线下流程”,而不是一个“信息化仓储工具”。
3.2 第二阶段:疯狂堆功能的恶性循环
系统没人用,名声坏了,团队第一反应不是去理解需求,而是“那肯定是功能不够好、不够多”。于是第二年开始疯狂堆功能:支持自定义打印模板、支持标签批量打印的字段调整、做一个手机端让管理员在仓库里也能扫码、接了一个AI预测补货的算法模块……每一个新功能都有业务方某个人一句“要是能……就好了”作为背书。
这个阶段最可怕的是,业务部门的反馈也开始变得碎片化。运营说多一个批次管理,财务说要支持按供应商拆账,老板说要可视化大屏,片区经理说要移动审批。每个需求听起来都有道理,每个也都有人着急要,团队就按优先级排,一个个做。
一年以后再看,系统功能量比第一版翻了两倍多,但月活还是没有起色。反而因为功能铺得太广,每个模块都只是“能用但不顺手”,用户宁愿回Excel也不愿在系统里点来点去。等到有一个大客户来参观,现场演示系统时点开一个报表加载了五秒,老板脸色当场就变了——技术团队才如梦初醒,原来我们自己在造一个新的“数字废墟”。
现在回看,堆功能本质上就是一种“均匀加密”式的迭代:没有判据,没有目标函数,没有想过每个功能到底对应哪个业务问题的哪个指标。我们被“业务方提了什么就做什么”的被动节奏裹挟,忘了自己本来应该做那个“知道该往哪里加密”的人。
3.3 第三阶段:被数据打醒之后的重构教训
转机出现在上线之后的第18个月。当时公司终于同意我们做一次系统的全链路埋点,前后花了两周收集数据。当数据汇总表摆在我面前时,我整个人都愣住了:整个系统里被使用率最高的功能,是一个大家当初都没怎么当回事的“快速出入库”按钮,占了全部操作量的62%;而当初花了大量人力做的自定义打印模板、AI补货算法,使用率加起来不到1%。
扎心的数据倒逼我们重新回到业务现场。团队花了两周时间,三个开发轮流去仓库跟着仓管员干活,记录他们实际的操作路径和抱怨内容。然后我们才后知后觉地发现:仓管员每天干得最多的不是“按流程做单据”,而是“快速找到一件货、确认数量、让它出库”,他们要的是极简的扫码操作;而主管每天要看的是“还有多少货积压、哪些库位出错率高”,他们要的是例外预警而不是一张全量报表。
第四年我们做了一个大胆的决定:把系统回炉重造,保留那个使用率最高的快速出入库按钮和库存实时查询,把其他花哨模块全部下掉,重新基于仓管员“扫码、确认、走人”这六个字设计交互。重构版本只花了六个月,但上线后一个月,仓库的录单效率比原来手写提高了三倍,月活直接从三成跳到八成。
这个案例让我学会的最重要的一件事是:业务需求不是你开几次会就能“完成理解”的,它是一个持续的、需要拿数据和现场反馈不断修正的过程。以前我们以为开完需求评审会就万事大吉,后来才明白那只是第一次接触地形,真正的地貌是后期加密三角网时边跑边修正才逐渐清晰的。
4. 在迭代中保持需求理解不跑偏的六个实操习惯
前几节把道理和教训都讲透了,这一节给能直接上手用的东西。理解业务需求不是一次性动作,而是在整个迭代周期里持续做对的事。下面六个习惯是我和团队踩过无数坑之后沉淀下来的,每一条都对应一个具体的失败教训。
4.1 让业务方参与验收,而不是只看PRD
很多团队的需求验收方式是“产品经理看完PRD确认无误,开发自测通过,测试用例跑完,上线”。这个流程看似完整,但它缺少了最重要的一环:让真实业务用户在真实数据上操作一遍。业务方在评审PRD时是“看图说话”,很多流程细节他想象不到实际用起来有多别扭。
我们现在的做法是:每个迭代的测试用例里,至少要有五条是“业务场景用例”,由业务方关键用户来写,开发提供系统支持。比如“仓管员需要连续扫十个批次码,平均每单扫描间隔小于3秒”,这类用例测试的目的不是验证功能正确性,而是验证“动作流程顺不顺、痛不痛”。业务方在验收时亲手点一遍,比任何PRD评审都真实有效。
4.2 用“5个为什么”定位真实诉求
这是丰田精益生产里最爱用的提问法,搬到需求分析里同样好用。团队立了一个规矩:每个新需求在进入迭代前,必须经过至少三轮“为什么”追问,而且这个追问的记录要跟着需求文档一起归档。
举一个我们真实遇到过的例子:业务方提出要“加一个批量审批功能”——听起来传统做法就是列表勾选、批量通过,很常规。但五连问后我们才知道,真正的瓶颈是月底有大量报销单卡在某位经理那儿,因为他出差没法登录系统;继续追问才知道,这个系统根本不需要批量审批,需要的是“审批委托机制”,让经理可以远程把权限委托给副手。如果当时我们直接做批量审批,一方面增加了误点风险,一方面也没有解决“经理不在现场”这个根本问题。
4.3 建立需求变更的“追溯日志”
需求变更是迭代里绕不开的事,但大多数团队只在变更单上写“变更内容+原因”,没有建立“这个需求最初是为了解决什么”的追溯链。建议每个需求从一个编号开始,就跟着一个“来源记录”,写清楚是谁在什么业务场景下提出的,期望达成什么业务目标。
这不是为了追责,而是为了后续迭代做判断依据。半年后当你面对一个使用率极低的功能,犹豫要不要做优化时,翻出这张追溯日志,会发现当初做它的原因早就消失了——既然原因没了,功能留着就是负担,不如关掉。追溯日志还能防止“需求漂移”,当业务方不断加细节时,你可以拿原始目标反问:这个细节和我们要解决的问题还相关吗?
4.4 周期性做一次“需求减法”
迭代不能只做加法,减法同样重要。每季度安排一个固定迭代做“功能瘦身”,方案很简单:把使用率最低的五个功能列出来,结合追溯日志判断它们当初的目标是否还有效,然后要么直接下线,要么重构。这里有个特别的技巧——砍之前先发公告预告两周,看有没有用户来反对。
如果两周没有任何人提问或投诉,那这个功能大概率真的没人用,可以放心砍;如果有人反对,反而是一次绝佳的机会,去了解到现在还坚持用它的那批用户的真实业务场景是什么。我们去年这么一折腾,砍掉了三个历史遗留功能,系统前端包体积瘦了18%,后台响应速度也明显提升——因为数据库里少了几个没人用但还在跑统计的表。
4.5 和一线用户同坐一桌
很多需求误解的根源是“只和负责人聊需求,不跟实际操作者聊感受”。负责人对流程了解但不对操作细节敏感,操作细节恰恰是决定系统好用与否的关键。所以团队约定,每个迭代至少安排一次和一线用户的开放式交流,不是需求评审,就是单纯在旁边看他们怎么工作。
有一次去客服部门坐了一下午,发现她们做订单查询时要频繁地在两个tab之间切换,因为订单列表和客户详情是分开的页面。一线用户自己知道这个操作很繁琐,但从来没提过需求,因为她们觉得“这可能是系统设计上的限制,提了也不会改”。然而对开发来说,把两个tab合成一个侧边抽屉一小时就能搞定,工作量不大,但客服幸福感提升非常明显。你看,坐一桌不一定能得到惊天动地的需求,但往往能在细节里发现别人憋着不说的问题。
4.6 上线前先走一遍“业务游街”
“业务游街”是我从一次惨痛上线事故里总结出来的。那次新版本上线后,财务主管反馈“报销审批流程里少了一个加签环节”,但测试环境里这个流程明明跑通了,因为测试数据里所有审批人都设置了加签权限,而真实账号体系里财务主管根本没有加签权限。数据权限配置和功能逻辑完全对不上,是这类问题的通病。
现在的做法是:上线前一周,把功能的关键流程拉一条“游街清单”,带着财务、仓管、客服、运营等不同角色各走一遍完整的新流程,而不是只走自己角色的那一段。不同角色视角下的系统完全是不同的系统,财务看到的是账单要对上,客服看到的是响应要快,仓管看到的是操作要顺手,让每个角色都实际走一遍,才能发现在“功能正确”前提下“业务不成立”的坑。
5. 当需求理解到位之后,技术迭代才真正开始有意义
把前面几节捋顺了,最后想聊一聊技术选型和迭代节奏这件事。很多开发会说“需求我来理解有什么用,架构是架构师定的,节奏是项目经理定的,我就写写业务代码”。但我觉得恰恰相反,理解业务需求是所有人参与技术决策的起点,因为只有在理解的基础上,你这个“写写业务代码的人”才能判断眼前的方案或迭代是不是真的适合。
5.1 技术方案要先回答业务问题
技术圈每隔一段时间就有一个新概念,微服务、Serverless、容器化、区块存储、领域驱动设计、事件驱动架构……它们本身都是好东西,但我在实际项目里见过太多“为了用而用”的情况:单体应用都没跑明白就拆了二十个微服务,每天跨模块调来调去,一查日活才几百人,数据库压力还没接口本身的序列化开销大。这就是典型的没有先回答业务问题,就急着上技术方案。
理解业务需求之后,你会发现很多技术选型的答案其实是业务给的:业务要支持快速增长期的高并发,可以先做读写分离而不是一开始就上分布式事务;业务数据有强一致性的合规要求,那缓存更新策略就得格外保守;核心用户只在固定时段使用,那定时任务就可以放心堆在凌晨跑。技术迭代做得好不好,不在于用了多少新技术,而在于它是否恰好匹配了业务当时最需要的那个“点”。
我经常拿房子打比方:你可以把装修换得很豪华,但前提是得知道这房子是用来住的还是用来开的店。不同的用途,结构改造的方向完全不同——住的需求是安静舒适,开店的需求是人流动线。技术迭代也一样,同样的迭代次数,业务需求理解深的人改的是承重墙和动线,理解浅的人一直在换壁纸。
5.2 迭代的节奏由业务价值决定,而不是由排期决定
另一个重要认知是:迭代周期不该是拍脑袋定死的两周或一个月的固定节奏,而应该按业务价值的“成熟度”来动态调整。一个需求还在探索阶段,你非要两周交付,大概率只能交付一个半成品;一个需求业务已经非常明确,你再按部就班排两个迭代,业务机会可能就错过了。
具体怎么定节奏?我的经验是在每个迭代排期前先做一个“业务价值排序”。把待办池里的需求按两个维度打分——业务影响(这个需求能带来什么可量化的价值)和需求确定性(业务方有多清楚自己要什么),然后分成四类:高价值高确定的排最前面用完全迭代做扎实;高价值低确定的先用一个快速原型验证再决定要不要正式迭代;低价值高确定的直接排到空闲迭代做顺手的事;低价值低确定的一律进冷宫,别提上日程。
这套打分卡比单纯的优先级标签靠谱得多。因为“优先级”这个词太主观了,产品经理说P0老板说加急,谁嗓门大谁赢,但价值打分至少要求你把“为什么现在做”说成一句话——说不出来,就说明你其实不理解这个需求对业务的真实意义。
5.3 技术债和业务需求之间的阶段性平衡
最后说说技术债。很多技术团队每年都会有一波“还债”的冲动:重构核心模块、升级框架大版本、统一日志体系。这类迭代对长期效率是好事,但它天然和业务需求的迭代抢资源。这时候就需要你对业务需求有足够深的理解,才能知道哪些技术债现在该还、哪些可以再拖一拖。
比如你负责的交易系统每年只在双十一会有一次流量高峰,那其他时间完全可以抽一个迭代做框架升级,不影响业务;但如果你是给一个每天都有大促活动的新零售平台干活,那所有“重构核心链路”的还债都应该拆成小步走,在业务低峰期小范围上线。理解业务需求的价值就在于,你能看清业务节奏的高峰低谷,让技术债的偿还避开那些“业务最需要稳定”的时间窗口。
我刚带项目的时候,总觉得“还技术债”是一件理直气壮的事,只要代码写得自己舒服就行。但后来业务方有一次指着线上异常监控图问我:你们这周更新的那个东西对于客户下单量到底有什么帮助?我答不上来。那次以后我明白了一个道理:技术迭代和技术债的偿还,都必须能用一句业务语言来回答它存在的意义,不然这个迭代就是纯粹的技术自嗨。
写在最后:迭代是放大器,需求理解才是源信号
前阵子和一个刚转行做产品经理的年轻同事聊天,他说自己最大的困惑是“现在工具链太好了,用户反馈收集、数据埋点、A/B实验,什么数据都能拿到,但反而不知道该做哪个功能了”。我告诉他,这个困惑说明你已经走在正确的路上了——需求收集工具只是放大器,你脑子里对业务的理解才是输入信号。信号是错的,放大器功率越大,跑偏的速度就越快。
这几年的项目管理经验让我有个很深的体会:团队的迭代能力是可以快速培养的,DevOps拉起来、自动化测试跑上、敏捷流程一套,两个月就能见效。但需求理解这件事,没有速成班,它要求你不断地去业务现场、追问为什么、看数据、被用户打脸然后修正认知。它慢,但它决定了所有迭代的最终方向。
我自己现在在每个迭代启动会前,都会先问团队一个问题:这个版本我们到底想解决哪个业务问题?如果说得出来,哪怕解决方案还在探索,这个迭代就有意义;如果说不上来,那不管排期多满、技术多炫,这个迭代都该停下来,先去把需求聊明白再说。别怕慢,方向错了,越快的迭代只会让你越早在错误的路上一去不返。
