DevOps实践指南(第2版) DevOps运维数字化转型云原生凤凰项目DevOpsHandbook计算机网络技术书籍
¥104.90
运费: | ¥ 0.00-20.00 |
商品详情
书名:DevOps实践指南(第2版)
定价:139.8
ISBN:9787115638779
作者:[美] 吉恩·金(Gene Kim),[英] 耶斯·亨布尔(Jez Humble),[比] 帕特里克·德布瓦(Patrick Debois)
版次:第2版
出版时间:2024-04
内容提要:
本书是软件开发与运维领域*参考书新升级版,由DevOps领域几位先驱撰写。第2版根据新研究和best practice更新了内容,增加了大量新案例,方便大家在各行各业落地DevOps实践。 本书内容分为六部分,围绕“DevOps三要义”(流动、反馈、持续学习与探索)探讨DevOps的理论、原则和落地实践。*部分介绍DevOps理论基础和关键主题,*部分介绍如何寻找切入点并启动转型,第三部分介绍如何通过构建部署流水线来加速流动,第四部分讨论如何通过建立有效的生产环境监控发现和解决问题,第五部分探讨如何通过建立公正的文化促进持续学习与探索,第六部分介绍将*与合规活动集成到日常工作。 本书适合所有互联网企业和传统企业从业者阅读。
作者简介:
【作者简介】 Gene Kim · DevOps先驱 热销书作者、研究员、*技术官、IT Revolution*、DevOps企业峰会*,专注于研究大型复杂组织的技术转型。著有风靡全球的《凤凰项目》《独角兽项目》。 Jez Humble · 持续交付之父 Google Cloud SRE、加州大学伯克利分校讲师、热销书作者,著有Jolt大奖获奖图书《持续交付》。 Patrick Debois · DevOps之父 Snyk公司DevOps关系总监兼顾问。致力于通过在开发、项目管理和系统管理中运用敏捷技术,弥合项目和运营之间的鸿沟。 John Willis · DevOps先驱 Red Hat全球转型办公室*总监、Beyond The Phoenix Project作者、Profound播客主持人。在IT管理行业拥有*过40年经验。 【译者简介】 茹炳晟 · 腾讯Tech Lead 腾讯研究院特约研究员、中国计算机学会(CCF)TF研发效能SIG主席。《测试工程师全栈技术进阶与实践》等*技术书作者。*“茹炳晟聊软件研发”主理人。 管俊 · 戴尔DevOps架构师 目前*职于戴尔中国*研发集团,担任ACP & VxRail产品研发部门DevOps架构师。在数字化转型方向拥有*过10年一线DevOps工程实践和团队建设经验。 董越 · 阿里前架构师 独立DevOps咨询师、研发运营一体化(DevOps)能力成熟度模型核心*,曾任阿里巴巴集团研发效能事业部架构师,当前主要从事企业级DevOps体系建设的咨询工作。《软件交付通识》等*技术书作者。 王晓翔 · 去哪儿网前*总监 独立DevOps咨询师、研发运营一体化(DevOps)能力成熟度模型核心*、去哪儿网前工程效率部*总监。目前致力于为传统企业提供DevOps转型指导。
目录:
第 一部分 DevOps三要义
第 1章 敏捷、持续交付与DevOps三要义 5
1.1 制造业价值流 5
1.2 技术价值流 5
1.2.1 聚焦部署前置时间 6
1.2.2 关注返工指标——%C/A 8
1.3 DevOps三要义:DevOps的基础原则 9
案例研究:向着巡航高度爬升:美国航空的DevOps之旅(第 一部分,2020年) 11
1.4 小结 14
第 2章 第 一要义:流动 15
2.1 使工作可视化 15
2.2 限制在制品数量 16
2.3 缩减批量大小 17
2.4 减少工作交接 19
2.5 持续识别并改进约束 20
2.6 *价值流中的困境和浪费 21
案例研究:医疗行业中改善流动性和改进约束的实践(2021年) 22
2.7 小结 24
第3章 *要义:反馈 25
3.1 在复杂系统中*地工作 25
3.2 及时发现问题 26
3.3 群策群力,攻克难题 28
案例研究:Excella的安灯绳实验(2018年) 30
3.4 从源头保障质量 32
3.5 为下游工作中心优化 33
3.6 小结 33
第4章 第三要义:持续学习与探索 34
4.1 建立学习型组织,打造*文化 35
4.2 将日常工作的改进制度化 36
4.3 将局部经验转化为全局改进 38
4.4 在日常工作中注入弹性模式 38
4.5 领导层强化与巩固学习文化 39
案例研究:贝尔实验室的故事(1925年) 40
4.6 小结 41
第 一部分总结 42
*部分 从哪里开始
第5章 选择合适的价值流切入 45
5.1 绿地项目与棕地项目 47
案例研究:Kessel Run:空中加油系统的棕地项目转型(2020年) 49
5.2 兼顾记录型系统和交互型系统 50
5.3 从*同理心和创新精神的团队开始 51
案例研究:在整个企业中推广DevOps转型:美国航空的DevOps之旅(*部分,2020年) 52
5.4 在组织中推广DevOps转型 52
案例研究:英国税务及海关总署如何通过*大规模PaaS拯救经济于水火(2020年) 55
5.5 小结 57
第6章 理解、可视化和运用价值流 58
6.1 通过绘制价值流图改进工作 58
6.2 确定价值流的参与团队 59
6.3 通过绘制价值流图展现工作 60
6.4 组建专职转型团队 61
6.4.1 目标一致 62
6.4.2 保持小跨度的改进计划 63
6.4.3 为非功能性需求和偿还技术债务预留20%的时间 63
案例研究:LinkedIn的“反转行动”(2011年) 65
6.4.4 提高工作的可视化程度 67
6.5 使用工具强化预期行为 67
6.6 小结 68
第7章 参照康威定律设计组织结构与系统架构 69
7.1 组织原型 71
7.2 过度以职能为导向的危害(“成本优化”) 72
7.3 组建市场型团队(“速度优化”) 72
7.4 让职能型组织*运转 73
7.5 将测试、运维和信息*纳入日常工作 74
7.6 让团队成员*成为通才 75
7.7 投资服务与产品,而非项目 76
7.8 依照康威定律设定团队边界 76
7.9 创建松耦合的架构,保证生产力和* 77
7.10 保持小规模团队(“两张比萨”原则) 78
案例研究:Target公司的“API启用”项目(2015年) 80
7.11 小结 81
第8章 将运维融入日常开发工作 82
8.1 构建共享服务,提升开发人员生产力 83
8.2 将运维工程师融入服务团队 85
8.3 为服务团队指派运维联络人 85
8.4 邀请运维工程师参加开发团队的例行活动 86
8.4.1 邀请运维工程师参加每日站会 87
8.4.2 邀请运维工程师参加回顾会议 87
8.4.3 使用共享的看板展示相关运维工作 88
案例研究:全英房屋抵押贷款协会:拥抱更好的工作方式(2020年) 88
8.5 小结 91
*部分总结 91
第三部分 “第 一要义:流动”的具体实践
第9章 为部署流水线奠定基础 95
9.1 按需搭建开发、测试和生产环境 96
9.2 使用统一的代码仓库 97
9.3 简化基础设施的重建 99
案例研究:酒店公司如何通过容器技术实现年收入300亿美元(2020年) 100
9.4 代码运行在类生产环境才算“开发完成” 101
9.5 小结 102
第 10章 实现快速可靠的自动化测试 103
10.1 持续构建、测试和集成代码与环境 106
10.2 构建快速可靠的自动化测试套件 108
10.3 在自动化测试阶段尽早发现问题 109
10.3.1 确保测试快速运行 110
10.3.2 测试驱动开发 111
10.3.3 尽可能将手工测试自动化 112
10.3.4 在测试套件中集成性能测试 113
10.3.5 在测试套件中集成非功能性需求测试 113
10.4 在部署流水线失败时拉下安灯绳 114
10.5 小结 116
第 11章 实现持续集成 117
11.1 小批量开发vs大批量合并 119
11.2 基于主干的开发实践 120
案例研究:Bazaarvoice的持续集成实践(2012年) 121
11.3 小结 123
第 12章 自动化和低风险的发布 124
12.1 部署流程自动化 126
案例研究:CSG的每日部署(2013年) 127
12.1.1 实现自动化的自助部署 129
12.1.2 将代码部署集成到部署流水线 130
案例研究:Etsy持续部署案例:*自助部署(2014年) 131
12.2 部署与发布解耦 133
12.2.1 基于部署环境的发布模式 134
案例研究:Dixons Retail:蓝绿部署在POS系统中的应用(2008年) 136
12.2.2 基于应用程序的发布模式 138
案例研究:Facebook Chat功能的灰度发布案例(2008年) 140
12.3 持续交付和持续部署实践调研 141
案例研究:CSG:实现开发与运维的双赢(2016年) 142
12.4 小结 146
第 13章 降低发布风险的架构 147
13.1 提高研发效能、可测试性和*性的架构 148
13.2 架构原型:单体架构vs微服务 149
案例研究:*的演进式架构(2002年) 150
13.3 *地演进企业架构 151
案例研究:Blackboard Learn的绞杀者应用模式(2011年) 152
13.4 小结 155
第三部分总结 155
第四部分 “*要义:反馈”的具体实践
第 14章 使用监控发现和解决问题 159
14.1 搭建集中式的监控基础设施 161
14.2 为应用程序添加日志监控 163
14.3 用监控指引问题的分析和解决 165
14.4 把添加监控融入日常工作 165
14.5 以自助方式访问监控数据 166
案例研究:搭建自助的监控体系:LinkedIn的实践(2011年) 167
14.6 对监控配置查漏补缺 169
14.6.1 应用程序和业务的监控 169
14.6.2 基础设施的监控 171
14.6.3 显示其他相关信息 172
14.7 小结 172
第 15章 使用监控预防问题并实现业务目标 173
15.1 用均值和标准差发现潜在问题 174
15.2 监测到非预期结果时告警 175
15.3 监控数据非高斯分布带来的问题 176
案例研究:Netflix的自动扩容能力(2012年) 177
15.4 使用异常检测技术 179
案例研究:异常检测中的*技术(2014年) 180
15.5 小结 182
第 16章 引入反馈机制实现*部署 183
16.1 利用监控确保部署上线更* 184
16.2 让开发和运维轮流值班 186
16.3 让开发人员到价值流下游看一看 186
16.4 先由开发人员自行运维 188
案例研究:谷歌的移交*绪评审和发布*绪评审(2010年) 190
16.5 小结 192
第 17章 将假设驱动开发和A/B测试纳入日常工作 193
17.1 A/B测试简史 194
17.2 在新功能测试中整合A/B测试 195
17.3 在软件发布中整合A/B测试 196
17.4 在功能规划中整合A/B测试 196
案例研究:雅虎问答在快速迭代中实验,实现收入翻倍 197
17.5 小结 198
第 18章 通过评审和协调提升工作质量 199
18.1 变更审批流程带来的问题 200
18.2 过度变更控制带来的问题 201
案例研究:从三位高管审批到自动审批——阿迪达斯的大规模发布实践(2020年) 202
18.3 对变更进行协调和规划 204
18.4 对变更进行同行评议 204
案例研究:谷歌的代码评审(2010年) 206
18.5 冻结变更并进行大量手工测试的隐患 207
18.6 用结对编程提升各种类型变更的质量 207
案例研究:Pivotal用结对编程代替阻滞的代码评审过程(2011年) 208
18.7 分析拉取请求过程的有效性 209
18.8 对官僚化流程进行大胆简化 210
18.9 小结 211
第四部分 总结 212
第五部分 “第三要义:持续学习与探索”的具体实践
第 19章 将学习融入日常工作 215
19.1 建立公正的学习文化 216
19.2 故障发生后及时召开回顾会议 217
19.3 尽可能广泛公开回顾会议纪要 219
19.4 降低事故容差以发现更弱的故障信号 220
19.5 重新定义失败并鼓励评估风险 221
19.6 向生产环境注入故障,培养系统弹性和学习氛围 222
19.7 设立故障演练日 223
案例研究:CSG如何将故障转化为有效的学习机会(2021) 224
19.8 小结 226
第 20章 将局部经验转化为全局改进 227
20.1 将可复用的标准流程自动化 228
20.2 创建组织级的单一共享源代码仓库 229
20.3 用自动化测试记录、交流实践以传播知识 231
20.4 通过规范非功能性需求来设计运维 231
20.5 将可复用的运维用户故事融入开发过程 232
20.6 确保技术选型有助于组织达成目标 233
案例研究:Etsy的新技术栈标准化(2010年) 234
案例研究:Target的众包技术治理(2018年) 235
20.7 小结 236
第 21章 预留时间开展组织学习和改进 237
21.1 将偿还技术债务变为例行活动 238
21.2 让所有人教学相长 239
21.3 在DevOps会议中分享经验 241
案例研究:美国*保险、Capital One和Target的内部技术会议(2014年) 242
21.4 创建社区结构来推广实践 243
21.5 小结 245
第五部分 总结 245
第六部分 整合信息*、变更管理和合规性的技术实践
第 22章 信息*是每个人的日常工作 249
22.1 将*集成到开发迭代演示 249
22.2 将*问题纳入缺陷跟踪和事后分析 250
22.3 将预防性*控制集成到共享源代码仓库及共享服务 250
22.4 将*集成到部署流水线 252
22.5 保障应用程序* 253
案例研究:Twitter的静态*测试(2009年) 254
22.6 保障软件供应链* 256
22.7 保障环境* 261
案例研究:18F使用Compliance Masonry实现联邦政府合规性审查自动化(2016年) 261
22.8 将信息*集成到生产监控系统 262
22.8.1 为应用程序创建*监控 263
22.8.2 为环境创建*监控 263
案例研究:Etsy的环境监测(2010年) 264
22.9 保护部署流水线 265
案例研究:在Fannie Mae开展*左移(2020年) 266
22.10 小结 267
第 23章 保护部署流水线 268
23.1 将*和合规集成到变更审批流程 268
23.2 将低风险的变更归类为标准变更 269
23.3 当变更被归类为常规变更时如何处理 270
案例研究:Salesforce将自动化基础设施变更归类为标准变更(2012年) 270
23.4 通过代码评审实现职责分离 271
案例研究:Etsy的PCI合规性以及一则职责分离的警示故事(2014年) 272
案例研究:通过业务与技术合作,Capital One实现每天10次有信心的发布(2020年) 274
23.5 确保为合规官和审计师提供文档和证据 275
案例研究:证明监管环境下的合规性(2015年) 275
案例研究:ATM系统离不开生产监控(2013年) 277
23.6 小结 278
第六部分 总结 278
附录1:DevOps大融合 286
附录2:约束理论和长期存在的根本矛盾 288
附录3:恶性循环列表 289
附录4:交接和队列的危害 289
附录5:工业*的误区 291
附录6:丰田安灯绳 291
附录7:COTS软件 292
附录8:事后分析会议(回顾会议) 292
附录9:猿猴军团 293
附录10:上线时间透明化 294
定价:139.8
ISBN:9787115638779
作者:[美] 吉恩·金(Gene Kim),[英] 耶斯·亨布尔(Jez Humble),[比] 帕特里克·德布瓦(Patrick Debois)
版次:第2版
出版时间:2024-04
内容提要:
本书是软件开发与运维领域*参考书新升级版,由DevOps领域几位先驱撰写。第2版根据新研究和best practice更新了内容,增加了大量新案例,方便大家在各行各业落地DevOps实践。 本书内容分为六部分,围绕“DevOps三要义”(流动、反馈、持续学习与探索)探讨DevOps的理论、原则和落地实践。*部分介绍DevOps理论基础和关键主题,*部分介绍如何寻找切入点并启动转型,第三部分介绍如何通过构建部署流水线来加速流动,第四部分讨论如何通过建立有效的生产环境监控发现和解决问题,第五部分探讨如何通过建立公正的文化促进持续学习与探索,第六部分介绍将*与合规活动集成到日常工作。 本书适合所有互联网企业和传统企业从业者阅读。
作者简介:
【作者简介】 Gene Kim · DevOps先驱 热销书作者、研究员、*技术官、IT Revolution*、DevOps企业峰会*,专注于研究大型复杂组织的技术转型。著有风靡全球的《凤凰项目》《独角兽项目》。 Jez Humble · 持续交付之父 Google Cloud SRE、加州大学伯克利分校讲师、热销书作者,著有Jolt大奖获奖图书《持续交付》。 Patrick Debois · DevOps之父 Snyk公司DevOps关系总监兼顾问。致力于通过在开发、项目管理和系统管理中运用敏捷技术,弥合项目和运营之间的鸿沟。 John Willis · DevOps先驱 Red Hat全球转型办公室*总监、Beyond The Phoenix Project作者、Profound播客主持人。在IT管理行业拥有*过40年经验。 【译者简介】 茹炳晟 · 腾讯Tech Lead 腾讯研究院特约研究员、中国计算机学会(CCF)TF研发效能SIG主席。《测试工程师全栈技术进阶与实践》等*技术书作者。*“茹炳晟聊软件研发”主理人。 管俊 · 戴尔DevOps架构师 目前*职于戴尔中国*研发集团,担任ACP & VxRail产品研发部门DevOps架构师。在数字化转型方向拥有*过10年一线DevOps工程实践和团队建设经验。 董越 · 阿里前架构师 独立DevOps咨询师、研发运营一体化(DevOps)能力成熟度模型核心*,曾任阿里巴巴集团研发效能事业部架构师,当前主要从事企业级DevOps体系建设的咨询工作。《软件交付通识》等*技术书作者。 王晓翔 · 去哪儿网前*总监 独立DevOps咨询师、研发运营一体化(DevOps)能力成熟度模型核心*、去哪儿网前工程效率部*总监。目前致力于为传统企业提供DevOps转型指导。
目录:
第 一部分 DevOps三要义
第 1章 敏捷、持续交付与DevOps三要义 5
1.1 制造业价值流 5
1.2 技术价值流 5
1.2.1 聚焦部署前置时间 6
1.2.2 关注返工指标——%C/A 8
1.3 DevOps三要义:DevOps的基础原则 9
案例研究:向着巡航高度爬升:美国航空的DevOps之旅(第 一部分,2020年) 11
1.4 小结 14
第 2章 第 一要义:流动 15
2.1 使工作可视化 15
2.2 限制在制品数量 16
2.3 缩减批量大小 17
2.4 减少工作交接 19
2.5 持续识别并改进约束 20
2.6 *价值流中的困境和浪费 21
案例研究:医疗行业中改善流动性和改进约束的实践(2021年) 22
2.7 小结 24
第3章 *要义:反馈 25
3.1 在复杂系统中*地工作 25
3.2 及时发现问题 26
3.3 群策群力,攻克难题 28
案例研究:Excella的安灯绳实验(2018年) 30
3.4 从源头保障质量 32
3.5 为下游工作中心优化 33
3.6 小结 33
第4章 第三要义:持续学习与探索 34
4.1 建立学习型组织,打造*文化 35
4.2 将日常工作的改进制度化 36
4.3 将局部经验转化为全局改进 38
4.4 在日常工作中注入弹性模式 38
4.5 领导层强化与巩固学习文化 39
案例研究:贝尔实验室的故事(1925年) 40
4.6 小结 41
第 一部分总结 42
*部分 从哪里开始
第5章 选择合适的价值流切入 45
5.1 绿地项目与棕地项目 47
案例研究:Kessel Run:空中加油系统的棕地项目转型(2020年) 49
5.2 兼顾记录型系统和交互型系统 50
5.3 从*同理心和创新精神的团队开始 51
案例研究:在整个企业中推广DevOps转型:美国航空的DevOps之旅(*部分,2020年) 52
5.4 在组织中推广DevOps转型 52
案例研究:英国税务及海关总署如何通过*大规模PaaS拯救经济于水火(2020年) 55
5.5 小结 57
第6章 理解、可视化和运用价值流 58
6.1 通过绘制价值流图改进工作 58
6.2 确定价值流的参与团队 59
6.3 通过绘制价值流图展现工作 60
6.4 组建专职转型团队 61
6.4.1 目标一致 62
6.4.2 保持小跨度的改进计划 63
6.4.3 为非功能性需求和偿还技术债务预留20%的时间 63
案例研究:LinkedIn的“反转行动”(2011年) 65
6.4.4 提高工作的可视化程度 67
6.5 使用工具强化预期行为 67
6.6 小结 68
第7章 参照康威定律设计组织结构与系统架构 69
7.1 组织原型 71
7.2 过度以职能为导向的危害(“成本优化”) 72
7.3 组建市场型团队(“速度优化”) 72
7.4 让职能型组织*运转 73
7.5 将测试、运维和信息*纳入日常工作 74
7.6 让团队成员*成为通才 75
7.7 投资服务与产品,而非项目 76
7.8 依照康威定律设定团队边界 76
7.9 创建松耦合的架构,保证生产力和* 77
7.10 保持小规模团队(“两张比萨”原则) 78
案例研究:Target公司的“API启用”项目(2015年) 80
7.11 小结 81
第8章 将运维融入日常开发工作 82
8.1 构建共享服务,提升开发人员生产力 83
8.2 将运维工程师融入服务团队 85
8.3 为服务团队指派运维联络人 85
8.4 邀请运维工程师参加开发团队的例行活动 86
8.4.1 邀请运维工程师参加每日站会 87
8.4.2 邀请运维工程师参加回顾会议 87
8.4.3 使用共享的看板展示相关运维工作 88
案例研究:全英房屋抵押贷款协会:拥抱更好的工作方式(2020年) 88
8.5 小结 91
*部分总结 91
第三部分 “第 一要义:流动”的具体实践
第9章 为部署流水线奠定基础 95
9.1 按需搭建开发、测试和生产环境 96
9.2 使用统一的代码仓库 97
9.3 简化基础设施的重建 99
案例研究:酒店公司如何通过容器技术实现年收入300亿美元(2020年) 100
9.4 代码运行在类生产环境才算“开发完成” 101
9.5 小结 102
第 10章 实现快速可靠的自动化测试 103
10.1 持续构建、测试和集成代码与环境 106
10.2 构建快速可靠的自动化测试套件 108
10.3 在自动化测试阶段尽早发现问题 109
10.3.1 确保测试快速运行 110
10.3.2 测试驱动开发 111
10.3.3 尽可能将手工测试自动化 112
10.3.4 在测试套件中集成性能测试 113
10.3.5 在测试套件中集成非功能性需求测试 113
10.4 在部署流水线失败时拉下安灯绳 114
10.5 小结 116
第 11章 实现持续集成 117
11.1 小批量开发vs大批量合并 119
11.2 基于主干的开发实践 120
案例研究:Bazaarvoice的持续集成实践(2012年) 121
11.3 小结 123
第 12章 自动化和低风险的发布 124
12.1 部署流程自动化 126
案例研究:CSG的每日部署(2013年) 127
12.1.1 实现自动化的自助部署 129
12.1.2 将代码部署集成到部署流水线 130
案例研究:Etsy持续部署案例:*自助部署(2014年) 131
12.2 部署与发布解耦 133
12.2.1 基于部署环境的发布模式 134
案例研究:Dixons Retail:蓝绿部署在POS系统中的应用(2008年) 136
12.2.2 基于应用程序的发布模式 138
案例研究:Facebook Chat功能的灰度发布案例(2008年) 140
12.3 持续交付和持续部署实践调研 141
案例研究:CSG:实现开发与运维的双赢(2016年) 142
12.4 小结 146
第 13章 降低发布风险的架构 147
13.1 提高研发效能、可测试性和*性的架构 148
13.2 架构原型:单体架构vs微服务 149
案例研究:*的演进式架构(2002年) 150
13.3 *地演进企业架构 151
案例研究:Blackboard Learn的绞杀者应用模式(2011年) 152
13.4 小结 155
第三部分总结 155
第四部分 “*要义:反馈”的具体实践
第 14章 使用监控发现和解决问题 159
14.1 搭建集中式的监控基础设施 161
14.2 为应用程序添加日志监控 163
14.3 用监控指引问题的分析和解决 165
14.4 把添加监控融入日常工作 165
14.5 以自助方式访问监控数据 166
案例研究:搭建自助的监控体系:LinkedIn的实践(2011年) 167
14.6 对监控配置查漏补缺 169
14.6.1 应用程序和业务的监控 169
14.6.2 基础设施的监控 171
14.6.3 显示其他相关信息 172
14.7 小结 172
第 15章 使用监控预防问题并实现业务目标 173
15.1 用均值和标准差发现潜在问题 174
15.2 监测到非预期结果时告警 175
15.3 监控数据非高斯分布带来的问题 176
案例研究:Netflix的自动扩容能力(2012年) 177
15.4 使用异常检测技术 179
案例研究:异常检测中的*技术(2014年) 180
15.5 小结 182
第 16章 引入反馈机制实现*部署 183
16.1 利用监控确保部署上线更* 184
16.2 让开发和运维轮流值班 186
16.3 让开发人员到价值流下游看一看 186
16.4 先由开发人员自行运维 188
案例研究:谷歌的移交*绪评审和发布*绪评审(2010年) 190
16.5 小结 192
第 17章 将假设驱动开发和A/B测试纳入日常工作 193
17.1 A/B测试简史 194
17.2 在新功能测试中整合A/B测试 195
17.3 在软件发布中整合A/B测试 196
17.4 在功能规划中整合A/B测试 196
案例研究:雅虎问答在快速迭代中实验,实现收入翻倍 197
17.5 小结 198
第 18章 通过评审和协调提升工作质量 199
18.1 变更审批流程带来的问题 200
18.2 过度变更控制带来的问题 201
案例研究:从三位高管审批到自动审批——阿迪达斯的大规模发布实践(2020年) 202
18.3 对变更进行协调和规划 204
18.4 对变更进行同行评议 204
案例研究:谷歌的代码评审(2010年) 206
18.5 冻结变更并进行大量手工测试的隐患 207
18.6 用结对编程提升各种类型变更的质量 207
案例研究:Pivotal用结对编程代替阻滞的代码评审过程(2011年) 208
18.7 分析拉取请求过程的有效性 209
18.8 对官僚化流程进行大胆简化 210
18.9 小结 211
第四部分 总结 212
第五部分 “第三要义:持续学习与探索”的具体实践
第 19章 将学习融入日常工作 215
19.1 建立公正的学习文化 216
19.2 故障发生后及时召开回顾会议 217
19.3 尽可能广泛公开回顾会议纪要 219
19.4 降低事故容差以发现更弱的故障信号 220
19.5 重新定义失败并鼓励评估风险 221
19.6 向生产环境注入故障,培养系统弹性和学习氛围 222
19.7 设立故障演练日 223
案例研究:CSG如何将故障转化为有效的学习机会(2021) 224
19.8 小结 226
第 20章 将局部经验转化为全局改进 227
20.1 将可复用的标准流程自动化 228
20.2 创建组织级的单一共享源代码仓库 229
20.3 用自动化测试记录、交流实践以传播知识 231
20.4 通过规范非功能性需求来设计运维 231
20.5 将可复用的运维用户故事融入开发过程 232
20.6 确保技术选型有助于组织达成目标 233
案例研究:Etsy的新技术栈标准化(2010年) 234
案例研究:Target的众包技术治理(2018年) 235
20.7 小结 236
第 21章 预留时间开展组织学习和改进 237
21.1 将偿还技术债务变为例行活动 238
21.2 让所有人教学相长 239
21.3 在DevOps会议中分享经验 241
案例研究:美国*保险、Capital One和Target的内部技术会议(2014年) 242
21.4 创建社区结构来推广实践 243
21.5 小结 245
第五部分 总结 245
第六部分 整合信息*、变更管理和合规性的技术实践
第 22章 信息*是每个人的日常工作 249
22.1 将*集成到开发迭代演示 249
22.2 将*问题纳入缺陷跟踪和事后分析 250
22.3 将预防性*控制集成到共享源代码仓库及共享服务 250
22.4 将*集成到部署流水线 252
22.5 保障应用程序* 253
案例研究:Twitter的静态*测试(2009年) 254
22.6 保障软件供应链* 256
22.7 保障环境* 261
案例研究:18F使用Compliance Masonry实现联邦政府合规性审查自动化(2016年) 261
22.8 将信息*集成到生产监控系统 262
22.8.1 为应用程序创建*监控 263
22.8.2 为环境创建*监控 263
案例研究:Etsy的环境监测(2010年) 264
22.9 保护部署流水线 265
案例研究:在Fannie Mae开展*左移(2020年) 266
22.10 小结 267
第 23章 保护部署流水线 268
23.1 将*和合规集成到变更审批流程 268
23.2 将低风险的变更归类为标准变更 269
23.3 当变更被归类为常规变更时如何处理 270
案例研究:Salesforce将自动化基础设施变更归类为标准变更(2012年) 270
23.4 通过代码评审实现职责分离 271
案例研究:Etsy的PCI合规性以及一则职责分离的警示故事(2014年) 272
案例研究:通过业务与技术合作,Capital One实现每天10次有信心的发布(2020年) 274
23.5 确保为合规官和审计师提供文档和证据 275
案例研究:证明监管环境下的合规性(2015年) 275
案例研究:ATM系统离不开生产监控(2013年) 277
23.6 小结 278
第六部分 总结 278
附录1:DevOps大融合 286
附录2:约束理论和长期存在的根本矛盾 288
附录3:恶性循环列表 289
附录4:交接和队列的危害 289
附录5:工业*的误区 291
附录6:丰田安灯绳 291
附录7:COTS软件 292
附录8:事后分析会议(回顾会议) 292
附录9:猿猴军团 293
附录10:上线时间透明化 294
- 人民邮电出版社有限公司 (微信公众号认证)
- 人民邮电出版社微店,为您提供最全面,最专业的一站式购书服务
- 扫描二维码,访问我们的微信店铺
- 随时随地的购物、客服咨询、查询订单和物流...