← 中文资源

简体中文版本

定时发布火车工作流

按固定节奏发版,特性要么赶上下一班要么等下一班,让时刻表独立于特性焦虑。

阅读英文原文

目标

临时定的发布日期让每次发布都变成谈判、每次延误都变成政治事件。固定火车把权威倒转过来:日期不动,特性要么上车要么等下一班,所有人都能围绕提前一个季度可见的节奏做规划。错过一班的代价是一个已知的时间间隔,而不是去争取一个特例。

步骤要点

  1. 用交付数据定节奏:分析近几个月从合并到上线的提前期,选出团队可持续维持的最高频次(周或双周)。
  2. 提前一个季度公布火车日历:切割日、冻结窗口、发车日,并立下铁律——错过的特性等下一班。
  3. 按切割日机械上车:合并且全绿自动登车,迟到的顺延下一班,没有例外辩论。
  4. 发车前过火车货单评审:不兼容的半成品特性成组暂缓,说明草稿与实际货物一致。
  5. 准点发车:只允许因阻塞性缺陷延误,绝不因临场加特性而延误,且两者的区别公开可见。

排错提示

火车频繁晚点说明节奏定得超过吞吐能力,回到历史数据降频次,准点率优先于频率;有人反复为特性争取例外是日历权威性不足,把上车与顺延记录在公开货单里消除谈判空间;切割日抢合导致质量下滑就把“绿”定义为含回归套件通过,而不只是单测。

适用边界

火车模型以固定节奏为前提,真正的紧急热修需另走热修通道而不占用火车班次;节奏过密时切割日频繁会与长周期特性冲突,需要特性开关解耦合并与上线。

代码示例

Q4 train calendar (published Sep 30)
  train  cut (Fri)  depart (Tue)
  26.10  Oct 10     Oct 14
  26.11  Oct 24     Oct 28
  26.12  Nov 07     Nov 11
  26.13  Nov 21     Nov 25

boarding rule: merged + green by cut -> boards
  feature X merged Oct 24 18:40 -> boards 26.11
  feature Y merged Oct 25 09:12 -> waits for 26.12
  (no exceptions, no debates)