团队抗拒瀑布,我们用试点项目说服

一、我们都曾在会议室里输过

2022 年秋天,我在一家 200 人规模的 SaaS 公司做研发管理咨询。CTO 把我拉到小会议室,门关上第一句话就是:“团队死活不肯动,你帮我劝劝。”

他说的“动”,是把一个运作了三年的瀑布流程,切到 Scrum。团队的反应很一致,15 个研发,13 个明确表示“没必要”。剩下的 2 个表示“随便,别耽误发版就行”。

那次会议我印象极深。一位在后端做了四年的老大哥当场说了一段话:“我们现在需求文档写清楚、开发按计划写代码、测试按用例测,发版虽然慢点,但至少可控。你把我们拆成两周一个迭代,需求还没想明白就得交代码,最后肯定是一堆技术债。”

他说完,会议室里七八个人点头。

我那天没反驳他。因为他说对了一半,在没有配套工程实践和需求拆分能力的情况下直接切迭代开发,确实会产生大量技术债。这不是团队保守,这是他们对自己工程质量负责。

但另一半他没说对。他们当时的状态是:一个版本周期 6 周,前 4 周开发,后 2 周测试修 bug。看起来可控,实际上每次上线前最后一周都在通宵。更致命的是,业务方在第三周提出需求变更时,项目经理的回复永远是“下个版本再说”。等到下个版本,市场窗口已经关了。

这件事的转折点不在我说了什么,而在于我们做了一个决定:不开全体动员会,不搞敏捷培训,不在晨会上喊口号。我们用一个小到没人觉得危险的试点项目,让结果自己说话。

这篇文章,我想把那次经历完整复盘出来。不是讲敏捷有多好,而是讲一个更具体的问题:当团队对现有流程有真实依赖时,你用什么方式推动改变,才不会把人推走。

团队抗拒瀑布,我们用试点项目说服

二、别急着谈敏捷,先搞清楚团队在抗拒什么

做了这些年研发管理咨询,我观察到一个规律:90% 的“抗拒敏捷”本质上不是抗拒敏捷框架本身,而是抗拒三样东西,失控感、隐性成本、不被承认的经验。

这三个东西你不先解决掉,任何方法论推广都会撞墙。

1. 失控感不是矫情,是真实的职业焦虑

瀑布模型给团队最大的心理收益,不是效率,是确定性。需求冻结之后,开发知道这 4 周要写什么;测试知道这 2 周要测什么;项目经理知道 6 周后能交付什么边界。

你跟他们说“我们要拥抱变化”,他们听到的是“以后随时可能有人改需求,但我还得按原定时间上线”。

2023 年 State of Agile Report 里有一组数据我经常引用:在转型失败的团队中,41% 的受访者将失败原因归于“组织文化与敏捷价值观的冲突”。但如果你把“文化冲突”拆开看,里面最具体的一条就是,团队成员觉得自己对工作的控制权被剥夺了。

这不是矫情。这是他们评估自己工作安全感的真实依据。

2. 隐性成本没人算,但每个人都感受到了

一个常见的误区是:管理者只计算“切换流程后的收益”,不计算“切换流程本身的成本”。

切换成本包括什么?我来列一下当时那家公司我们事后盘点出来的实际消耗:

  • 学习成本:团队 15 人,每人至少需要 3-5 个工作日熟悉 Scrum 事件、工件、角色定义。这不只是看文档,还要在真实迭代里踩坑。
  • 工具迁移成本:从老的项目管理工具迁移到 PingCode,历史数据清洗、需求重新结构化、自动化规则配置,一个专职人员干了 2 周。
  • 适应期生产力下降:第一个试点迭代,团队速率只有正常状态的 60% 左右。不是他们不努力,是每个人都在新流程里反复确认“我这一步做完下一步是什么”。
  • 沟通成本短期激增:每日站会、Sprint 计划会、评审会、回顾会,这些会议加起来,第一个 Sprint 的会议时间比原来多出近 3 倍。

这些成本如果管理者不提前承认、不纳入预期管理,团队成员就会觉得“你们在拿我的时间做实验”。这种感受一旦形成,信任修复成本极高。

3. 最危险的抗拒是不说出来的那种

2019 年我在一家金融科技公司见过一个案例。表面上团队全员同意试点 Scrum,站会按时开、任务板每天更新。三个月后一复盘,发现 8 个迭代里有 6 个迭代的交付物和 Sprint 计划严重偏离。表面上大家在跑敏捷,实际上开发私下保留了一套“影子瀑布流程”,架构师提前把需求文档写完,开发按文档一次性实现,测试集中到最后一周统一测。Sprint 计划会变成了“给已经做完的活补录任务卡”。

这种“假敏捷”比直接抗拒危害更大。因为直接抗拒你能看见、能沟通、能想办法。假敏捷让你以为转型成功了,实际上原有的问题一个没少,还多了一层流程表象的维护成本。

我当时问那个团队的 Tech Lead:为什么不直接说这流程不合适?他的回答让我记到现在:“我提过两次,每次都被回复‘你要拥抱变化’。后来我就不说了,反正活还是得干完。”

这句话背后是一个关键洞察:当团队成员觉得自己的反对意见不会被认真对待时,他们会把真正的流程藏在底下,只给你看你想看的那层皮。

团队抗拒瀑布,我们用试点项目说服

三、试点不是“小范围试一下”,而是设计一场降低防御的实验

很多人误以为试点的核心是“范围小”。小当然重要,但更重要的东西在前面:你要让团队觉得这不是一次“考验”,而是一次“验证”,验证新流程能不能解决他们自己的痛点。

这中间的区别决定了试点是被人配合还是被人抵触。

回到 2022 年那家 SaaS 公司。我们当时没有一上来就宣布“我们要试点 Scrum”。我们做了三件事:

1. 先花一周时间搞清楚团队到底痛在哪

我跟每个开发、测试、产品经理做了一对一访谈,每人 45 分钟。问的问题不是“你觉得敏捷怎么样”,而是:

  • “过去半年你在项目里最难受的一个时刻是什么?”
  • “如果有一个流程你明天可以改掉,你改什么?”
  • “你觉得自己做的活,哪些是真正产生价值的,哪些是在填坑?”

结果非常一致。15 个研发里,11 个人提到了“最后一星期压力大到想离职”。测试团队 4 个人全提了同一个问题:开发延期交付导致测试时间被压缩,测试测不完还要背锅。

这些痛苦就是试点项目的“燃料”。如果试点不能缓解这些痛苦,你流程画得再漂亮也没人理你。

2. 用痛点反推试点目标,而不是照搬 Scrum 理论

传统 Scrum 推广喜欢把目标设成“建立跨职能自组织团队”、“提升团队速率”这种从框架出发的表述。但团队不关心这些。他们关心的是:“下一次上线前我还会不会通宵。”

所以我们当时把试点目标定了三条:

  1. 把测试人员介入时间从开发完成后提前到开发过程中,测试不再被最后一周压垮。
  2. 需求变更不堆到版本末期集中引爆,而是在迭代边界上有序处理。
  3. 每次迭代结束至少有一个可演示的增量,让业务方看得见进展,减少最后一刻加需求。

这三条目标从头到尾没有出现“敏捷”、“Scrum”这些词。我们把它包装成“解决当下问题的试点流程”,而不是“敏捷转型项目”。

这个表述上的调整非常关键。因为你推的不再是一个外来框架,而是一个为了解决他们自己提出的问题而设计的实验

3. 选一个最容易赢的试点范围

选项标准我后来总结成了四条,到现在还在用:

筛选维度 选择标准 当年那个案例的实际选择
业务价值 有明确、可量化的业务指标,成功与否一目了然 一个客户投诉率最高的报表模块,NPS 评分连续三个季度下滑
技术风险 技术复杂度可控,不要选那种架构大改的模块 报表模块主要是数据聚合和展示逻辑,不涉及底层数据管道改造
团队意愿 至少有 1-2 个愿意尝试的人,不要全员都抵触的组 前端组长对“早点让测试介入”这事很积极,因为他受够了上线前改样式
周期长度 2-4 周能出可演示结果,太久会消耗耐心 定了一个 3 周的 Sprint,因为报表模块有几个复杂图表需要联调

最后选出来的是一个 4 人小组:1 个后端、1 个前端、1 个测试、1 个产品经理。这个配置有两个好处:第一,人数少沟通成本低;第二,跨职能角色齐全,能在 Sprint 内跑通完整的开发到测试闭环。

团队抗拒瀑布,我们用试点项目说服

四、PingCode 上的真实试点:3 周里到底发生了什么

这一节我想把试点过程拆开讲清楚。因为大多数“试点成功了”的故事只讲开头和结尾,中间那段最混乱、最不确定、最容易放弃的过程往往被省略了。但恰恰是中间这一段,决定了试点是变成信心还是变成反面教材。

我们用的工具是 PingCode。原因有两个:一是那个团队之前用的老工具不支持迭代管理和看板视图,二是 PingCode 的需求多级管理(史诗-特性-用户故事)正好匹配他们产品的功能层级。不过我要强调一点:工具不是关键,流程设计的合理性才是。工具只是让你不额外增加管理负担。

1. Sprint 0:花 2 天做一件没人做过的事,把需求拆到“开发敢领任务”的粒度

瀑布模式下,他们的需求文档是一份 40 页的 PRD,开发自己从里面提取任务。问题在于,不同的开发对同一段需求描述理解不同,开发到一半发现理解偏差再返工,这是常态。

Sprint 0 我们用 PingCode 把报表模块的需求按史诗-特性-用户故事三级拆开。具体结构是这样的:

  • 史诗层:报表中心改版(对应整个模块的战略目标)
  • 特性层:自定义报表筛选器、实时数据刷新、导出格式支持、图表组件优化(按功能域拆分)
  • 用户故事层:以“作为 XX 角色,我希望 XX 功能,以便 XX 目的”的格式,每条用户故事对应一个可独立开发、测试、演示的最小单元

这个过程产品经理一开始非常抗拒。她说“我写了三年 PRD,为什么要改成这种格式”。我没跟她争论,而是让她先试拆 3 个用户故事,拆完之后把后端开发和测试叫过来一起看,问他们“这三个故事你理解一致吗”。

不出意外,后端和测试对其中一条故事的理解完全不同。后端觉得“导出格式支持 Excel 和 PDF”只需要调两个导出类,测试觉得还需要覆盖 CSV 和图片格式。这个分歧在 PRD 时代要到测试执行阶段才会暴露,现在提前到了 Sprint 计划会上。

产品经理在看到这个分歧的时候,是试点里第一个认知转折点。她意识到用户故事的价值不是换了个格式,而是把信息不对称提前暴露出来。从那之后,她成了整个试点最积极的推动者。

2. Sprint 1 第一天:站会上有人沉默了整整 3 分钟

Daily Scrum 第一天,我让每个人回答三个问题:昨天做了什么、今天计划做什么、有什么障碍。第一个发言的后端说了“昨天在拆任务,今天写代码”,然后沉默了。我问有什么障碍,他停了一下说“我不知道这个 Sprint 结束后,如果需求变了,我写的代码是不是白写了”

这是我前面说的“失控感”的典型表现。他不是在抗拒站会,他是在担心迭代开发意味着他的工作量不再有“需求冻结”这层保障。

我当时给他的回复是:“这个 Sprint 内的需求不会变。Sprint 进行中如果有新需求进来,产品经理会记录到 Backlog 里,在当前 Sprint 结束后的计划会上排优先级。你不是白写任何一行代码。”

这个承诺对试点至关重要。Scrum 指南说 Sprint 进行中不应改变目标,但很多转型团队为了“拥抱变化”把这个原则丢了。我的经验是:试点阶段你对 Sprint 边界的保护越坚决,团队成员的安全感就越强,他们就越愿意在下个 Sprint 接受更多变化。

3. 第二周中期:测试第一次在开发没写完代码时就发现了问题

这是试点里第二个转折点。按照瀑布流程,测试要等开发提测之后才能介入。这次我们让测试在 Sprint 的第二周就参与进来,不是正式测试,而是和开发一起 Review 用户故事、编写测试用例、在开发环境里做探索性测试。

测试在开发还在写代码的阶段,就发现了一个前端在图表数据转换逻辑里的计算错误。这个错误如果放到原来最后一周集中测试,至少要多花半天定位问题,还可能连带到关联功能。

那个测试小姑娘在回顾会上说了一句话,我到现在还记得:“我在这个公司做了两年测试,第一次觉得我不是在‘接锅’,而是在‘堵漏’。”

这就是试点最核心的说服力来源。不是数据报表,不是流程图表,而是一个具体的团队成员,在她自己的日常工作里感受到了真实改善。

团队抗拒瀑布,我们用试点项目说服

4. Sprint 评审:业务方一句话摧毁了“等下一版再说”的文化惯性

瀑布时代,业务方看产品的方式是:等 6 周,拿到一个完整版本,然后在一周内提出 30 条修改意见。很多意见其实不是真正的需求变更,而是“我在 PRD 阶段没想清楚,看到实际页面才意识到要改”。

Sprint 1 评审会,我们演示了一个可交互的仪表盘页面。虽然只完成了整体报表模块的 40%,但这个页面是真实可操作的。业务负责人看了 5 分钟,提了 3 条反馈。其中一条是“筛选器的默认时间范围应该支持自定义”。

按原来的节奏,这条反馈要走变更流程、重新排期、纳入下一个 6 周版本。这次产品经理直接在 PingCode 里创建了一条用户故事,在当天的 Sprint 回顾会之后排到了下一个 Sprint 的 Backlog 优先级第二。

业务负责人当场问了一句:“这个意见下次评审就能看到?”产品经理说“三周后”。业务负责人的回应是:“那比之前快了一倍,你们早该这么干。

这句话是试点的第三个转折点。它不是来自咨询师的布道,不是来自管理层的施压,而是来自业务方这个直接利益相关者的真实认可。这种外部认可对团队的激励,远远大于内部所有的动员会加起来。

5. Sprint 回顾:差点搞砸,但正是“差点搞砸”证明了机制的价值

Sprint 1 也不是一帆风顺。中间有一天后端因为一个权限校验的逻辑卡了 8 个小时,站会上他直言“用户故事里没写清楚权限规则,我在猜”。

这件事在回顾会上被列为了“需要改进”的第一条。团队的讨论很激烈,产品经理觉得“权限规则应该在特性层统一说明,不需要每条故事重复”,后端觉得“就算特性层写了,落实到具体故事也要有明确的准入条件”。测试补了一句“不光是权限,所有非功能需求都需要在故事准入时有 checklist”。

最后他们达成了一个共识:每个用户故事进入 Sprint Backlog 之前,必须有一个“就绪定义”(Definition of Ready),包含功能点描述、验收标准、依赖接口、非功能需求清单。

这个共识不是来自 Scrum 教程,是来自他们自己踩了坑之后的反思。这种“自己长出来的规则”,执行力度远高于外部强加的流程要求。

团队抗拒瀑布,我们用试点项目说服

五、一个试点说服不了所有人,但它能说服该说服的人

Sprint 1 结束后,我没有马上去跟 CTO 汇报“试点成功,可以推广”。我做了另一件事:让试点小组自己给全团队做一场 30 分钟的分享。

不做 PPT 宣讲,只做三件事:演示可交互的产品增量、坦诚讲试点中踩的坑、回答其他同事的提问。

这场分享的效果超出预期。因为分享人不是“上面派来的顾问”,而是每天一起吃饭的同事。他说“站会一开始我也觉得很蠢”的时候,其他人笑了。他说“但后来我发现 15 分钟说完该说的比在群里催进度高效多了”的时候,有人在点头。

但我也要诚实地说:那场分享之后,并没有 15 个人全体举手说“我们也要用 Scrum”。实际结果是:另外两个小组的核心开发主动约我聊了一次,问能不能用同样的方式在他们负责的模块跑一轮试点。剩下的一个小组表示“我们再看看第二轮试点的效果”。

这个结果在我看来不是打折,而是最理想的扩散节奏。变革不是靠一次成功试点瞬间完成的,是靠第二批自愿加入的人滚雪球滚出来的。第一批是“被邀请尝试”,第二批是“因为羡慕而主动加入”,这两拨人的驱动力完全不同。第二拨人不需要你做任何说服工作,他们会自己推动自己。

有个细节值得提。那个最初在会议室里说“没必要”的老大哥,在第二轮试点结束后主动申请当了那个 Sprint 的 Scrum Master。我问他为什么改变主意,他说了一段话的大意是:“我不是被你们说服的,我是看到老李(前端组长)那组连续三周不用通宵,发际线都保住了。”

这句话也说明了一个道理:在团队变革这件事上,同事示范的力量远大于外部专家的说服力。你的人不需要崇拜敏捷,他们只需要看到“自己团队里那个跟自己差不多水平的人,用新方法过得比我轻松”。

团队抗拒瀑布,我们用试点项目说服

六、不是每个团队都适合直接切 Scrum,这些情况下你应该换打法

说了这么多试点的好处,我必须反向讲清楚:试点不是万能药。有些情况下,推试点本身就是错的。

我后来复盘了自己参与过的 12 个转型案例,发现试点成功与否跟行业、团队规模、技术栈都没有直接关系,最有关系的变量是一个:团队当前最大的痛苦,跟迭代式交付能不能直接对应上。

如果能对应上,试点数据会说话。如果对应不上,数据再漂亮也没人买账。我总结了三种不适合硬推试点的情况:

1. 团队的核心问题是基础设施,不是交付流程

如果团队现在最难受的是“每次部署要手动操作 2 小时”、“测试环境和生产环境配置不一致导致线上 bug”、“代码没有自动化测试覆盖率”,那先别推 Scrum。流程变革解决不了工程能力欠债的问题,而且会把锅扣在流程头上。

这种情况下,应该先把 CI/CD 流水线、自动化测试、环境管理这些工程基础设施补上。等团队不再被部署和回归测试消耗大量时间之后,再谈迭代周期的缩短才有意义。

2. 团队的产品形态决定了需求无法拆分成小增量

有些 B 端产品确实存在“最小可交付单元”很大的情况。比如一个财税系统,某一项计税逻辑必须把所有税种、所有地区规则一次性实现并验证,否则上线就是合规风险。这种情况你非要按两周迭代切用户故事,反而会增加集成联调的复杂度。

对于这种场景,更务实的做法是:保持适度的瀑布规划节奏,但在开发阶段内引入技术层面的迭代实践,比如持续集成、代码评审、每日构建,而不是强行套 Scrum 的事件框架。

3. 项目处于维护期,需求变更本身就不是核心矛盾

如果一个产品已经在市场稳定运行多年,每个版本的需求都是小修补和兼容性适配,那么“快速响应需求变化”这个价值主张对这个团队来说就是失效的。他们更需要的是稳定、低成本、低出错率的流程,而不是高频迭代。

这种情况下推 Scrum,反而会被团队质疑:“你让我多开会,但我的需求根本没那么多变化,图什么?”

还是那句话:方法论服务于问题,不是问题服务于方法论。

团队抗拒瀑布,我们用试点项目说服

七、如果你的团队正在抗拒,这是我能给出的最具体的行动建议

这一节我想直接给步骤。不是理论框架,是你下周就能开始做的事。

1. 如果你是被抗拒的那个管理者/推动者

第一周:做访谈,不做宣讲。找至少 5 个不同角色的成员一对一聊。只问三个问题:你最痛苦的是什么?你觉得现在流程里哪个环节最浪费时间?如果允许你改一个规则你会改什么?把回答记录下来,找高频关键词。

第二周:用访谈结果定义试点目标。试点目标不要冠以“敏捷转型”,就叫“针对 XX 问题的流程优化试点”。目标是解决访谈里真实出现的痛苦,不是实现 Scrum 框架的完整性。

第三周:选试点范围并设立“安全条款”。试点前明确说三句话:试点 Sprint 内的需求不会变更;如果试点效果不好,一个 Sprint 后可以立刻回到原有流程;试点期间多出来的会议时间计入工作量评估。这三句话能消除一大半防御心理。

第四到六周:跑一个完整 Sprint。过程中管理者的核心动作不是“盯进度”,而是“保护 Sprint 边界”。任何试图在 Sprint 中途塞需求的行为,由你来挡掉。挡不掉,团队成员就会认为“迭代保护是假的”。

第六周后:让试点团队做分享。你不要替他们总结,不要替他们美化。让他们自己说,好在哪里、坑在哪里、下次怎么调。他们的同事信他们,远胜于信你。

2. 如果你是被要求参与试点的团队成员

这可能是一种更微妙的位置。你不想被贴上“不配合”的标签,但你确实对新流程有疑虑。

我的建议是:把疑虑转化成具体的关注点,在试点开始前提出来。比如不要说“我觉得敏捷不靠谱”,而是说“我担心 Sprint 中间需求变化会导致代码重复工作,我想确认一下 Sprint 内需求冻结的规则”。前者是情绪表达,后者是可被验证或回应的具体问题。

另外,务必在第一个 Sprint 的回顾会上真实反馈你的感受。试点期最怕的不是反对意见,是你觉得不舒服但是不说,然后默默退出。真正的迭代流程恰恰依赖回顾会上的坦诚来调整下一个 Sprint 的运作方式。你提出的问题,如果被团队讨论并形成改进项,那这个试点对你来说就是有意义的。

3. 如果你们正在使用 PingCode 这样的工具

工具有一个很容易被忽略的价值:降低流程切换的摩擦成本。

举个例子。瀑布转迭代,最麻烦的一个细节是“需求的版本追踪”。瀑布模式下需求变更是通过追加文档的方式,迭代模式下同一个用户故事可能在多个 Sprint 中持续优化。如果工具层面不能清晰追溯一条需求从创建到验收的完整生命周期,团队在切换初期会频繁陷入“上次我们讨论的那个版本到底是哪一版”的争论。

PingCode 在这一点上做得比较到位的是,它的需求在史诗-特性-用户故事三级之间保持关联关系,状态变更、优先级调整、故事点变更都有完整记录。这意味着团队不需要额外维护一个“需求版本 Excel 表”,减少了流程切换的行政负担。

不过我要再次强调:工具是杠杆,不是答案。如果流程设计本身不合理(比如 Sprint 计划会上产品经理不提前梳理 Backlog 优先级,让开发当场投票选需求),工具再好也救不了。先把流程设计在纸上跑通,再搬到工具上固化。

八、最容易被忽略的三件事,做不好会把试点成果清零

试点跑完之后,很多团队会立刻开始“全面推广”。这个动作有风险。试点跑得顺,不等于放大到全团队还能顺。规模和复杂度带来的摩擦,在试点范围里是看不到的。

我在后续跟踪中观察到三个最容易暴露的问题:

1. 跨团队依赖管理在试点阶段被掩盖了

4 人试点小组的依赖关系很简单,所有需要的接口都在组内闭环。但扩大到 20 人、3 个团队并行 Sprint 的时候,团队之间的技术依赖和优先级冲突会急剧上升。

一个典型的场景:A 团队的 Sprint Backlog 里有一个用户故事需要 B 团队提供一个新的 API。B 团队的 Sprint 计划里没排这项任务。结果 A 团队卡住,Sprint 目标无法完成。没有人在试点阶段遇到这个问题,因为试点组没有外部依赖。

解决这个问题的关键不是“加强沟通”,而是在多团队 Sprint 计划阶段就建立跨团队依赖的可视化机制。每个团队在 Sprint 计划会上列出需要其他团队支持的事项,在 Scrum of Scrums 或同等级会议上集中协调。

2. 产品负责人的能力瓶颈在放大后会暴露

试点阶段产品经理只需要管 4 个人的需求梳理和优先级排序。全团队推广后,产品负责人要同时维护多个 Sprint 的 Backlog、应对更复杂的利益相关方需求、在多个团队之间平衡资源。这不是把工作量乘以 5 那么简单,是工作复杂度指数级上升。

如果产品负责人在大规模推广前没有经过足够的训练和支持,很快会出现 Backlog 质量下降、优先级不清晰、用户故事描述模糊等问题。而这些问题会直接传导到开发团队,导致迭代节奏紊乱。

我的建议是:在推广过程中,不要把“产品负责人”这个角色交给一个人独立承担后就撒手不管。初期可以设置一个产品负责人的支持小组,协助做 Backlog 拆解、验收标准定义、利益相关方沟通等工作,直到产品负责人完全胜任多团队节奏。

3. 度量指标选错了,会把整个团队引向错误方向

试点阶段人们关注的是“有没有变得更好”,度量的多是定性感受(信心指数、满意度等)。放大阶段管理者自然会关注“效率有没有提升”,这时候很容易掉进一个坑,用瀑布时代的生产力度量指标来衡量迭代团队的产出。

我见过最典型的错误:用人均代码行数、功能点完成数来评估迭代团队绩效。结果是开发倾向于做大而全的用户故事,因为这样“看起来产出多”,而不是拆成小而频繁交付的增量。

正确的做法是:用成果指标替代产出指标。比如:

  • 从“完成的功能点数量”改为“实际交付并上线使用的功能数量”
  • 从“开发阶段耗时”改为“从需求提出到用户可使用的时间周期”
  • 从“测试发现缺陷数”改为“线上缺陷逃逸率”
  • 从“团队速率”改为“业务方满意度变化趋势”

指标切换背后是一套更根本的逻辑:你度量什么,团队就被驱动去优化什么。度量错了,流程改得再好都是错的。

团队抗拒瀑布,我们用试点项目说服

九、从一次试点到持续改进,中间隔着一个“机制化”的距离

很多团队试点跑完、全团队推广完成之后,就认为转型结束了。这是最大的误解。试点只是证明了“这个方向可能走得通”,推广只是证明了“在更大范围内也能跑起来”。但真正让团队持续受益的,是之后的机制化阶段。

机制化意味着什么?意味着回顾会上提出的改进项有人跟踪、意味着 Sprint 边界被侵犯时有纠偏机制、意味着新成员加入时有结构化的引导流程,这些都不是靠“大家自觉”能维持的。

我想分享一个后来在那家 SaaS 公司固化下来的实践。他们在第四个 Sprint 时做了一件事:设立了一个轮值流程守护者角色,每个 Sprint 由一名团队成员担任,唯一职责是观察流程是否被遵守、记录流程偏离、在回顾会上提出讨论。这个角色不参与开发任务,不参与需求决策,只做一件事,保证流程不走形。

当时第一个轮值守护者是测试组的那个小姑娘。她在 Sprint 里记录了 4 次流程偏离,包括一次产品经理在 Sprint 第三天试图插入一条“小需求”。她在回顾会上提出来之后,团队重新确认了 Sprint 边界保护的原则,并且把“Sprint 中途插入需求需要经过守护者和 Scrum Master 双重确认”写进了工作协议。

这种自我纠偏机制的建立,是团队从“被要求遵守流程”到“自己维护流程”的分水岭。没有这个转变,流程始终是外部强加的东西。有了这个转变,流程变成了团队的共同资产。

团队抗拒瀑布,我们用试点项目说服

十、我在这件事上学到的最重要的一件事

做了这些年研发管理咨询,如果有人问我“推动团队改变最重要的一课是什么”,我的答案会很短:不要试图说服任何人。

这不是说放弃沟通。恰恰相反,沟通极其重要。但沟通的目的不是说服,而是创造一种环境,让那些对现状不满的人感到安全,愿意迈出第一步。

2019 年我被拉去救火的那个金融科技项目,管理者开了 8 场动员会,每场 2 小时,PPT 做得极其精美。最后呢?团队在流程表象底下跑了一套影子瀑布流程,管理者三个月后才发现。

2022 年这家 SaaS 公司,我们没有开过一场全体动员会。我们做了 15 场一对一访谈、4 人试点了 3 周、一场 30 分钟的同事分享、然后两个组主动加入。六个月后,全团队都在跑迭代,而且不是被要求的。

区别在哪?前一个是用语言说服,后一个是用体验说服。语言在对抗既有经验和职业安全感的时候,力量是极其有限的。但一个人亲身体验到“这次 Sprint 我没有通宵”、“测试不再是我开发的噩梦”、“业务方在评审会上说了一句肯定的话”,这些具体的、身体性的体验,会重新定义他们对流程的认知。

所以如果你现在正面对一个抗拒变革的团队,我的建议是:

  1. 停止所有形式的“敏捷布道”,停止发敏捷文章到群里,停止在会上引用敏捷宣言,停止说“Scrum 指南说”。
  2. 开始一次小型实验,范围小到哪怕失败也不会影响业务,但要足够真实让团队感受到差异。
  3. 保护这场实验不被中途干预破坏,Sprint 边界、需求冻结、允许回退,这三条安全性承诺必须兑现。
  4. 让实验的参与者自己讲述体验,不需要任何修饰,真实的感受自然会打动那些观望的人。
  5. 把试点中长出来的规则固化下来,不是固化 Scrum 理论,是固化团队自己踩坑后总结出的工作协议。

改变一个团队的工作方式,和改变一个人的习惯本质上是一样的:你不能靠讲道理让一个人戒烟,但如果你让他自己感受到不抽烟的那一周呼吸顺畅了多少、睡眠好了多久、省下了多少钱,他会有内在动力去维持这个改变。

团队也一样。给他们一个足够安全、足够小的实验空间,让他们自己去感受。你只需要做两件事:保护边界,然后闭嘴。

团队抗拒瀑布,我们用试点项目说服

常见问题解答(FAQ)

1. 为什么团队对从瀑布转向敏捷(试点)这么抗拒?

我们团队一直用瀑布模型,每次我提出试试Scrum,大家就说“没必要”“风险大”“以前试过不行”。我想知道这种抗拒心理到底来自哪里,怎么才能让他们不那么抗拒?

我经历过两次团队转型,第一次硬推,全员抵制;第二次才摸清门道。抗拒心理通常来自四个层面:第一是安全感缺失,大家担心试点搞砸了怎么办,过去瀑布至少有个“按计划交付”的遮羞布;第二是权力危机,项目经理觉得Scrum会削弱他的控制权(事实恰好相反,但初期这种恐惧很真实);

第三是学习惰性,开发经理抱怨‘又要学新的故事点估算、要写用户故事,烦不烦’;第四是过往阴影,有人之前在其他公司体验过伪敏捷,留下了‘敏捷就是没文档没纪律’的坏印象。

我的经验是,与其在会议室讲道理,不如找一个风险最低的小项目(比如内部运维工具),让团队亲眼看到2周一个可运行的版本,而不是3个月后交付一堆bug。那次试点后,最反对的那个测试Lead主动问我‘下个试点什么时候开始’,因为他发现每天站立会减少了他70%的无效沟通。

2. 如何选择第一个试点项目才能提高成功概率?

领导让我找个项目试点敏捷,但不知道选哪个合适。选大项目怕失败,选小项目又怕没说服力。有什么具体的筛选标准吗?

我踩过两个坑:一是选了个跨三个部门的遗留系统,结果沟通成本爆炸;二是选了个无人关心的边缘工具,试点成功也没人关注。后来总结了一套筛选标准:1)业务价值清晰但技术风险低,比如公司内部的数据报表模块,业务方迫切需求数据,但技术栈是已掌握的;

2)团队里至少有1到2个‘变革拥护者’,哪怕不是Leader,只要他们愿意尝试;3)需求相对稳定,这可以避免试点期间频繁变更导致变量太多;4)交付周期能明显缩短,原本瀑布走完全流程要30天,试点后我们希望压缩到10天以内。

我们用了一个实际案例:一个‘用户权限管理’模块,3人小组,2周迭代,结果交付周期从20天降到8天,缺陷率从15%降到4%。那次成功直接让CTO批了全面推广。

3. 如何设定试点项目的成功指标,让结果能说服所有人?

试点做完了,团队说‘好像好了一点’,但没数据支撑,领导还是不认可。到底应该用什么指标来衡量敏捷试点的成功?

我犯过错误:第一次试点只说了‘我们按时交付了’,结果老板反问‘以前瀑布不也按时吗?’后来我意识到,必须用瀑布和敏捷的可对比数据说话。我们设计了三类指标:1)交付效率类:从需求评审到上线天数(‘交付周期’)、每个迭代的团队速率(故事点/迭代);2)质量类:线上缺陷率、测试阶段缺陷发现率;

3)业务价值类:需求变更对交付的影响(是否及时调整)、客户满意度(NPS)。具体案例:之前一个支付模块用瀑布,平均交付周期35天,缺陷率12%;试点Scrum后,同样规模的功能,交付周期15天,缺陷率4.5%。我们做成一张对比折线图,在会上展示,反对声立刻消失。

关键点:不仅要展示成功数据,也要展示‘试点期间遇到了什么问题,我们如何解决’,这比单纯晒成绩更有说服力。

4. 如果试点失败了怎么办?如何向团队和领导交代?

我担心试点项目搞砸了,会让团队更抗拒变革,领导也会失去信心。请问有没有什么方法可以提前降低风险,或者失败后如何挽回?

我经历过一次‘失败’试点:选了一个跨部门对接的复杂功能,团队没有专职Scrum Master,结果迭代计划会变成了全员吵架,两周只完成了30%的故事点。当时压力巨大,但我是这样处理的:首先,在试点启动时就约定了一条‘安全底线’,如果试点失败,立刻回滚到瀑布模式,团队不背锅、不追责。

所以当失败发生时,大家反而松了口气,敌对情绪低了很多。然后,我带着团队做了一次正式复盘,不是追责,而是分析原因:需求故事描述太粗、每日站会超时、没有专职SM。我把这些写成一个‘失败经验报告’,发给领导,并附上改进方案(比如请外部教练、缩小试点范围)。

领导看到我主动暴露问题并给出方案,反而认可了这种‘实验心态’。第二次试点我们选了更小的模块,成功了。所以我的建议是:失败的试点不是灾难,只要你提前设置‘安全网’,把失败转化为学习机会,这本身就是一种‘说服’的证据,证明团队在理性决策,而不是盲目吹捧敏捷。

核心关键词

读者评论

梁舟

作为测试,感同身受。文中提到测试最后一周背锅的场景简直就是我们的日常。最打动的是把测试介入提前到开发中的设计,如果真能做到,不仅能减少通宵,还能提升交付质量。但执行起来需要开发配合,我们公司也试点过,结果开发还是习惯最后才给代码。希望这个案例能给管理者们一点启示:不是测试不想提前,是流程没给空间。", "我就是那种‘老大哥’式的后端。看到文章里写我说‘没想明白就迭代会欠技术债’,感觉被点名了。但后续看试点结果确实理性:需求提前拆开、测试提前介入,反而减少了最后一周的返工。真正让我改变的是Sprint0拆用户故事时发现的理解偏差,原来瀑布下隐藏的重复劳动比想象中多。技术债不是迭代的锅,是需求不清晰的锅。", "作为产品经理,其实一开始也排斥用户故事格式,觉得太琐碎。但文中提到拆完故事后让开发和测试一起评审,发现对‘导出格式’理解不一致,那一刻我意识到PRD的模糊性有多坑。现在我在团队里也这么推:不是换格式,是提前暴露分歧。不过难点在于,让产品经理接受不是写文档而是沟通需求的身份转变。这篇文章说得不空,值得转给同行看。", "我们公司也经历过类似转型,但我当时是直接全员培训Scrum,结果团队表面配合、私下用‘影子瀑布’。文中的核心洞察很精准:先搞清楚团队真正痛在哪里,再用小试点验证。特别赞同‘那三个问题’的访谈方式,直接问‘最难受的时刻’比问‘要不要敏捷’有效得多。现在我带团队要推新流程时,也先用这种痛点调研,再设计试点。感谢分享具体案例和数据。

韩知行

作为测试,感同身受。文中提到测试最后一周背锅的场景简直就是我们的日常。最打动的是把测试介入提前到开发中的设计,如果真能做到,不仅能减少通宵,还能提升交付质量。但执行起来需要开发配合,我们公司也试点过,结果开发还是习惯最后才给代码。希望这个案例能给管理者们一点启示:不是测试不想提前,是流程没给空间。

何雨

我就是那种‘老大哥’式的后端。看到文章里写我说‘没想明白就迭代会欠技术债’,感觉被点名了。但后续看试点结果确实理性:需求提前拆开、测试提前介入,反而减少了最后一周的返工。真正让我改变的是Sprint0拆用户故事时发现的理解偏差,原来瀑布下隐藏的重复劳动比想象中多。技术债不是迭代的锅,是需求不清晰的锅。

顾清

作为产品经理,其实一开始也排斥用户故事格式,觉得太琐碎。但文中提到拆完故事后让开发和测试一起评审,发现对‘导出格式’理解不一致,那一刻我意识到PRD的模糊性有多坑。现在我在团队里也这么推:不是换格式,是提前暴露分歧。不过难点在于,让产品经理接受不是写文档而是沟通需求的身份转变。这篇文章说得不空,值得转给同行看。

文章包含AI辅助创作:团队抗拒瀑布,我们用试点项目说服,发布者:fiy,转载请注明出处:https://worktile.com/kb/p/3978783

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
fiy的头像fiy
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部