专业书籍精读 · Accelerate · 合辑 01
Accelerate · Part II · Ch 12–15 · Forsgren, Humble, Kim · 2018
《Accelerate》(中译《加速》)前半本抛出一串结论:交付得快的团队同时也更稳、组织文化好的公司业绩更好。Part II 这四章不再讲怎么做事,只回答一个问题:这些结论是怎么得出来的、能有多硬。它像体检报告最后那几页「检验方法说明」——平时没人翻,可一旦有人质疑结论,全靠它撑着。
你想判断一个团队的氛围好不好。世上没有「氛围计」。办法是问一堆侧面问题:坏消息能不能说出口?出了事追不追人?别的组的消息传得到你这儿吗?把一群人的答案摆在一起,那些一起变动的部分,就是「氛围」留下的影子。医生判断你累不累也是这么干的:不能直接测「累」,就问睡眠、食欲、注意力。这本书用的正是这一招。
软件行业谈「什么做法有效」,长期只有两种声音:个案(我们这么干成了,所以你们也该这么干)和资历(某位大牛说的)。毛病是它既驳不倒也攒不起来——别人举一个反例就能顶回去,而且它答不上工程师最想问的那句「我下一步改哪一项最值」。
一是一个概念问好几道题,不让一道题定生死。单独一道题里混着噪声:有人理解偏了,有人赶时间随手点,有人这会儿心情不好;好几道题的共同部分才是真信号。
二是先猜后验。先写下「我认为 A 会带来 B」,再去数据里检验;而不是在几万份答卷里翻,翻到哪两件事凑巧一起动就说这是发现——数据够大,什么巧合都翻得到。
三是先交代自己这句话有多硬。「A 能预测 B」和「A 造成了 B」是强度完全不同的两句话。这本书用的是前一句,而且明说自己只到这一层、没往下走。
从上线系统里直接拉数据,听着更客观,可有三个坎。机器日志里没有「痛不痛」这一栏——上线前要不要熬到凌晨、团队是不是快烧穿了,系统不记;每家公司「算一次部署」的口径都不一样,甲乙两家都说「一天十次」,实际可能差十倍,跨公司没法比;还有些真话只有匿名才问得出来。反过来说,机器日志也不是天然客观——埋点的口径是谁定的、有没有漏记,同样得有人担保。
一句诚实的代价:自己给自己打分,总会往好看的方向偏,所以这套数字适合看趋势、看「哪两件事相关」,不适合拿来给团队打考核分。
想研究看不见的东西,别指望一把尺子:一个概念多问几道题、先立假设再看数据、并且老实交代自己只说到「能预测」这一层。这套「先证明自己可信」的功夫,才是前半本那些结论敢说出口的底气。
想看具体机制、三道效度关与示意图? → 切到精读版
Part II 不再讲「什么做法有效」,而是回答一个更要命的问题:凭什么信。你以为 Part I 的结论强在样本大(四年两万三千份),其实它强在先给自己的话划了边界:把「组织文化」「持续交付成熟度」「倦怠」这类不可直接观测的东西做成潜变量(latent construct),用心理测量学的三道关证明没测歪;讲清为什么用问卷而不是系统遥测;交代样本是滚雪球来的、因此哪类结论能下、哪类要打折;最后明说全书停在推断预测这一层——说 A 预测 B,不说 A 导致 B。读懂这四章,你再读 Part I 每一句话都会自动带上一个置信度。
Cronbach's α 衡量。这是 Accelerate 的 Part II(Ch12–15),夹在 Part I(Ch1–11,研究发现)与 Part III(Ch16,ING 转型案例)之间。把四章合成一页的理由:它们各自都撑不起一整篇——Ch12 讲研究设计、Ch13 是心理测量学入门、Ch14 回答「为什么用问卷」、Ch15 交代数据本身——可四章说的是同一件事:一条从「想问的问题」到「能下的结论」的证据链,缺任何一环,Part I 的结论都会软下来。对应现实里两个问题:你要给自己团队搭度量体系,以及你要判断一份「业界报告」值不值得照做。
软件工程里关于「什么做法有效」的讨论,长期由三种声音主导:个案、资历、供应商白皮书。三者有同一个毛病——不可反驳,也不可累积。要把它变成能累积的知识,得过三道关:
不解决会怎样?结论退化成布道:任何人举一个反例就能否掉它,而它答不上工程师最想问的那句「我下一步改哪一项最值」。这四章的任务,就是把三道关分别处理掉,并且诚实说明每一关只处理到了什么程度。
本章先扫掉两个误解。第一个:一手还是二手——本书是一手研究(primary research),数据自己收,不是把别人的报告拼起来。第二个更常见:问卷不等于定性研究。定量(quantitative)指能用数值表达并做统计,李克特量表打出的 1–7 分是标准的定量数据;定性(qualitative)指访谈记录、开放文本这类需要人工编码解读的材料。很多人一听「问卷」就判它主观,第一步就错了。
真正关键的是分析层级。本章引用 Leek 与 Peng 在 Science(2015)给出的分类,把数据分析按「能下多硬的结论」排成六层:描述性 → 探索性 → 推断预测 → 预测 → 因果 → 机制。本书明确自己停在第三层:做了描述性与探索性分析,主体结论属于推断预测(inferential predictive)——所以书里通篇是「预测(predicts)」「驱动」「相关」,几乎不出现「导致(causes)」。
为什么不能更硬?因为这是观察性横截面研究:你没法把两千家公司随机分成两组、强制一组做持续交付、另一组不做,两年后再看业绩——这种干预性实验在组织层面几乎不可能。作者的补偿办法有两个。一是先立假设模型、再拿数据验证,而不是在两万多份回应里捞相关(题项一多,两两组合成千上万,捞出来的「显著」多半是巧合)。二是用偏最小二乘结构方程模型(PLS-SEM),同时估计「题项怎么测出潜变量」和「潜变量之间的路径」,这类方法对数据分布要求宽松、适合带潜变量的假设模型。此外,Part I 里的「高 / 中 / 低效能组」不是作者拍脑袋切的,而是聚类分析按四大指标找出的自然簇。
带走一条判据:下次看到「X 让 Y 提升 N 倍」,先问三句——这是哪一层分析?假设是先立的还是事后从数据里捞的?是观察还是干预?三句问完,多数「研究表明」会自己降一档。
核心思路一句话:一个概念别指望一道题。你要测「组织里的信息流动是否顺畅」,只问一道题,答案里混着一堆噪声——有人理解偏了、有人赶时间随手点、有人这一刻心情不好。测量误差是随机的:从不同侧面多问几道,噪声大体互相抵消,剩下那部分一起变动的信号就是要测的潜变量。这是把「文化」这种词变成可计算对象的唯一正经办法。
但多问几道题不等于测对了。本章给出必须过的三道关:
Cronbach's α ≥ 0.70——它衡量「这组题是否稳定地在测同一件东西」,但不保证测的是你以为的那件(那是效度的活)。三关有一关不过,这个构念直接不报。这就是为什么书里出现的构念数量远少于问卷题量。
带走一条判据:你自己团队做的调研,「一题一指标」基本不可信;一个概念至少 3–4 题,并且发布前算一次内部一致性。再加一条反向检查:若你两个「不同」的指标彼此相关得比各自内部一致性还高,它们其实是同一个指标。
「从 CI/CD 系统直接拉数据不是更客观吗」——本章正面回答。理由不是「问卷更好」,而是问卷能做到系统数据做不到的四件事:
反过来,本章也拆掉「系统数据天然客观」这个假设:遥测的口径同样由人来定,埋点漏记、定义漂移、跨团队不一致都会污染数据;更要紧的是,一个数一旦拿来考核就会被优化——部署频率可以靠把一次发布拆成十次来刷。系统数据只是把主观判断从「答题的人」搬到了「定义指标的人」身上。
诚实的代价这章也写了:自评数据有共同方法偏差(common method bias,同一份问卷里所有变量都用同一种方式测,相关容易被抬高)与社会赞许偏差(想把自己答得好看些)。作者的对策是匿名、加注意力检查题、把不同构念分开测量,并把结果与独立得到的已知结论对照——能对上,才敢往下走。
带走一条判据:评估任何一个度量数字,先问两句——这个口径是谁定的?能不能被当事人刷?能被刷的数可以用来看趋势,不能用来排名考核。
目标人群是做软件开发与交付的技术从业者:工程师、SRE、团队负责人到高管。招募方式是滚雪球抽样——通过 DevOps 社区、邮件列表、社交媒体、会议一圈圈扩散,并请受访者转给同行。四年(2014–2017)累计两万三千余份回应、两千多家组织,覆盖从初创到数万人的企业、多个行业与地区。数据不是照单全收:有筛选题剔掉非目标人群,也会清掉重复提交与明显敷衍的作答。
作者自己把局限摆了出来:滚雪球不是随机抽样,样本天然偏向「与 DevOps 社区有连接的人」。但这里有一个多数人忽略的关键区分:
Part I 的结论几乎全是后一类,这就是作者敢下结论的依据;也正因如此,把这本书当「行业普查」来引用是误用。
带走一条判据:读任何行业报告,先分清你要引的是「百分比」还是「关系」。引百分比,先看抽样是否随机;引关系,看样本是否足够多样、以及分析停在哪一层。
四种度量手段的取舍——没有哪种「更客观」,只有「适合测什么」。
| 手段 | 能测什么 | 拿到手要多久 | 跨组织可比性 | 主要偏差 | 什么时候选它 |
|---|---|---|---|---|---|
| 问卷(自评) | 感知、文化、痛感、跨工具的全流程 | 几周 | 高(题面统一) | 共同方法偏差、社会赞许偏差 | 要横向比较、要测「摸不着」的变量 |
| 系统遥测 | 部署次数、前置时间、失败率、恢复时长 | 几周到几个月(接入 + 对口径) | 低(各家口径不同) | 埋点漏记、定义漂移、能被刷 | 单组织内长期追踪、自动化看板 |
| 访谈 / 定性 | 机制与「为什么」 | 慢,难扩到千份量级 | 不可比 | 访谈者引导、样本选择偏差 | 生成假设、解释异常个案 |
| 受控实验 / A-B | 因果 | 视实验周期 | 不适用 | 外部效度(能不能推广) | 能随机分配的局部改动 |
你的结论能说到哪一层——句式决定你需要什么研究设计。
| 层级 | 能说的句式 | 需要什么 | 本书在哪 |
|---|---|---|---|
| 描述性 | 「这批样本里……」 | 干净的数据 | 做了 |
| 探索性 | 「A 与 B 似乎有关」 | 相关分析 | 做了 |
| 推断预测 | 「A 能预测 B,强度约……」 | 事先假设 + 推断统计 + 测量过三关 | 主体结论在此 |
| 预测 | 「据此可预测新对象的 B」 | 样本外验证 | 未主张 |
| 因果 | 「改 A 会让 B 变」 | 随机干预或强因果识别 | 明确未主张 |
| 机制 | 「A 通过 C 作用于 B」 | 机理实验 | 未主张 |
一,它是你评估任何「业界报告」的检查单。拿到一份白皮书,四个问题:构念怎么测的(几道题、有没有报效度与信度)?分析停在哪一层?样本怎么来的?措辞是「相关 / 预测」还是「导致」?四问下来,多数报告会自己掉一档——这也是架构评审里对抗「业界最佳实践压人」最实用的武器。
二,它是你给团队搭度量体系的模板。别指望单一指标;像「交付痛感」「团队健康」这类关键变量用多题构念定期测;并且把「用来看趋势的数」和「用来考核的数」分开——后者迟早会被优化。
① 核心命题:Part II 是全书的证据链——先证明自己可信,Part I 的结论才敢说出口。
② 不可直接观测的变量靠潜变量测量:一个概念多道题,共同变动的部分是信号,各题噪声被摊掉。
③ 三道关:收敛效度、区分效度、信度(α ≥ 0.70);一关不过,构念不报。
④ 问卷不是定性:李克特打分是定量数据,「问卷 = 主观」是最常见的误解。
⑤ 六层分析阶梯:描述 → 探索 → 推断预测 → 预测 → 因果 → 机制;本书停在第三层,说「预测」不说「导致」。
⑥ 方法:观察性横截面调查 + 先立假设 + PLS-SEM + 聚类分析切出高 / 中 / 低效能组。
⑦ 选问卷的四个理由:快、跨组织可比、能测系统里没有的栏目、匿名换真话;而系统数据也不天然客观——口径由人定、且能被刷。
⑧ 样本:2014–2017、两万三千余份、两千多家组织,滚雪球非随机——关系型结论稳健,百分比型结论要打折。
⑨ 实用检查单:构念怎么测、分析哪一层、样本怎么来、措辞是相关还是因果。
⑩ 别把研究指标直接当考核指标:能被刷的数用来看趋势,不用来排名。