图书介绍

持续交付2.0 业务引领的DevOps精要PDF|Epub|txt|kindle电子书版本下载

持续交付2.0 业务引领的DevOps精要
  • 乔梁著 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:9787115500014
  • 出版时间:2019
  • 标注页数:327页
  • 文件大小:45MB
  • 文件页数:349页
  • 主题词:软件工程

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

持续交付2.0 业务引领的DevOps精要PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 持续交付2.01

1.1软件工程发展概述1

1.1.1瀑布软件开发方法1

1.1.2敏捷软件开发方法2

1.1.3 DevOps运动3

1.1.4持续交付1.04

1.2持续交付2.07

1.2.1精益思想8

1.2.2双环模型9

1.2.3 4个核心原则11

1.2.4持续交付七巧板12

1.3小结13

第2章 价值探索环14

2.1探索环的意义14

2.2探索环的4个关键环节15

2.2.1提问16

2.2.2锚定17

2.2.3共创19

2.2.4精炼22

2.3工作原则24

2.3.1分解并快速试错24

2.3.2一次只验证一点25

2.3.3允许失败26

2.4共创与精炼的常用方法27

2.4.1装饰窗方法27

2.4.2最小可行特性法29

2.4.3特区法30

2.4.4定向探索法30

2.4.5稻草人法31

2.4.6最小可行产品法32

2.5实施注意事项32

2.6小结35

第3章 快速验证环36

3.1验证环的目标36

3.2验证环的4个关键环节37

3.2.1构建37

3.2.2运行38

3.2.3监测39

3.2.4决策39

3.3工作原则39

3.3.1质量内建39

3.3.2消除等待40

3.3.3重复事务自动化43

3.3.4监测一切43

3.4小结44

第4章 持续交付2.0的组织文化45

4.1安全、信任与持续改善45

4.1.1失败是安全的45

4.1.2相互信任45

4.1.3持续改善46

4.2文化塑造四步法46

4.2.1行为决定文化46

4.2.2谷歌的工程师质量文化48

4.2.3 Etsy的持续试验文化49

4.3行动原则50

4.3.1价值导向51

4.3.2快速验证51

4.3.3持续学习51

4.4度量原则55

4.4.1度量指标的4类属性56

4.4.2度量的目标是改善57

4.5“改善套路”进行持续改进57

4.6小结58

第5章 持续交付的软件系统架构60

5.1“大系统小做”原则61

5.1.1持续交付架构要求61

5.1.2系统拆分原则61

5.2常见架构模式62

5.2.1微核架构62

5.2.2微服务架构63

5.2.3巨石应用64

5.3架构改造实施模式66

5.3.1拆迁者模式67

5.3.2绞杀者模式68

5.3.3修缮者模式68

5.3.4数据库的拆分方法70

5.4小结70

第6章 业务需求协作管理72

6.1产品版本周期概述73

6.1.1准备期73

6.1.2交付期74

6.2需求拆分的利与弊75

6.2.1需求拆分的收益76

6.2.2需求拆分的成本78

6.3需求拆分方法79

6.3.1需求的来源80

6.3.2技术债也是需求80

6.3.3参与需求拆分的角色81

6.3.4不平等的INVEST原则82

6.3.5五大拆分技法82

6.3.6七大组成部分84

6.4需求分析与管理工具集85

6.4.1用户故事地图85

6.4.2用户故事树86

6.4.3依赖关系图87

6.4.4需求管理数字化平台87

6.5团队协作管理工具87

6.5.1团队共享日历88

6.5.2团队回顾89

6.5.3可视化故事墙90

6.5.4明确“完成”的定义90

6.5.5持续集成91

6.5.6故事验证91

6.6小结91

第7章 部署流水线原则与工具设计92

7.1简单的部署流水线92

7.1.1简单的产品研发流程92

7.1.2初始部署流水线93

7.1.3流水线执行状态解析95

7.2部署流水线的设计与使用95

7.2.1流水线的设计原则95

7.2.2团队的协作纪律97

7.3部署流水线平台的构成97

7.3.1工具链总体架构97

7.3.2平台应当具备的基本能力99

7.3.3工具链建设策略100

7.4基础支撑服务的云化100

7.4.1基础支撑服务的协作过程解析101

7.4.2编译构建管理服务103

7.4.3自动化测试管理服务104

7.4.4软件部署管理服务105

7.4.5基础环境管理服务106

7.5企业制品库的管理107

7.5.1制品库的分类107

7.5.2制品库的管理原则108

7.6多种多样的部署流水线108

7.6.1多组件的部署流水线108

7.6.2个人部署流水线109

7.6.3部署流水线的不断演进110

7.7为开发者构建自助式工具111

7.8小结113

第8章 利于集成的分支策略114

8.1版本控制系统的使用目的114

8.1.1集中式版本控制系统114

8.1.2分布式版本控制系统115

8.1.3版本控制系统中的基本概念117

8.2常见分支开发模式118

8.2.1主干开发,主干发布118

8.2.2主干开发,分支发布119

8.2.3分支开发,主干发布121

8.3分支模式的演化126

8.3.1三驾马车分支模式126

8.3.2 Gitflow分支模式127

8.3.3 GitHubFlow分支模式128

8.4分支策略的选择128

8.4.1版本发布模式128

8.4.2分支策略与发布周期的关系132

8.5小结133

第9章 持续集成134

9.1起源与定义134

9.1.1原始定义135

9.1.2一次集成过程135

9.2六步提交法136

9.2.1 4个关键点138

9.2.2同步与异步模式139

9.2.3自查表140

9.3速度与质量的权衡141

9.3.1分级构建142

9.3.2多人同时提交的构建142

9.3.3云平台的威力143

9.4在团队中实施持续集成实践145

9.4.1快速建立团队的持续集成实践146

9.4.2分支策略与部署流水线148

9.5常见的实施问题150

9.5.1工程师的开发习惯151

9.5.2视而不见的扫描问题151

9.5.3自动化测试用例的缺乏151

9.6小结152

第10章 自动化测试策略与方法153

10.1自动化测试的自身定位153

10.1.1自动化测试的优势154

10.1.2自动化测试所需的投入155

10.2突破传统自动化测试的困境156

10.2.1传统自动化测试的特点157

10.2.2自动化测试的分层157

10.2.3不同类型的测试金字塔160

10.3自动化测试的实施策略163

10.3.1增加自动化测试用例的着手点163

10.3.2提高自动化测试的执行次数164

10.3.3良好自动化测试的特征165

10.3.4共享自动化测试的维护职责166

10.3.5代码测试覆盖率167

10.4用户验收自动化测试要点168

10.4.1先搭建分层框架168

10.4.2测试用例数应保持低位171

10.4.3为自动化测试用例预留API171

10.4.4为调试做好准备171

10.4.5测试数据的准备171

10.5其他质量检查方法173

10.5.1差异批注测试方法173

10.5.2代码规范检查与代码动静态检测174

10.5.3 AI在测试领域的应用174

10.6小结175

第11章 软件配置管理176

11.1将一切纳入配置管理176

11.1.1配置管理目标176

11.1.2配置管理的范围177

11.1.3软件配置管理原则177

11.2软件包的版本管理181

11.2.1包管理的反模式181

11.2.2集中式包管理服务182

11.2.3软件包的元信息183

11.3包依赖管理185

11.3.1显式声明依赖185

11.3.2自动管理依赖187

11.3.3减少复杂依赖188

11.4环境基础设施管理191

11.4.1环境准备的4种状态191

11.4.2领域专属语言的应用197

11.4.3环境基础设施即代码198

11.5软件配置项的管理199

11.5.1二进制与配置项的分离199

11.5.2配置信息的版本管理200

11.5.3配置项的存储组织方式201

11.5.4配置漂移与治理202

11.6不可变基础设施与云应用203

11.6.1实现不可变基础设施203

11.6.2云原生应用206

11.6.3优势与挑战206

11.7数据的版本管理208

11.7.1数据库结构变更208

11.7.2数据文件208

11.8需求与源代码的版本关联209

11.9小结209

第12章 低风险发布211

12.1高频发布是一种趋势211

12.1.1互联网企业的高频发布212

12.1.2收益与成本共存214

12.2降低发布风险的方法215

12.2.1蓝绿部署215

12.2.2滚动部署216

12.2.3金丝雀发布与灰度发布217

12.2.4暗部署218

12.3高频发布支撑技术219

12.3.1功能开关技术220

12.3.2数据迁移技术222

12.3.3抽象分支方法225

12.3.4升级替代回滚226

12.4影响发布频率的因素227

12.5小结228

第13章 监测与决策229

13.1生产监测范围230

13.1.1后台服务的监测230

13.1.2分发软件的监测230

13.2数据监测体系231

13.2.1收集与处理231

13.2.2数据的标准化232

13.2.3监测数据体系及其能力衡量233

13.3问题处理体系235

13.3.1告警海洋与智能化管理235

13.3.2问题处理是一个学习过程236

13.4生产环境测试237

13.4.1测试活动扁平化趋势237

13.4.2生产环境中的测试239

13.4.3混沌工程239

13.5向东,还是向西240

13.6小结241

第14章 大型互联网团队的FT化242

14.1简介242

14.1.1改进前状态243

14.1.2改进后状态244

14.2改进方法论245

14.2.1指导思想245

14.2.2改进步骤245

14.3改进的历程246

14.3.1架构解耦246

14.3.2组织解耦248

14.3.3研发流程再造250

14.3.4自动化一切259

14.4小结260

第15章 小团队逆袭之旅262

15.1背景简介262

15.1.1改进前的“死亡行军”之旅264

15.1.2改进后的无缺陷交付264

15.2改进方法论265

15.2.1指导思想265

15.2.2试点团队的选择265

15.3第一阶段:研发准备期266

15.3.1功能简介与需求拆分266

15.3.2架构设计与需求依赖识别267

15.3.3工作量估算与排期268

15.4第二阶段:软件交付期270

15.4.1通过可视化看板改进工作流程270

15.4.2无缺陷交付277

15.4.3主干开发与持续集成278

15.4.4测试活动左移279

15.4.5代码评审279

15.4.6关注结果,更要关注过程280

15.5小结281

第16章 研发推动的DevOps283

16.1改进的关键点285

16.1.1改进方法论285

16.1.2定义改进目标285

16.2第一阶段:敏捷101287

16.2.1做个靠谱的计划287

16.2.2开发阶段启航291

16.2.3对过程质量的约束294

16.2.4阶段性改进点301

16.3第二阶段:DevOps转型302

16.3.1与运维人员的“冲突”303

16.3.2高频部署发布中的具体障碍304

16.3.3整体解决方案的设计304

16.3.4 DevOps阶段的团队改变308

16.4小结308

附录A 软件工程的三次进化310

附录B 排序法做相对估算323

热门推荐