第一部分 对于软件开发的感想 2
第1章 学习是瓶颈 2
1.1 一个假定的实验 2
1.2 透过“学习是瓶颈”看敏捷 3
1.3 识别并响应变化的循环周期 3
1.4 循环周期:充分非必要 5
1.5 为什么这很重要?从理论到实践 6
1.6 关注瓶颈 7
1.7 小结 8
第2章 个体敏捷性 9
2.1 为什么要采纳敏捷实践 9
2.1.1 怎样才算成功的采纳 9
2.1.2 问题:许多敏捷实施案例都不成功 10
2.1.3 什么原因?情况有多种 10
2.2 职责过程模型 10
2.2.1 怎么做才能变得更积极负责 11
2.2.2 要是团队人员不停地抱怨,我该怎么办 12
2.3 有效的敏捷 12
2.3.1 成功的团队拥有积极负责的队员 12
2.3.2 认知和响应变化需要责任心 12
2.3.3 成功的敏捷软件开发从个人做起 13
2.4 个体敏捷性 13
2.5 从理论到实践 13
第二部分 实施敏捷的艺术 16
第3章 业务价值 16
3.1 缩短上市时间 16
3.2 增强产品实用性(市场价值) 16
3.3 提高产品质量 17
3.4 提高灵活性 17
3.5 增强透明度 17
3.6 降低成本 18
3.7 延长产品生命周期 18
3.8 业务价值是组织的目标 18
3.9 从理论到实践:确定组织的业务价值 18
第4章 异味 20
4.1 业务异味 20
4.1.1 交付质量无法令客户接受 20
4.1.2 交付新功能需要太长时间 21
4.1.3 有些功能客户没有使用 21
4.1.4 软件对于客户不适用 21
4.1.5 软件开发过于昂贵 21
4.1.6 我们与他们的对立 22
4.1.7 客户不管三七二十一,什么都要 22
4.2 流程异味 22
4.2.1 客户?什么客户?无法实现直接、经常性地客户参与 22
4.2.2 令管理层惊讶——缺乏透明度 23
4.2.3 瓶颈资源——项目成员同时属于多个团队 23
4.2.4 项目反复拖延 23
4.2.5 bug跟踪系统中有数以百计的bug 24
4.2.6 在发布前需要一个固化周期 24
4.2.7 没能经常集成(通常是因为集成一次太痛苦了) 24
4.3 以痛楚作为激励 24
4.4 从理论到实践:你能找到什么异味 25
第5章 敏捷实施策略 26
5.1 敏捷实践 26
5.2 敏捷模式到业务价值的映射 26
5.3 实施敏捷的艺术 34
5.4 下一步 35
5.5 从理论到实践:制定适用于你的敏捷实施策略 35
第三部分 敏捷实践模式 38
第6章 敏捷实践实施模式 38
6.1 什么是模式 38
6.2 更有效地利用模式 39
6.3 人物介绍 40
第7章 目标 42
7.1 业务价值 42
7.2 小故事 42
7.3 适用情况 42
7.4 阻力 42
7.5 因此 43
7.6 采纳方法 43
7.7 但是 43
7.8 变化 44
7.9 参考文献 44
第8章 周期 45
8.1 业务价值 45
8.2 小故事 45
8.3 适用情况 45
8.4 阻力 46
8.5 因此 46
8.6 采纳方法 46
8.7 但是 47
8.8 变化 47
8.9 参考文献 47
第三部分(a) 反馈实践模式 50
第9章 迭代 50
9.1 业务价值 50
9.2 小故事 50
9.3 适用情况 51
9.4 阻力 51
9.5 因此 51
9.6 采纳方法 52
9.7 但是 52
9.8 变化 53
9.9 参考文献 54
第10章 启动会 55
10.1 业务价值 55
10.2 小故事 55
10.3 适用情况 56
10.4 阻力 56
10.5 因此 56
10.6 采纳方法 56
10.7 但是 56
10.8 变化 57
10.9 参考文献 57
第11章 待办工作项 58
11.1 业务价值 58
11.2 小故事 58
11.3 适用情况 59
11.4 阻力 59
11.5 因此 60
11.6 采纳方法 60
11.7 但是 61
11.8 变化 61
11.9 参考文献 62
第12章 规划“扑克” 63
12.1 业务价值 63
12.2 小故事 63
12.3 适用情况 63
12.4 阻力 63
12.5 因此 64
12.6 采纳方法 65
12.7 但是 65
12.8 参考文献 66
第13章 站立会议 67
13.1 业务价值 67
13.2 小故事 67
13.3 适用情况 67
13.4 阻力 67
13.5 因此 68
13.6 采纳方法 69
13.7 但是 69
13.8 变化 70
13.9 参考文献 70
第14章 完成状态 72
14.1 业务价值 72
14.2 小故事 72
14.3 适用情况 73
14.4 阻力 73
14.5 因此 73
14.6 采纳方法 73
14.7 但是 74
14.8 变化 74
14.9 参考文献 74
第15章 演示 76
15.1 业务价值 76
15.2 小故事 76
15.3 适用情况 76
15.4 阻力 76
15.5 因此 77
15.6 采纳方法 77
15.7 但是 78
15.8 变化 78
15.9 参考文献 79
第16章 回顾 80
16.1 业务价值 80
16.2 小故事 80
16.3 适用情况 81
16.4 阻力 81
16.5 因此 81
16.6 采纳方法 82
16.7 但是 82
16.8 变化 83
16.9 参考文献 83
第17章 频繁发布 84
17.1 业务价值 84
17.2 小故事 84
17.3 适用情况 85
17.4 阻力 85
17.5 因此 85
17.6 采纳方法 86
17.7 但是 86
17.8 变化 86
17.9 参考文献 86
第18章 “联合驻扎”团队 87
18.1 业务价值 87
18.2 小故事 87
18.3 适用情况 88
18.4 阻力 88
18.5 因此 88
18.6 采纳方法 88
18.7 但是 89
18.8 变化 89
18.9 参考文献 89
第19章 自组织团队 91
19.1 业务价值 91
19.2 小故事 91
19.3 适用情况 92
19.4 阻力 92
19.5 因此 92
19.6 采纳方法 93
19.7 但是 93
19.8 变化 94
19.9 参考文献 94
第20章 跨职能团队 95
20.1 业务价值 95
20.2 小故事 95
20.3 适用情况 96
20.4 阻力 96
20.5 因此 97
20.6 采纳方法 97
20.7 但是 97
20.8 变化 98
20.9 参考文献 98
第21章 客户作为团队成员 99
21.1 业务价值 99
21.2 小故事 99
21.3 适用情况 100
21.4 阻力 100
21.5 因此 100
21.6 采纳方法 101
21.7 但是 101
21.8 变化 102
21.9 参考文献 102
第22章 唤醒式文档 104
22.1 业务价值 104
22.2 小故事 104
22.3 适用情况 105
22.4 阻力 105
22.5 因此 105
22.6 采纳方法 105
22.7 但是 106
22.8 变化 106
22.9 参考文献 107
第23章 用户故事 108
23.1 业务价值 108
23.2 小故事 108
23.3 适用情况 109
23.4 阻力 109
23.5 因此 109
23.6 采纳方法 109
23.7 但是 110
23.8 变化 110
23.9 参考文献 110
第24章 用例 112
24.1 业务价值 112
24.2 小故事 112
24.3 适用情况 112
24.4 阻力 112
24.5 因此 113
24.6 采纳方法 113
24.7 但是 113
24.8 变化 114
24.9 参考文献 114
第25章 信息辐射器 115
25.1 业务价值 115
25.2 小故事 115
25.3 适用情况 115
25.4 阻力 115
25.5 因此 116
25.6 采纳方法 116
25.7 但是 116
25.8 变化 117
25.9 参考文献 117
第三部分(b) 技术实践模式 120
第26章 自动化测试 120
26.1 业务价值 120
26.2 小故事 121
26.3 适用情况 121
26.4 阻力 122
26.5 因此 122
26.6 采纳方法 123
26.7 但是 125
26.8 变化 126
26.9 参考文献 126
第27章 测试后行开发 127
27.1 业务价值 127
27.2 小故事 127
27.3 适用情况 128
27.4 阻力 128
27.5 因此 128
27.6 采纳方法 128
27.7 但是 128
27.8 参考文献 129
第28章 测试先行开发 130
28.1 业务价值 130
28.2 小故事 130
28.3 适用情况 131
28.4 阻力 131
28.5 因此 131
28.6 采纳方法 132
28.7 但是 133
28.8 变化 133
28.9 参考文献 133
第29章 重构 134
29.1 业务价值 134
29.2 小故事 134
29.3 适用情况 135
29.4 阻力 135
29.5 因此 135
29.6 采纳方法 135
29.7 但是 136
29.8 变化 136
29.9 参考文献 137
第30章 持续集成 138
30.1 业务价值 138
30.2 小故事 138
30.3 适用情况 138
30.4 阻力 139
30.5 因此 139
30.6 采纳方法 140
30.7 但是 141
30.8 变化 142
30.9 参考文献 142
第31章 简单设计 144
31.1 业务价值 144
31.2 小故事 144
31.3 适用情况 145
31.4 阻力 145
31.5 因此 145
31.6 采纳方法 146
31.7 但是 146
31.8 变化 147
31.9 参考文献 147
第32章 功能测试 148
32.1 业务价值 148
32.2 小故事 148
32.3 适用情况 149
32.4 阻力 149
32.5 因此 150
32.5.1 物件清单管理测试 150
32.5.2 自动化功能测试的益处 151
32.6 采纳方法 152
32.7 但是 153
32.7.1 实施异味 154
32.7.2 架构异味 155
32.8 变化 156
32.9 参考文献 157
第33章 集体代码所有权 159
33.1 业务价值 159
33.2 小故事 159
33.3 适用情况 159
33.4 阻力 160
33.5 因此 160
33.6 采纳方法 160
33.7 但是 161
33.8 变化 161
33.9 参考文献 161
第34章 结对编程 162
34.1 业务价值 162
34.2 小故事 162
34.3 适用情况 162
34.4 阻力 162
34.5 因此 163
34.6 采纳方法 163
34.7 但是 164
34.8 变化 164
34.9 参考文献 164
第三部分(c) 辅助实践模式 168
第35章 教练 168
35.1 业务价值 168
35.2 小故事 168
35.3 适用情况 168
35.4 阻力 168
35.5 因此 169
35.6 采纳方法 169
35.7 但是 169
35.8 变化 170
35.9 参考文献 170
第36章 融入敏捷社区 171
36.1 业务价值 171
36.2 小故事 171
36.3 适用情况 171
36.4 阻力 171
36.5 因此 172
36.6 采纳方法 172
36.7 但是 173
36.8 变化 173
36.9 参考文献 174
第37章 读书会 175
37.1 业务价值 175
37.2 小故事 175
37.3 适用情况 175
37.4 阻力 176
37.5 因此 176
37.6 采纳方法 176
37.7 但是 177
37.8 变化 177
37.9 参考文献 178
第38章 研讨会 179
38.1 业务价值 179
38.2 小故事 179
38.3 适用情况 179
38.4 阻力 180
38.5 因此 180
38.6 采纳方法 180
38.7 但是 180
38.8 变化 181
38.9 参考文献 181
第39章 课堂培训 182
39.1 业务价值 182
39.2 小故事 182
39.3 适用情况 182
39.4 阻力 183
39.5 因此 183
39.6 采纳方法 183
39.7 但是 184
39.8 变化 184
第三部分(d) 组合模式 188
第40章 敏捷迭代 188
40.1 业务价值 188
40.2 小故事 188
40.3 适用情况 189
40.4 阻力 189
40.5 因此 189
40.6 采纳方法 190
40.7 但是 190
40.8 变化 191
40.9 参考文献 191
第41章 沟通组合 192
41.1 业务价值 192
41.2 小故事 192
41.3 适用情况 193
41.4 阻力 193
41.5 因此 193
41.6 采纳方法 194
41.7 但是 194
41.8 变化 195
41.9 参考文献 195
第42章 演进式设计 196
42.1 业务价值 196
42.2 小故事 196
42.3 适用情况 197
42.4 阻力 197
42.5 因此 198
42.6 采纳方法 199
42.7 但是 199
42.8 变化 200
42.9 参考文献 200
第43章 测试驱动开发 201
43.1 业务价值 201
43.2 小故事 201
43.3 适用情况 202
43.4 阻力 202
43.5 因此 203
43.6 采纳方法 203
43.7 但是 204
43.8 变化 205
43.9 参考文献 205
第44章 测试驱动需求 206
44.1 业务价值 206
44.2 小故事 206
44.3 适用情况 207
44.4 阻力 207
44.5 因此 208
44.6 采纳方法 208
44.7 但是 208
44.8 变化 209
44.9 参考文献 209
第四部分 案例研究 212
第45章 BabyCenter 212
45.1 BabyCenter敏捷实施——2007年一季度 212
45.1.1 制定敏捷实施策略 213
45.1.2 结论 216
45.2 BabyCenter敏捷实施回访——2008年一季度 217
第46章 X公司 219
46.1 X公司敏捷实施过程——2007年一二季度 219
46.1.1 报告背景 219
46.1.2 当前业务目标 220
46.1.3 硝烟四起 220
46.1.4 建议在2007年余下的日子里实施的实践方法 224
46.1.5 长远考虑 227
46.1.6 结论 227
46.2 X公司敏捷实施——回访 227
第五部分 附录 232
附录A 敏捷模式与业务价值的映射 232
附录B 敏捷模式与异味的映射 233
附录C 充分利用敏捷模式 234
附录D 更多阅读资源 237
参考文献 239