首页 › 指南 › 敏捷与甘特图:如何将两者结合使用

敏捷与甘特图:如何将两者结合使用

有人告诉 scrum 团队,甘特图是瀑布模型的遗物;也有人告诉路线图负责人,待办列表能回答一切问题。这两种说法都是错的。甘特图与敏捷在不同的高度上解决不同的问题。冲刺逐周推进细化的工作,而甘特图在它们之上展现发布的全貌:各个阶段、固定的日期,以及团队之间的交接。两者结合使用,能回答任何一方单独都无法回答的问题。

作者 Uttam Regmi更新于 2026年10月6日3 分钟阅读

本页内容
  1. 是的,它们能共存。这是诚实的答案
  2. 两个工具,两个高度
  3. 敏捷计划的三个层次
  4. 甘特图能带来而待办列表做不到的东西
  5. 用甘特图把握发布,用冲刺处理细节
  6. 实战示例:横跨四个冲刺的 2.0 版本
  7. 决定你日期的那条链
  8. 常见异议,诚实的回答
  9. 如何在一个下午搭出一张发布甘特图
  10. 保持轻量,否则它会消亡
  11. 何时干脆跳过甘特图
一张发布甘特图如何位于交付它的那些冲刺之上:
周 1周 2周 3未来 3 周, 冻结 / 已承诺 / 规划

是的,它们能共存。这是诚实的答案

向一位 scrum 纯粹主义者和一位交付负责人提出同样的问题,你会得到相反的答案。纯粹主义者说甘特图是披着外衣的瀑布模型。负责人说待办列表无法告诉客户功能何时发布。两人各对了一半。甘特图与敏捷并非对手,它们在不同的高度上运作。敏捷负责每个冲刺内部的日常工作。甘特图在冲刺之上描绘发布的全貌:各个阶段、硬性日期,以及任何单一待办列表都无法展现的团队间交接。

真正的错误是强迫一个工具去做两份活。在甘特图上规划一个为期两周的冲刺,你会在故事移动时每天早上重画一遍。仅凭待办列表就承诺一个发布日期,那是在对速率瞎猜。把每个工具放到合适的位置,那种由来已久的紧张感就悄然消失了。

两个工具,两个高度

看板和待办列表是为流动而生的。它们回答团队接下来该拉取什么、今天什么被阻塞、当前冲刺还剩多少。它们刻意对日历上的日期视而不见,因为日期并不是驾驭冲刺的方式。甘特图是为时间而生的。它回答某个阶段何时开始、哪些团队必须先完成另一个团队才能开工,以及发布是否仍能如期落地。

问题看板与待办列表发布甘特图
我们接下来构建什么?是,待办列表顶部否
我们今天被阻塞了吗?是部分
我们能赶上发布日期吗?否是
哪个团队制约着我们?很少可见是,以依赖的形式
这一阶段之后是哪个阶段?否是

注意这些列几乎不重叠。这正是重点。你不是在两者之间做选择,而是在覆盖两组不同的问题。

敏捷计划的三个层次

健康的敏捷交付建立在三个层次上,其中只有一个是冲刺。把它们分开,正是让甘特图和看板能并肩共存而不彼此干扰的原因。

当有人说甘特图扼杀了敏捷,他们通常是指有人试图在甘特图上经营冲刺层。把甘特图提升到发布层,这个异议便烟消云散。

甘特图能带来而待办列表做不到的东西

待办列表是一份扁平的、按优先级排序的清单。它在排序工作上出类拔萃,却在发布所依赖的三件事上糟糕透顶。第一,跨团队依赖。当 API 团队必须先交付一个网关,应用团队才能构建结账时,这种关系在任何一方的待办列表里都看不见,但在甘特图上作为一条依赖却一目了然。第二,硬性截止日期。一场展会、一项合同条款或一个监管日期都是待办列表根本无法表达的固定点。第三,发布视图:一张图就能向干系人展示从设计到发布的整段跨度。

完成 → 开始ABB 等待 A开始 → 开始ABB 等待 A完成 → 完成ABB 等待 A开始 → 完成ABB 等待 A
两个团队之间的一条完成到开始依赖,任何单一待办列表都无法展现:

待办列表告诉一个团队接下来做什么。甘特图告诉整个组织所有这些工作的总和是否能按时抵达。这不是同一个问题,而一份发布计划需要两者都有答案。

用甘特图把握发布,用冲刺处理细节

行得通的模式是滚动式波次规划。你在阶段和史诗的层面绘制发布甘特图,大致每个史诗或每个冲刺一根条,而不是每个故事一根条。近期是细化的,因为你了解它。远期是一个粗略的区块,因为老实说你还不了解它,而假装了解正是甘特图落下坏名声的原因。

周 1周 2周 3未来 3 周, 冻结 / 已承诺 / 规划
近处的冲刺细致规划,较远的冲刺在临近之前先作为粗略区块保留:

每个冲刺里,团队照常在看板上规划自己的故事。这一点毫无改变。改变的是,在冲刺结束时你要更新甘特图上对应的那根条:这个史诗是完成了、延期了,还是缩小了?甘特图不是管理任务的第二个地方。它是一面透镜,把八周的冲刺结果化作一个关于发布日期的单一答案。用团队真实的速率来估算那些粗略的条,而不是一厢情愿的算法,并在承诺日期之前读一读我们关于估算工期的指南。

实战示例:横跨四个冲刺的 2.0 版本

一个支付团队承诺在八周内交付自助结账,即四个为期两周的冲刺。看板经营故事。甘特图经营发布。下面是各史诗如何映射到冲刺上,以及风险所在。

史诗团队冲刺依赖于
支付网关集成API1 至 2无
结账界面应用3 至 4网关(完成到开始)
反欺诈规则风险2 至 3网关(开始到开始)
发布与合规签署全体4以上全部

甘特图揭示了什么。应用团队要等 API 团队在冲刺 2 完成网关后,才能开始结账。如果网关延后一个冲刺,结账便随之延后,第 8 周的发布也就泡汤了。没有哪个待办列表会把这一点浮现出来,因为这条依赖横跨了两个团队的看板。在甘特图上它是一支箭头,它准确地告诉发布负责人该保护哪个史诗。先给网关投入资源,并把它的完成日期当作那个不能移动的日期。

决定你日期的那条链

在上面的示例中,网关然后结账然后发布这一序列,是依赖性工作的最长路径。其余一切,比如并行推进的反欺诈规则,都有移动的余地。那条最长的链就是你的关键路径,而它是唯一真正决定发布日期的东西。反欺诈规则可以延后几天,发布照样能出。网关不行。

这正是甘特图在敏捷团队里物有所值之处。速率图告诉你单个团队推进得有多快。它们无法告诉你四条并行工作流中,究竟是哪一条挟持了整个发布。关键路径能,它让你把注意力花在延误真正会让你丢掉日期的地方,而不是把忧虑平均分摊到每个团队身上。

临机重新分配。开工两周后,API 团队在网关上落后了一个冲刺。因为甘特图显示网关在关键路径上而反欺诈规则不在,发布负责人就把一名工程师从反欺诈规则调到网关上。反欺诈规则用掉它的浮动时间,网关按时落地,第 8 周得以保住。若没有一个能看清依赖的视图,这个决定是看不见的。

常见异议,诚实的回答

这种反对声是可以预料的,而当甘特图被误用时,其中大多数都是公允的。下面是 scrum 团队会提出的异议,以及对每一条的诚实回答。

异议诚实的回答
甘特图就是瀑布只有当你在上面规划故事时才是。在发布层,它只是一个依赖和日期的视图。
估算每个冲刺都在变没错,所以把条保持在史诗层面,并在每个冲刺后更新它们。别画故事。
它会过时如果没人负责,它会的。指定一位负责人,在每次冲刺评审时更新它,不要更早。
看板已经显示了阻塞在一个团队内,是的。跨团队的关卡和固定日期,它不显示。
干系人应该去读待办列表他们不会读的。发布甘特图才是高管和客户真正能看懂的产物。

这些异议没有一条能经受住与一张放在正确高度的甘特图的碰面。它们几乎全都其实是在抱怨那些放在错误高度的甘特图。

如何在一个下午搭出一张发布甘特图

你不需要重量级工具,也不需要什么认证。你需要的是各个史诗、你已经承诺过的日期,以及和团队负责人一起的一个小时。流程如下。

  1. 列出本次发布的史诗,而不是故事。目标是五到十二根条。
  2. 先标出固定日期:发布、演示、合同截止。这些是里程碑,画成菱形,它们不会移动。
  3. 用你真实的速率把每个史诗按冲刺估算规模,然后把它放到时间线上。
  4. 画出史诗之间的依赖,尤其是那些跨团队的。这是价值最高的一步。
  5. 找出依赖性史诗的最长链。那就是你要捍卫的路径。
  6. 指定一位负责人,在每次冲刺评审时更新图表,别在其他时候更新。

在甘特图编辑器里打开一份空白计划,每个史诗加一行,连好依赖,不到一个小时你就有了一个发布视图。把故事的细节留在你的看板上,那才是它该待的地方。

保持轻量,否则它会消亡

甘特图在敏捷团队里失败的最大原因是分量。有人搭出一张漂亮的百行图表,它在一个冲刺内就过了时,于是团队得出结论说甘特图行不通。失败的不是图表,是粒度。一张发布甘特图应当小到让一个人在冲刺评审时用十分钟、拖动几根条、移动一个日期就能更新完。

像跟踪任何计划与现实的差距那样跟踪发布,把你说过每个史诗应当在哪里,与它实际落在哪里作比较。每次评审时做一次快速的基线核对,能在日期漂移演变成危机之前很久就告诉你它是否在漂移。一张搭好后就再也没人碰的甘特图不是计划,是愿望。要么更新它,要么删掉它,但别让它在共享盘里腐烂,还假装自己是真相。

何时干脆跳过甘特图

诚实是双向的。并非每项敏捷工作都需要甘特图,在它带不来任何价值的地方硬加一张,只是额外的负担。如果你的工作是一连串小而独立的事项的持续流动,既没有外部截止日期,也没有跨团队交接,那么一块看板就够了。一个纯维护团队、一条支持队列,或是一个每天都往生产环境交付的单一小队,从发布层里得到的很少,因为根本没有要塑造的发布。

当三个信号一同出现时,再去动用甘特图:一个你已经承诺过的固定外部日期、不止一个其工作依赖另一个团队的团队,以及一位需要一次看清整段跨度的干系人。当三者齐备时,待办列表会留下真正的问题悬而未决,而甘特图能回答它们。当一个都没有时,心安理得地跳过它,让看板去做它的本职工作。

在你的看板上经营冲刺,在甘特图上经营发布。一个展示接下来构建什么,另一个展示这一切是否能按时抵达。

常见问题

甘特图与敏捷原则相抵触吗?

不,只要它们停留在发布层。敏捷管辖一个团队在冲刺内部如何工作。发布甘特图在冲刺之上展现阶段、固定日期和跨团队依赖。只有当有人试图在甘特图上排期单个故事时,冲突才会出现,而这是谁都不该做的。

发布甘特图应当用什么粒度?

每个史诗或每个冲刺一根条,绝不是每个故事一根。一次八周的发布,目标是五到十二根条。故事层面的细节属于看板,它在那里每天都在变。把甘特图保持粗略,正是让一位负责人能在每次冲刺评审时用十分钟更新完它的原因。

我应该多久更新一次发布甘特图?

每个冲刺一次,在冲刺评审时,别在其他时候。移动那些条,让它们对应实际完成的部分,调整任何延后的日期,并核对发布里程碑是否仍然成立。更新得更勤会把它变成第二个任务跟踪器,与看板重复。更新得更少则会让它过时。

甘特图能取代我们的待办列表或看板吗?

不能,它也不该去尝试。看板管理每日流动,回答接下来拉取什么。甘特图回答发布是否如期落地,以及哪个团队制约着另一个。它们覆盖不同的问题。两者都用,让它们处在不同的高度,各自去做它被打造出来要做的事。

甘特图如何应对不断变化的冲刺估算?

靠在史诗层面吸收波动。单个故事的估算每个冲刺都在变,但用真实速率按冲刺估算规模的史诗要稳定得多。用滚动式波次规划,把近处的冲刺细致规划,把较远的作为粗略区块保留,然后在每个区块临近当前冲刺时再去细化它。

作者 Uttam Regmi. Synth88 Labs 创始人,在迪拜打造注重隐私的网页与移动应用。 完整简介 · LinkedIn · Medium · GitHub

本文也提供英文版本。

免费创建你的甘特图

在浏览器中直接使用,无需注册。数据保存在你自己的设备上。

打开编辑器