目录
序1
前言3
第一部分 持续改进的敏捷
第1章 什么是敏捷13
1.1 敏捷的起源13
1.2 从危机中诞生14
1.3 《敏捷宣言》14
1.4 敏捷的本质16
1.5 敏捷为什么成功18
1.6 敏捷为什么有效19
1.7 敏捷为什么失败20
第2章 如何做到敏捷22
2.1 实践敏捷22
2.2 精通之道23
2.3 如何开始24
第3章 选择适合你的敏捷27
3.1 敏捷流畅度模型27
3.2 选择区域31
第4章 投资于敏捷33
4.1 为学习留出时间35
4.2 选择或创建敏捷团队37
4.3 选择敏捷教练39
4.4 将权力和责任下放给团队39
4.5 改变团队管理风格41
4.6 创建团队空间42
4.7 为每个团队设立一个有利于学习的目标43
4.8 替换瀑布式治理的假设43
4.9 改变有害的人力资源政策44
4.10 解决安全方面的问题45
第5章 投资于变化49
5.1 理解变化49
5.2 大规模的变化51
5.3 做出改变51
5.4 获得管理层的支持53
5.5 获得团队的支持58
5.6 获得利益相关者的支持60
5.7 延伸阅读62
第6章 规模化敏捷63
6.1 规模化流畅度63
6.2 规模化产品65
第二部分 专注于价值
第7章 团队合作79
7.1 完整团队80
7.2 团队空间94
7.3 安全108
7.4 目标117
7.5 背景127
7.6 一致性132
7.7 充满活力的工作140
第8章 计划146
8.1 故事147
8.2 适应性计划156
8.3 可视化计划172
8.4 计划与博弈185
8.5 真实客户参与194
8.6 增量式需求199
第9章 所有权205
9.1 任务计划206
9.2 产能219
9.3 柔性时间236
9.4 站会241
9.5 信息丰富的工作空间247
9.6 客户示例251
9.7 完成256
第10章 职责263
10.1 利益相关者信任264
10.2 利益相关者演示271
10.3 预测278
10.4 路线图288
10.5 管理295
第11章 改进305
11.1 回顾306
11.2 团队动力313
11.3 消除障碍327
第三部分 可靠的交付
第12章 协作341
12.1 集体代码所有权342
12.2 结对编程348
12.3 集体编程358
12.4 统一语言363
第13章 开发369
13.1 零阻力370
13.2 持续集成379
13.3 测试驱动开发389
13.4 快速、可靠的测试405
13.5 重构412
13.6 实验方案423
第14章 设计428
14.1 增量式设计431
14.2 简单设计440
14.3 反思性设计449
第15章 DevOps459
15.1 面向运维构建460
15.2 特征标志470
15.3 持续部署475
15.4 可进化的系统架构480
第16章 质量489
16.1 没有漏洞490
16.2 发现盲点498
16.3 事件分析503
第四部分 优化结果
第17章 自主性521
17.1 业务专长521
17.2 商业决策521
17.3 问责制和监督522
17.4 资助523
17.5 实验和延伸阅读523
第18章 探索524
18.1 验证性学习525
18.2 适应性525
18.3 实验和延伸阅读526
第19章 走向未来528
参考文献531