🧩 第十一章 衍生:敏捷开发
📄 一句话概括

宣言只有四句话,落地靠具体实践——实测 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 秒实验

  1. 对照 8 项,标出你们做到几项、缺的是技术侧还是管理侧。
  2. 挑一项最独立的(比如持续集成),定一个两周内可完成的动作。

常见误区

  1. 以为敏捷只是管理方法。一半实践在代码里。
  2. 以为八项一起上才叫敏捷。一项做到位胜过八项半吊子。
自测三问(点开对答案) 1. 实测 8 项怎么分? —— 技术侧 4 项(TDD/重构/CI/结对)、管理侧 4 项(站会/迭代计划/看板/回顾)。 2. 为什么敏捷要管技术? —— 代码不改不动,迭代就是假的,所以必须把手伸进代码怎么写。 3. 从哪项开始比较稳? —— 持续集成或测试先行——最独立、收益最直接;别一次上八项。

相关笔记