它就是敏捷本身。或者说得更大一点,持续集成就是软件交付本身。
持续集成反映交付形态。这句话实际上是肖鹏说的。实际上是肖鹏很久前说过然后李丰用了很长时间理解了然后再说出来然后我听了一耳朵然后又用了很长时间理解然后再说出来的。持续集成是什么样,不是由持续集成负责人设计的,而是由软件交付形态决定的。
所以持续集成反映交付团队的一切现状和问题。分层分级的持续集成,说明团队与团队之间的沟通成本高。层级之间以二进制还是源代码集成,代表团队之间的依赖层面和交付形式。测试用例失败时构建不失败,说明交付团队没有可依赖的质量标准。构建的频率,代表团队关注质量的频率。每日构建,说明质量没有内建在生产流程中,全靠“守门人”把关。
没有持续集成,说明交付流程是混乱不清晰随机的。
(推论:关于“敏捷是不是必须有持续集成”的讨论再也不想听到,因为持续集成不是敏捷的组成部分,它就是敏捷本身。连交付流程都没有还提什么敏不敏捷的,没有意思。)