注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術(shù)計算機/網(wǎng)絡(luò)軟件工程及軟件方法學持續(xù)交付2.0 業(yè)務(wù)引領(lǐng)的DevOps精要(增訂本)

持續(xù)交付2.0 業(yè)務(wù)引領(lǐng)的DevOps精要(增訂本)

持續(xù)交付2.0 業(yè)務(wù)引領(lǐng)的DevOps精要(增訂本)

定 價:¥99.90

作 者: 喬梁 著
出版社: 人民郵電出版社
叢編項:
標 簽: 暫缺

ISBN: 9787115577399 出版時間: 2022-02-01 包裝: 平裝
開本: 16開 頁數(shù): 338 字數(shù):  

內(nèi)容簡介

  本書“重新定義”了持續(xù)交付,增補了組織管理和架構(gòu)兩個維度,輔助以真實案例,對持續(xù)交付的諸多原則和實踐加以解讀,并對持續(xù)交付過程中的取舍原則加以論述。本書分為3個部分:第一部分作者根據(jù)自己近十年的工作及咨詢經(jīng)歷,通過不斷總結(jié)、提煉和反思,對原有的持續(xù)交付進行修正,重新定義持續(xù)交付為實現(xiàn)組織戰(zhàn)略目標的能力,并引入持續(xù)交付的能力模型;第二部分闡述組織打造持續(xù)交付能力模型所需遵循的原則,包括基礎(chǔ)原則、組織原則和架構(gòu)原則;第三部分通過對多個互聯(lián)網(wǎng)公司案例的解讀,闡述如何根據(jù)組織的當前狀況應(yīng)用相關(guān)原則對最佳實踐進行取舍,并快速達到組織能力目標。本書適合大型互聯(lián)網(wǎng)公司的技術(shù)VP、技術(shù)負責人,中小型互聯(lián)網(wǎng)公司的CTO、技術(shù)VP、研發(fā)/測試/運維負責人、主管及骨干,以及組織變革者閱讀。

作者簡介

  敏思特咨詢公司聯(lián)合創(chuàng)始人,騰訊外聘高級管理顧問,DevOps領(lǐng)域***導師之一,持續(xù)交付雙環(huán)理論創(chuàng)始人,指導過很多大型軟件公司解決組織轉(zhuǎn)型與研發(fā)管理方面的相關(guān)問題。國內(nèi)最早致力于通過敏捷開發(fā)與精益理論提升軟件價值交付效率的實踐者之一,精研各種軟件工程方法論,2010年翻譯《持續(xù)交付》一書,并結(jié)合8年實踐將工作心得整理成《持續(xù)交付2.0:業(yè)務(wù)引領(lǐng)的DevOps精要》。十多年來,受邀參加各種大型技術(shù)會議(如QCon、AgileChina、DevOpsDays、MSTC等)并發(fā)表演講。讀者可訪問本書配套網(wǎng)站www.continuousdelivery20.com,持續(xù)獲得作者的**分享,并參與互動和交流。

圖書目錄

目錄
第 1章 持續(xù)交付2.0\t1
1.1 軟件工程發(fā)展概述\t1
1.1.1 瀑布軟件開發(fā)方法\t1
1.1.2 敏捷軟件開發(fā)方法\t2
1.1.3 DevOps運動\t3
1.1.4 持續(xù)交付1.0\t4
1.2 持續(xù)交付2.0\t7
1.2.1 精益思想\t8
1.2.2 雙環(huán)模型\t9
1.2.3 4個核心原則\t11
1.2.4 持續(xù)交付七巧板\t12
1.3 小結(jié)\t13
第 2章 價值探索環(huán)\t14
2.1 探索環(huán)的意義\t14
2.2 探索環(huán)的4個關(guān)鍵環(huán)節(jié)\t15
2.2.1 提問\t16
2.2.2 錨定\t17
2.2.3 共創(chuàng)\t19
2.2.4 精煉\t22
2.3 工作原則\t24
2.3.1 分解并快速試錯\t24
2.3.2 一次只驗證一點\t25
2.3.3 允許失敗\t26
2.4 共創(chuàng)與精煉的常用方法\t27
2.4.1 裝飾窗方法\t27
2.4.2 最小可行特性法\t29
2.4.3 特區(qū)法\t30
2.4.4 定向探索法\t30
2.4.5 稻草人法\t31
2.4.6 最小可行產(chǎn)品法\t32
2.5 實施注意事項\t32
2.6 小結(jié)\t35
第3章 快速驗證環(huán)\t36
3.1 驗證環(huán)的目標\t36
3.2 驗證環(huán)的4個關(guān)鍵環(huán)節(jié)\t37
3.2.1 構(gòu)建\t37
3.2.2 運行\(zhòng)t38
3.2.3 監(jiān)測\t39
3.2.4 決策\t39
3.3 工作原則\t39
3.3.1 質(zhì)量內(nèi)建\t39
3.3.2 消除等待\t40
3.3.3 重復事務(wù)自動化\t43
3.3.4 監(jiān)測一切\(zhòng)t43
3.4 小結(jié)\t44
第4章 持續(xù)交付2.0的組織文化\t45
4.1 安全、信任與持續(xù)改善\t45
4.1.1 失敗是安全的\t45
4.1.2 相互信任\t45
4.1.3 持續(xù)改善\t46
4.2 文化塑造四步法\t46
4.2.1 行為決定文化\t46
4.2.2 谷歌的工程師質(zhì)量文化\t48
4.2.3 Etsy的持續(xù)試驗文化\t49
4.3 行動原則\t50
4.3.1 價值導向\t51
4.3.2 快速驗證\t51
4.3.3 持續(xù)學習\t51
4.4 度量原則\t55
4.4.1 度量指標的4類屬性\t56
4.4.2 度量的目標是改善\t57
4.4.3 古德哈特定律\t57
4.4.4 度量應(yīng)有行動決策\t58
4.5 “改善套路”進行持續(xù)改進\t58
4.6 小結(jié)\t59
第5章 持續(xù)交付的軟件系統(tǒng)架構(gòu)\t60
5.1 “大系統(tǒng)小做”原則\t61
5.1.1 持續(xù)交付架構(gòu)要求\t61
5.1.2 系統(tǒng)拆分原則\t61
5.2 常見架構(gòu)模式\t62
5.2.1 微核架構(gòu)\t62
5.2.2 微服務(wù)架構(gòu)\t63
5.2.3 巨石應(yīng)用\t64
5.3 架構(gòu)改造實施模式\t66
5.3.1 拆遷者模式\t67
5.3.2 絞殺者模式\t68
5.3.3 修繕者模式\t68
5.3.4 數(shù)據(jù)庫的拆分方法\t70
5.4 小結(jié)\t70
第6章 業(yè)務(wù)需求協(xié)作管理\t72
6.1 產(chǎn)品版本周期概述\t73
6.1.1 準備期\t73
6.1.2 交付期\t74
6.2 需求拆分的利與弊\t75
6.2.1 需求拆分的收益\t76
6.2.2 需求拆分的成本\t78
6.3 需求拆分方法\t79
6.3.1 需求的來源\t80
6.3.2 技術(shù)債也是需求\t80
6.3.3 參與需求拆分的角色\t81
6.3.4 不平等的INVEST原則\t82
6.3.5 五大拆分技法\t82
6.3.6 七大組成部分\t84
6.4 需求分析與管理工具集\t85
6.4.1 用戶故事地圖\t85
6.4.2 用戶故事樹\t86
6.4.3 依賴關(guān)系圖\t87
6.4.4 需求管理數(shù)字化平臺\t87
6.5 團隊協(xié)作管理工具\t87
6.5.1 團隊共享日歷\t88
6.5.2 團隊回顧\t89
6.5.3 可視化故事墻\t90
6.5.4 明確“完成”的定義\t90
6.5.5 持續(xù)集成\t91
6.5.6 故事驗證\t91
6.6 小結(jié)\t91
第7章 部署流水線原則與工具設(shè)計\t92
7.1 簡單的部署流水線\t92
7.1.1 簡單的產(chǎn)品研發(fā)流程\t92
7.1.2 初始部署流水線\t93
7.1.3 流水線執(zhí)行狀態(tài)解析\t95
7.2 部署流水線的設(shè)計與使用\t95
7.2.1 流水線的設(shè)計原則\t95
7.2.2 團隊的協(xié)作紀律\t97
7.3 部署流水線平臺的構(gòu)成\t97
7.3.1 工具鏈總體架構(gòu)\t97
7.3.2 平臺應(yīng)當具備的基本
能力\t99
7.3.3 工具鏈建設(shè)策略\t100
7.4 基礎(chǔ)支撐服務(wù)的云化\t100
7.4.1 基礎(chǔ)支撐服務(wù)的協(xié)作過程解析\t101
7.4.2 編譯構(gòu)建管理服務(wù)\t103
7.4.3 自動化測試管理服務(wù)\t104
7.4.4 軟件部署管理服務(wù)\t105
7.4.5 基礎(chǔ)環(huán)境管理服務(wù)\t106
7.5 企業(yè)制品庫的管理\t107
7.5.1 制品庫的分類\t107
7.5.2 制品庫的管理原則\t108
7.6 多種多樣的部署流水線\t108
7.6.1 多組件的部署流水線\t108
7.6.2 個人部署流水線\t109
7.6.3 部署流水線的不斷演進\t110
7.7 為開發(fā)者構(gòu)建自助式工具\t111
7.8 小結(jié)\t113
第8章 利于集成的分支策略\t114
8.1 版本控制系統(tǒng)的使用目的\t114
8.1.1 集中式版本控制系統(tǒng)\t114
8.1.2 分布式版本控制系統(tǒng)\t115
8.1.3 版本控制系統(tǒng)中的基本概念\t117
8.2 常見分支開發(fā)模式\t118
8.2.1 主干開發(fā),主干發(fā)布\t118
8.2.2 主干開發(fā),分支發(fā)布\t119
8.2.3 分支開發(fā),主干發(fā)布\t121
8.3 分支模式的演化\t126
8.3.1 “三駕馬車”分支模式\t126
8.3.2 Gitflow分支模式\t127
8.3.3 GitHubFlow分支模式\t128
8.4 分支策略的選擇\t128
8.4.1 版本發(fā)布模式\t128
8.4.2 分支策略與發(fā)布周期的關(guān)系\t132
8.5 小結(jié)\t133
第9章 持續(xù)集成\t134
9.1 起源與定義\t134
9.1.1 原始定義\t135
9.1.2 一次集成過程\t135
9.2 六步提交法\t136
9.2.1 4個關(guān)鍵點\t138
9.2.2 同步與異步模式\t139
9.2.3 自查表\t140
9.3 速度與質(zhì)量的權(quán)衡\t141
9.3.1 分級構(gòu)建\t141
9.3.2 多人同時提交的構(gòu)建\t142
9.3.3 云平臺的威力\t143
9.4 在團隊中實施持續(xù)集成實踐\t145
9.4.1 快速建立團隊的持續(xù)集成實踐\t145
9.4.2 分支策略與部署流水線\t148
9.5 常見的實施問題\t150
9.5.1 工程師的開發(fā)習慣\t151
9.5.2 視而不見的掃描問題\t151
9.5.3 自動化測試用例的缺乏\t151
9.6 小結(jié)\t152
第 10章 自動化測試策略與方法\t153
10.1 自動化測試的自身定位\t153
10.1.1 自動化測試的優(yōu)勢\t154
10.1.2 自動化測試所需的 投入\t155
10.2 突破傳統(tǒng)自動化測試的困境\t156
10.2.1 傳統(tǒng)自動化測試的特點\t157
10.2.2 自動化測試的分層\t157
10.2.3 不同類型的測試金字塔\t160
10.3 自動化測試的實施策略\t163
10.3.1 增加自動化測試用例的著手點\t163
10.3.2 提高自動化測試的執(zhí)行次數(shù)\t164
10.3.3 良好自動化測試的特征\t165
10.3.4 共享自動化測試的維護職責\t166
10.3.5 代碼測試覆蓋率\t167
10.4 用戶驗收自動化測試要點\t168
10.4.1 先搭建分層框架\t168
10.4.2 測試用例數(shù)應(yīng)保持低位\t171
10.4.3 為自動化測試用例預(yù)留API\t171
10.4.4 為調(diào)試做好準備\t171
10.4.5 測試數(shù)據(jù)的準備\t171
10.5 其他質(zhì)量檢查方法\t173
10.5.1 差異批準測試方法\t173
10.5.2 代碼規(guī)范檢查與代碼動靜態(tài)檢測\t174
10.5.3 AI在測試領(lǐng)域的應(yīng)用\t174
10.6 小結(jié)\t175
第 11章 軟件配置管理\t176
11.1 將一切納入軟件配置管理\t176
11.1.1 軟件配置管理的目標\t176
11.1.2 軟件配置管理的范圍\t177
11.1.3 軟件配置管理的原則\t177
11.2 軟件包的版本管理\t181
11.2.1 包管理的反模式\t181
11.2.2 集中式包管理服務(wù)\t182
11.2.3 軟件包的元信息\t183
11.3 包依賴管理\t185
11.3.1 顯式聲明依賴\t185
11.3.2 自動管理依賴\t187
11.3.3 減少復雜依賴\t188
11.4 環(huán)境基礎(chǔ)設(shè)施管理\t191
11.4.1 環(huán)境準備的4種狀態(tài)\t191
11.4.2 領(lǐng)域?qū)僬Z言的應(yīng)用\t197
11.4.3 環(huán)境基礎(chǔ)設(shè)施即代碼\t198
11.5 軟件配置項的管理\t199
11.5.1 二進制與配置項的分離\t199
11.5.2 配置信息的版本管理\t200
11.5.3 配置項的存儲組織方式\t201
11.5.4 配置漂移與治理\t202
11.6 不可變基礎(chǔ)設(shè)施與云應(yīng)用\t203
11.6.1 實現(xiàn)不可變基礎(chǔ)設(shè)施\t203
11.6.2 云原生應(yīng)用\t206
11.6.3 優(yōu)勢與挑戰(zhàn)\t206
11.7 數(shù)據(jù)的版本管理\t208
11.7.1 數(shù)據(jù)庫結(jié)構(gòu)變更\t208
11.7.2 數(shù)據(jù)文件\t208
11.8 需求與源代碼的版本關(guān)聯(lián)\t209
11.9 小結(jié)\t209
第 12章 低風險發(fā)布\t211
12.1 高頻發(fā)布是一種趨勢\t211
12.1.1 互聯(lián)網(wǎng)企業(yè)的高頻發(fā)布\t212
12.1.2 收益與成本共存\t214
12.2 降低發(fā)布風險的方法\t215
12.2.1 藍綠部署\t215
12.2.2 滾動部署\t216
12.2.3 金絲雀發(fā)布與灰度發(fā)布\t217
12.2.4 暗部署\t218
12.3 高頻發(fā)布支撐技術(shù)\t219
12.3.1 功能開關(guān)技術(shù)\t220
12.3.2 數(shù)據(jù)遷移技術(shù)\t222
12.3.3 抽象分支方法\t225
12.3.4 升級替代回滾\t226
12.4 影響發(fā)布頻率的因素\t227
12.5 小結(jié)\t228
第 13章 監(jiān)測與決策\t229
13.1 生產(chǎn)監(jiān)測范圍\t230
13.1.1 后臺服務(wù)的監(jiān)測\t230
13.1.2 分發(fā)軟件的監(jiān)測\t230
13.2 數(shù)據(jù)監(jiān)測體系\t231
13.2.1 收集與處理\t231
13.2.2 數(shù)據(jù)的標準化\t232
13.2.3 監(jiān)測數(shù)據(jù)體系及其能力衡量\t233
13.3 問題處理體系\t235
13.3.1 告警海洋與智能化管理\t235
13.3.2 問題處理是一個學習過程\t236
13.4 生產(chǎn)環(huán)境測試\t237
13.4.1 測試活動扁平化趨勢\t237
13.4.2 生產(chǎn)環(huán)境中的測試\t239
13.4.3 混沌工程\t239
13.5 向東,還是向西\t240
13.6 小結(jié)\t241
第 14章 大型互聯(lián)網(wǎng)團隊的FT化\t242
14.1 簡介\t242
14.1.1 改進前狀態(tài)\t243
14.1.2 改進后狀態(tài)\t245
14.2 改進方法論\t245
14.2.1 指導思想\t245
14.2.2 改進步驟\t245
14.3 改進的歷程\t246
14.3.1 架構(gòu)解耦\t246
14.3.2 組織解耦\t248
14.3.3 研發(fā)流程再造\t250
14.3.4 自動化一切\(zhòng)t259
14.4 小結(jié)\t260
第 15章 小團隊逆襲之旅\t262
15.1 背景簡介\t262
15.1.1 改進前的“死亡行軍”之旅\t264
15.1.2 改進后的無缺陷交付\t264
15.2 改進方法論\t265
15.2.1 指導思想\t265
15.2.2 試點團隊的選擇\t265
15.3 第 一階段:研發(fā)準備期\t266
15.3.1 功能簡介與需求拆分\t266
15.3.2 架構(gòu)設(shè)計與需求依賴識別\t267
15.3.3 工作量估算與排期\t268
15.4 第二階段:軟件交付期\t270
15.4.1 通過可視化看板改進工作流程\t270
15.4.2 無缺陷交付\t277
15.4.3 主干開發(fā)與持續(xù)集成\t278
15.4.4 測試活動左移\t279
15.4.5 代碼評審\t279
15.4.6 關(guān)注結(jié)果,更要關(guān)注
過程\t280
15.5 小結(jié)\t281
第 16章 研發(fā)推動的DevOps\t283
16.1 改進的關(guān)鍵點\t285
16.1.1 改進方法論\t285
16.1.2 定義改進目標\t285
16.2 第 一階段:敏捷101\t287
16.2.1 做個靠譜的計劃\t287
16.2.2 開發(fā)階段啟航\t291
16.2.3 對過程質(zhì)量的約束\t294
16.2.4 階段性改進點\t301
16.3 第二階段:DevOps轉(zhuǎn)型\t302
16.3.1 與運維人員的“沖突”\t303
16.3.2 高頻部署發(fā)布中的具體障礙\t304
16.3.3 整體解決方案的設(shè)計\t304
16.3.4 DevOps階段的團隊改變\t308
16.4 小結(jié)\t308
第 17章 研發(fā)組織效能提升的必經(jīng)之路\t310
17.1 知識工作者與熵增定律\t310
17.1.1 每個工程師生產(chǎn)的都是非標品\t310
17.1.2 軟件工程的復雜性令研發(fā)效率降低\t311
17.2 一致性是效能提升的必經(jīng)之路\t313
17.3 組織能力三要素\t314
17.4 勝任力評估\t315
17.4.1 組織勝任力評估模型\t316
17.4.2 個人勝任力培養(yǎng)體系\t318
17.5 組織健康度\t319
17.6 小結(jié)\t320
附錄A 軟件工程的三次進化\t321
A.1 軟件工程的誕生\t322
A.1.1 軟件危機\t322
A.1.2 瀑布軟件開發(fā)模型\t322
A.2 二次進化:敏捷開發(fā)\t324
A.2.1 前奏——螺旋模型\t324
A.2.2 敏捷宣言的誕生\t324
A.2.3 敏捷軟件開發(fā)方法的演化\t328
A.2.4 敏捷軟件開發(fā)方法小結(jié)\t329
A.2.5 TPS啟發(fā)下的軟件開發(fā)方法\t330
A.3 三次進化:DevOps\t331
A.3.1 DevOps運動的興起\t331
A.3.2 持續(xù)交付的誕生\t332
A.4 小結(jié)\t333
附錄B 排序法做相對估算\t334
B.1 排序法相對估算\t334
B.2 相對排序法的操作過程\t335
B.3 小結(jié)\t338

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.afriseller.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號