5G時代的DevOps理論與實踐
內容描述
《5G 時代的 DevOps 理論與實踐》是亞信科技結合二十多年的大型軟件研發管理經驗和
DevOps理論,總結成的一套體系化、標準化的實踐手冊。全書共18章,分為四個部分:第一部分(第
1 章和第 2 章)探討 DevOps 的基礎與總體框架;第二部分(第 3~7 章)介紹與 DevOps 緊密相
關的敏捷的基礎知識和理論;第三部分(第 8~11 章)詳細介紹 DevOps 在不同領域的平臺和工
具;第四部分(第 12~18 章)介紹多個行業的大型項目的落地實踐案例,並在最後的第 18 章對
DevOps 的未來進行展望。
本書適合運營商、金融、能源等大型企業的研發效能相關人員,以及IT從業者(包括產品經理、
研發、測試、運維、敏捷教練等)閱讀。
目錄大綱
目? 錄
第一部分? DevOps 概述與總體架構
第 1 章 DevOps 概述 ·······································································2
1.1 DevOps 的音、形、義 ··································································· 2
1.2 瀑布、敏捷、精益和 DevOps ·························································· 3
1.3 Docker、Kubernetes、PaaS、微服務、雲原生和 DevOps ······················· 6
1.4 ITOM、ITSM、SRE 和 DevOps ······················································10
第 2 章 企業級 DevOps 實踐框架 ····················································· 13
2.1 DevOps 實踐框架概述 ··································································13
2.2 DevOps 實踐步驟詳解 ··································································14
2.3 DevOps 實踐底座 ········································································16
第二部分? DevOps 之敏捷開發
第 3 章 敏捷開發基礎概念 ······························································ 21
3.1 敏捷開發起源·············································································21
3.1.1 敏捷思想的涌現 ···········································································21
3.1.2 敏捷宣言的誕生 ···········································································22
3.2 敏捷宣言解讀·············································································22
3.3 敏捷十二原則解讀·······································································25
3.4 敏捷開發常用方法論及框架···························································29
3.4.1 極限編程 ····················································································29
3.4.2 Scrum 框架 ··················································································30
3.4.3 特性驅動開發 ··············································································30
3.4.4 看板 ··························································································31
3.4.5 驗收測試驅動開發 ········································································31
3.5 敏捷方法與 DevOps 體系的關系 ·····················································32
3.5.1 敏捷管理與 DevOps ·······································································32
3.5.2 Scrum、XP 與 DevOps ···································································33
第 4 章 Scrum 框架 ······································································· 34
4.1 Scrum 框架三大支柱 ····································································34
4.2 Scrum 價值觀 ·············································································36
4.3 Scrum 框架中的角色 ····································································39
4.4 Scrum 框架中的工件 ····································································41
4.5 敏捷迭代與敏捷活動····································································43
4.6 Scrum 敏捷團隊 ··········································································45
4.6.1 團隊成員及職責 ···········································································46
4.6.2 團隊構建要求 ··············································································53
第 5 章 敏捷需求形式與場景應用 ····················································· 57
5.1 軟件需求···················································································57
5.1.1 軟件需求的形式 ···········································································57
5.1.2 軟件需求的管理 ···········································································59
5.2 用戶故事···················································································60
5.2.1 編寫原則 ····················································································61
5.2.2 故事點估算 ·················································································63
5.2.3 驗收標準 ····················································································64
第 6 章 敏捷需求應用案例 ······························································ 66
6.1 案例背景···················································································66
6.2 溝通過程···················································································67
6.3 案例分析···················································································67
第 7 章 敏捷項目管理 ···································································· 69
7.1 軟件項目特點·············································································69
7.1.1 不確定因素多 ··············································································69
7.1.2 研發過程監管難 ···········································································70
7.2 敏捷項目管理特點·······································································71
7.2.1 項目範圍可調整 ···········································································71
7.2.2 組建固定的跨職能團隊 ··································································71
7.2.3 給團隊適當授權 ···········································································72
7.2.4 迭代式研發 ·················································································73
7.2.5 小批量多批次的交付 ·····································································74
7.3 Scrum 框架下項目管理實踐 ··························································74
7.3.1 Scrum 框架內容與項目管理知識體系對應關系 ·····································74
7.3.2 Scrum 框架項目管理活動實踐 ··························································75
第三部分? DevOps 平臺及工具
第 8 章 DevOps 之項目管理 ···························································· 81
8.1 項目管理域概述··········································································81
8.2 項目管理域通用工具····································································81
8.3 項目管理域企業級解決方案···························································89
8.3.1 核心能力 ····················································································89
8.3.2 技術應用 ····················································································99
8.4 項目管理域場景應用·································································· 103
第 9 章 DevOps 之應用開發 ·························································· 105
9.1 應用開發域概述········································································ 105
9.2 應用開發域通用工具 ································································· 106
9.2.1 集成開發環境工具 ······································································ 106
9.2.2 代碼托管工具 ············································································ 107
9.2.3 編譯構建工具 ············································································ 108
9.2.4 流水線工具 ··············································································· 109
9.2.5 製品管理工具 ············································································ 110
9.3 應用開發域企業級解決方案························································· 112
9.3.1 核心能力 ·················································································· 113
9.3.2 技術應用 ·················································································· 129
9.4 應用開發域場景應用·································································· 131
9.4.1 開發環節 ·················································································· 132
9.4.2 測試環節 ·················································································· 133
9.4.3 預演環節 ·················································································· 134
9.4.4 生產交付環節 ············································································ 135
第 10 章 DevOps 之測試 ······························································ 137
10.1 測試域概述 ············································································ 137
10.1.1 測試原則 ················································································· 137
10.1.2 測試目標和對象 ········································································ 138
10.1.3 測試內容 ················································································· 138
10.2 測試域通用工具 ······································································ 138
10.2.1 接口測試 Postman ······································································ 139
10.2.2 UI(界面)測試 Selenium ···························································· 141
10.2.3 單元測試 JUnit ·········································································· 142
10.2.4 移動端測試 Appium ··································································· 144
10.2.5 性能測試 JMeter ······································································· 145
10.3 測試域企業級解決方案 ····························································· 146
10.3.1 核心能力 ················································································· 148
10.3.2 技術應用 ················································································· 176
10.4 測試域場景應用 ······································································ 177
第 11 章 DevOps 之運營運維 ························································ 179
11.1 運營運維域概述 ······································································ 179
11.1.1 資源管理 ················································································· 179
11.1.2 監控管理 ················································································· 180
11.1.3 變更管理 ················································································· 181
11.1.4 日誌管理 ················································································· 182
11.1.5 CMDB ···················································································· 183
11.1.6 故障管理 ················································································· 183
11.2 運營運維域通用工具 ································································ 184
11.2.1 資源管理 ················································································· 184
11.2.2 監控管理 ················································································· 186
11.2.3 變更管理 ················································································· 188
11.2.4 日誌管理 ················································································· 188
11.2.5 CMDB ···················································································· 189
11.2.6 故障管理 ················································································· 191
11.3 運營運維域企業級解決方案 ······················································· 192
11.3.1 核心能力 ················································································· 193
11.3.2 技術應用 ················································································· 205
11.4 運營運維域場景應用 ································································ 209
第四部分? DevOps 平臺行業落地實踐和未來展望
第 12 章 電信行業 DevOps 落地實踐 ·············································· 216
12.1 某運營商集團公司 DevOps 落地實踐 ············································ 216
12.1.1 背景介紹 ················································································· 216
12.1.2 落地方案 ················································································· 216
12.1.3 能力要求 ················································································· 217
12.1.4 對標梳理 ················································································· 217
12.1.5 亮點能力 ················································································· 219
12.1.6 實施策略 ················································································· 221
12.1.7 落地意義 ················································································· 221
12.2 某電信運營商省份公司 DevOps 落地實踐 ······································ 222
12.2.1 背景與挑戰 ·············································································· 222
12.2.2 問題分析與規劃 ········································································ 222
12.2.3 DevOps 落地步驟 ······································································ 223
12.2.4 總結 ······················································································· 224
第 13 章 金融行業 DevOps 落地實踐 ·············································· 226
13.1 某股份制商業銀行 DevOps 落地實踐 ············································ 226
13.1.1 工程實踐 ················································································· 226
13.1.2 敏捷實踐 ················································································· 237
13.2 某成熟金融科技公司 DevOps 落地實踐 ········································· 262
13.2.1 確定目標 ················································································· 262
13.2.2 選好姿勢 ················································································· 263
13.2.3 梳理全流程 ·············································································· 265
13.2.4 制定規範 ················································································· 266
13.2.5 分步實施 ················································································· 267
13.2.6 落地方案 ················································································· 267
13.3 某初創金融科技公司 DevOps 落地實踐 ········································· 270
13.3.1 項目背景 ················································································· 270
13.3.2 組織架構制定 ··········································································· 270
13.3.3 外圍系統關系梳理 ····································································· 271
13.3.4 項目現狀調研 ··········································································· 271
13.3.5 流程梳理優化 ··········································································· 275
13.3.6 總結和回顧 ·············································································· 276
第 14 章 能源行業 DevOps 落地實踐 ·············································· 277
14.1 項目背景 ··············································································· 277
14.2 傾聽客戶訴求 ········································································· 278
14.3 研發現狀分析 ········································································· 279
14.4 制訂實施計劃 ········································································· 282
14.5 推動敏捷落地 ········································································· 283
14.6 整體回顧與總結 ······································································ 287
14.6.1 敏捷方法帶動 DevOps 落地 ·························································· 287
14.6.2 敏捷改進逐步提升 ····································································· 288
14.6.3 敏捷教練的持久性問題 ······························································· 288
第 15 章 某 IT 科技公司 DevOps 落地實踐 ······································· 289
15.1 項目背景 ··············································································· 289
15.2 代碼統一管理 ········································································· 289
15.3 代碼歸檔備份 ········································································· 293
15.4 版本及發布管理 ······································································ 299
15.5 代碼安全管理 ········································································· 303
第 16 章 混沌工程實踐 ································································· 305
16.1 混沌工程建設目標 ··································································· 305
16.2 混沌工程原則及項目落地設計 ···················································· 305
16.2.1 建立穩定狀態的假設 ·································································· 306
16.2.2 多樣化現實世界事件 ·································································· 306
16.2.3 在生產環境運行實驗 ·································································· 307
16.2.4 持續自動化運行實驗 ·································································· 307
16.3 工程實踐遇到問題及方案 ·························································· 309
16.3.1 文化和觀念的改變 ····································································· 309
16.3.2 權限授權和第三方對接 ······························································· 310
16.3.3 各地差異化故障服務需求 ···························································· 310
16.4 工程故障演練簡單流程介紹 ······················································· 311
第 17 章 企業級 DevOps 文化建設實踐 ··········································· 312
17.1 文化建設,宣貫先行 ································································ 312
17.1.1 敏捷開發文章專欄 ····································································· 313
17.1.2 敏捷開發知識可視化 ·································································· 313
17.1.3 案例專題演講 ··········································································· 314
17.1.4 敏捷開發工作坊 ········································································ 314
17.2 敏捷教練人才培養是文化建設核心行動之一 ·································· 315
17.2.1 企業公開課 ·············································································· 315
17.2.2 敏捷訓練營 ·············································································· 316
17.2.3 敏捷人才進階實訓 ····································································· 318
17.2.4 黑帶大師競賽 ··········································································· 319
17.3 為更多的團隊進行敏捷開發能力評估和認證 ·································· 320
17.3.1 敏捷資質認證 ··········································································· 320
17.3.2 團隊敏捷成熟度評估 ·································································· 321
17.3.3 企業內訓敏捷認證 ····································································· 322
第 18 章 DevOps 未來展望 ··························································· 323
18.1 不再低調的 “低代碼” ···························································· 324
18.1.1 低代碼解決的問題 ····································································· 324
18.1.2 低代碼的通用功能架構 ······························································· 324
18.1.3 低代碼平臺的核心技術 ······························································· 325
18.2 雲原生中的原生 CI/CD ····························································· 328
18.3 “無處不在”的數字體驗監控 ···················································· 330
縮略語與術語解釋········································································· 332