工程习惯、质量与团队 · 综合
没有官僚主义的质量:怎么不弄坏正在正常运转的东西
一句话: 回归靠三件事来防:自动化测试、小而频繁的发布,以及快速回滚的能力。
小而频繁
一个月发一次、一次一百个改动,会把每次故障都变成一场调查。一天发一个改动,则会把它变成一个明确的嫌疑人。批量大小是比任何流程都更起作用的那个变量。
自动化的门
测试、类型检查、静态分析和安全扫描——全都自己跑、自己拦。自动化的规则不针对个人,也不引发争论。
留给人的:工具回答不了的问题。
快速恢复
与其试图防住每一次故障,不如更多地投入在「回到正常」所需的时间上。一个两分钟就能回滚的系统,能让团队有信心地快速前进;一个每次发布都让人害怕的系统,只会产出更大、更危险的发布。
深入一层
跟踪四个指标:发布频率、从改动到上线的时间、导致故障的发布比例,以及恢复时间。它们同时度量系统和流程,而且很难作假。