审查 201-principles-software-development — 2026-08-27
结论: ISSUES(5 条,均可定点修,无一触及三条红线;门禁四条全绿)
门禁实跑:
book-verify: 1 本有拆解、共 519 处出处、0 处对不上
book-jargon: 1 本,共 0 处专业词没解释就用了(32 个专业词首现处都有解释)
book-jargon --quota: 段级超额 0 处(上限 1)、节级超额 0 处(上限 5)
book-dodged: 1 本,共 0 个词被躲开(阈值:原书出现 ≥15 次)
本案专项核查(汇编体重组是否成功)
1. 三条主题主线的因果链 — 过
- 「需求为什么错」(03):电梯问题走查回答「为什么问题先于方案」(同一抱怨六种解法差几个数量级, 书内收束句「方案的变化总是比构建系统的成本低」钉住);99% vs 5%~20% 的资源点讲清「真实需求只在 使用里浮现」的因果;每条原则都有「为什么成立」(能买不造:75% 对 10 倍价+砍需求缩水回 75% 的闭环) 和「何时失效」(§5:25% 口径只对全新领域、一次性原型的严格边界、能买不造的现代新代价)。
- 「估算与风险」(10):2.15×∛(人月) 两道算例(标明运算是我们做的);硬币类比讲「估算=概率分布的峰」; 两把断尺各配反例(固定成本摊薄 / 「全人类 vs 五岁孩子」);风险敞口三行表把用法走出来。 失效边界齐:常数是 1981 口径、99%≠你是例外、立方根形状的适用域写在判断块可证伪条件里。
- 「维护的真相」(12):雷曼四定律各给机制(熵/稳定效应/熟悉衰减/环境被改变);除以 2 走查给出 「两个互相抵消的错误=不可维护的定义」;20%~50% 配自我失效模型因果链;翻新排序用 800 行/30% 的 维护账单定义「最差」。失效条件:大型程序限定、自报数据、profiler 在 IO 形态下的边界,都在 §5。
- 结论:不是目录。原则名在每章都当证据用,不列表背;读完能对具体原则说「为什么成立、何时失效」。
2. 10 条原则落点抽查 — 过(附 1 条发现) 抽:41 错误汇率(04§3.1)、62 追溯矩阵(05§3.2)、73 耦合内聚(06§3.2)、98 代码审查(07§3.3)、 114 错误聚集(08§3.6)、140 人月不可换(09§3.2)、148 不可能区域(10§3.1)、184 V&V(11§3.5)、 188 治症状(12§3.2)、7 尽早交付(03§3.2)。全部有正文落点,机制完整。 另做了全量对账(201 条按编号+关键词双查):约 7~8 条次要原则无正文落点 —— 见问题 2。
3. 「三个声音」抽查 2 处 — 过
- McCabe:1995「这么简单的方法,没有理由不使用它吧」(
text/18-ch06.txt:177属实)与 2021 「已经不再有用……对不起,汤姆」(text/08-fm.txt:57属实)在 01§3.2 表和 08§4/§5 均分列两版, 标明「2021 改口/撤回」。 - 形式化方法:1995「每个项目至少一人熟练」(
text/14-ch02.txt:275属实)与 2021「26 年没人真用过」 (text/08-fm.txt:33属实)在 01§3.2、04§5 分开标;01§5 还点出「作者自己都没关上话头」。 - 译者注声音在 01[^16]、04[^2]、07[^12]、08§3.4 均点名「这是中文版译者注,不是作者本人」。
4. V&V 判断块 — 过
11§3.5 判断块:中文版「确认=问前一个孩子/验证=问第一个孩子」与原文核对属实(text/20-ch08.txt:151);
指出与英文业界通行用法相反;可证伪条件在位(「如果英文原版 1995 年用词本就一致……」);
「手头没有英文原版可核,两说并存」声明在位。
5. 其余自检表各项
- 原书 9 章全覆盖:12 个
sourceChapters合计覆盖第 1~9 章全部 + 前言/作者序/寄语/作者介绍,无缺章。 - 主走查抽 3 章(04§3.5 拨号音两段对照、06§1+3.1 改动关进模块的账、11§3.2 变更请求一生): 每步有具体的数/字串/状态,编造的数全部标了「为演示编的」。01 章无「主走查」标目,但 §3.1 Lehman 论证链+§1 四大事故(346 人/磅牛顿)承担走查职能;该章是玩法说明章,判可接受。
- 台阶抽查 3 节(10§3.1、04§3.5、09§3.2):段首句连读不跳。
- 总纲第 2 节(全书主线)12 步:每步「上一步逼出什么问题→这步怎么答→第 N 章讲」, 只读该节能复述全书主张;海拔合规,机制细节都退回了章节层。独立成篇 — 过。
- 兑现表 50 行,抽查约 10 行(02§3.5 五项归章、09§3.6→10§3.5、12§3.2→11§3.2 等)全部兑现。
- 台账泄漏:0(全文无格式/许可/清洗统计)。
- 判断块 14 处(12 章+总纲 2),14/14 带「如果错,会错在」。
- frontmatter 齐全;index
handwritten: true在位。
问题清单
- [09-people-not-resources.md:156 §4 表] 「《人火》第 12 章」错别字,应为《人件》——同文件脚注 [^14] 写的是对的,表内错了。违反:承重术语一词一义。修:表内改「《人件》」。
- [index.md §4 覆盖] 声称「201 条原则的全部正文,按 12 条主线重组」,实测至少 7 条次要原则无正文 落点:26 知道何时、27 实现目标就停止、29 和组织荣辱与共、44 确定子集、89 自上而下可读、 93 最优数据结构(仅存原文地图)、136 沟通技巧(仅存原文地图);69 智力距离只在 keyTopics/地图, 正文从未解释。违反:许诺要兑现(覆盖声明须与实际一致);书卡 notCovered 也无说法。 修(二选一):把「全部正文」改为「约 190+ 条有名有机制、可回查,个别次要条目以原书为准」; 或在 §4 不覆盖表加一行「少数次要原则未逐条展开」。
- [08-testing-paradoxes.md 脚注 ^12] 指向
text/18-ch06.txt:109(原则 114 的标题段), 而所引内容(80%/2%/从头重写)在第 113/115 段——「同段」不确切;校验器因标题含「15%」放行。 违反:出处精度(人读「第 109 段」找不到那些话)。修:行号改 113 或 115,跑--fix核对短语。 - [05-design-choice.md:70 §3.1] 中英夹杂「一种设计方法 tends to 长出一种特定架构」。 违反:中文行文/脚注 [^3] 里已有现成中文原文可对齐。修:改「倾向于长出」。
- [12-maintenance-truth.md:165 §3.5] 「全书 nine 章里唯一一组」中英夹杂。修:改「9 章」。
观察项(不计问题)
- docs-lint 命中 38 处(段落墙 14/顿号串 17/脚注反引号 7):标准注明只报不拦,脚注反引号是已知误报; 总纲 §2 主线段有 4 处段落墙,属 12 步叙事的正常形态,未动。
- 判断块「V&V 名字对应」的猜测方向:英文原版很可能本来就是 Davis 自己的用法(即非翻译调换), 恰好落在该判断块自己声明的可证伪条件内,两说并存的写法是诚实的,无需改。
- 审查任务书称初版为 1988,实为 1995(书卡与拆解一致,以书为准)。
抽查出处 5 条回核结果
| 抽的脚注 | 原文位置 | 结果 |
|---|---|---|
| 02[^3] 五团队实验 | text/19-ch07.txt:175 | 属实 |
| 04[^11] 99.999% 三口径 | text/15-ch03.txt:285 | 属实(三口径原句俱在) |
| 08[^12] 错误聚集 | text/18-ch06.txt:109 | 内容属实,指针落在标题段(问题 3) |
| 10[^2] 硬币类比/三因素 | text/19-ch07.txt:297 | 属实 |
| 12[^5] 熟悉守恒 | text/21-ch09.txt:157 | 属实 |