📄 一句话概括
宣言只有四句话,落地靠具体实践——实测 8 项里技术侧 4 项、管理侧 4 项,各占一半;这是敏捷和别的流程最大的不同:它把手伸进了代码怎么写。
📝 本节和前面几节的关系
11.8 讲完价值观,这一节把价值观翻译成可执行的动作。
一、实测:8 项各一半
技术侧 4 项:测试驱动开发、重构、持续集成、结对编程。 管理侧 4 项:每日站会、迭代计划、看板可视化、回顾改进。 一半对一半——这个比例很能说明问题。
二、为什么敏捷要管技术
别的流程只管【谁在什么时候做什么】,代码怎么写是程序员自己的事。 敏捷把手伸进去了:因为代码不改不动,迭代就是假的。 所以 11.10~11.12 三节全是技术实践(TDD/重构/CI),不是管理。
三、管理和技术互相支撑
没有测试,重构不敢做;没有持续集成,迭代交不出能用的东西。 没有站会和看板,技术实践就会各做各的。 所以两边缺一边,另一边都会变形。
四、从哪一项开始
建议从【持续集成】或【测试先行】开始——它们最独立、收益最直接。 看板和站会容易学,但也容易变成形式主义。 别一次上八项:一项做到位,比八项都半吊子有用。
五、动手 Demo:支持敏捷开发的实践
列 8 项实践,按技术/管理两类分。 数一数两边的数量。
prac = [("测试驱动开发", "技术"), ("重构", "技术"),
("持续集成", "技术"), ("结对编程", "技术"),
("每日站会", "管理"), ("迭代计划", "管理"),
("看板可视化", "管理"), ("回顾改进", "管理")]
tech = sum(1 for a, b in prac if b == "技术")
print(len(prac), tech, len(prac) - tech) # 8 4 4
实跑输出:
--------------------------------------------------------------------
支持敏捷开发的实践
--------------------------------------------------------------------
宣言只有四句话,**落地靠一堆具体实践。**实测 8 项,按性质分:
实践 属于
----------------------
测试驱动开发 技术
重构 技术
持续集成 技术
结对编程 技术
每日站会 管理
迭代计划 管理
看板可视化 管理
回顾改进 管理
实践总数 8 项
技术侧 4 项
管理侧 4 项
**技术侧和管理侧各占一半**——这也是敏捷和别的流程方法最大的不同:
**别的流程只管管理,敏捷把手伸进了代码怎么写。**
**所以 11.10~11.12 三节全是技术实践**(TDD/重构/CI),不是管理。
实测:8 项实践,技术侧 4 项、管理侧 4 项,正好一半对一半。 别的流程只管管理,敏捷把手伸进了代码怎么写。 所以本节之后三节(TDD/重构/CI)全是技术实践。
30 秒实验
- 对照 8 项,标出你们做到几项、缺的是技术侧还是管理侧。
- 挑一项最独立的(比如持续集成),定一个两周内可完成的动作。
常见误区
- 以为敏捷只是管理方法。一半实践在代码里。
- 以为八项一起上才叫敏捷。一项做到位胜过八项半吊子。
自测三问(点开对答案)
1. 实测 8 项怎么分? —— 技术侧 4 项(TDD/重构/CI/结对)、管理侧 4 项(站会/迭代计划/看板/回顾)。 2. 为什么敏捷要管技术? —— 代码不改不动,迭代就是假的,所以必须把手伸进代码怎么写。 3. 从哪项开始比较稳? —— 持续集成或测试先行——最独立、收益最直接;别一次上八项。- ☐ 11.10 先编写测试代码,一边运行一边开发的测试驱动开发
相关笔记
- 快速编写优秀软件的敏捷宣言 — 价值观来源
- 先编写测试代码,一边运行一边开发的测试驱动开发 — 第一项技术实践
- 经常进行系统整合的持续集成 — 最独立的那一项
- 🧩 面向对象是怎样工作的 · 索引