-
>
全國計算機等級考試最新真考題庫模擬考場及詳解·二級MSOffice高級應用
-
>
決戰行測5000題(言語理解與表達)
-
>
軟件性能測試.分析與調優實踐之路
-
>
第一行代碼Android
-
>
JAVA持續交付
-
>
EXCEL最強教科書(完全版)(全彩印刷)
-
>
深度學習
高質效交付:軟件集成、測試與 發布精進之道 版權信息
- ISBN:9787121489198
- 條形碼:9787121489198 ; 978-7-121-48919-8
- 裝幀:平裝-膠訂
- 冊數:暫無
- 重量:暫無
- 所屬分類:>>
高質效交付:軟件集成、測試與 發布精進之道 內容簡介
這是一本介紹軟件交付過程的“科普小冊子”。軟件交付過程是指修改了一行源代碼之后的一系列工作,直到包含這個改動的軟件新版本發布上線。這需要多久?可能需要幾秒,也可能需要數個星期甚至更長的時間。本書介紹在保證一定發布質量的前提下,如何加速這個過程,讓它盡量快一點兒,同時讓我們投入的精力盡量少一點兒。也就是說,本書介紹如何讓軟件交付變得更高效。軟件工程、敏捷、精益、持續集成、持續交付、DevOps、云原生、研發效能、平臺工程等,都對這個話題有所貢獻。本書并不囿于上述某個特定的“門派”,而是介紹它們的關鍵要點,介紹如何綜合運用它們,并且根據實踐有所發展。
高質效交付:軟件集成、測試與 發布精進之道 目錄
第1章 軟件交付過程的范圍 2
1.1 修改了源代碼之后 2
1.2 直到改動發布上線 3
1.3 在軟件開發全過程中的位置 4
1.4 為什么要這么劃分軟件交付過程 5
第2章 軟件交付過程的內容 6
2.1 程序改動的累積和匯聚 6
2.2 程序形態的轉化 8
2.3 程序質量的提升 10
第3章 軟件交付過程的追求目標 13
3.1 整體目標:為了業務的成功 13
3.2 確定需求:有效率地找到有效需求 14
3.3 從確定需求到實現需求:小步快跑 15
3.4 實現需求:效率與質量 16
3.4.1 體現效率:需求吞吐量 16
3.4.2 體現效率:需求響應時長 17
3.4.3 質量不是越高越好 19
3.4.4 體現質量:問題出現量 19
3.4.5 體現質量:問題修復時長 20
3.4.6 要兼顧短期和長期 20
3.4.7 四個象限簡介 21
3.5 軟件交付過程在四個象限的優化 21
3.5.1 提高需求吞吐量 22
3.5.2 縮短需求響應時長 22
3.5.3 減少問題出現量 23
3.5.4 縮短問題修復時長 24
3.6 DORA的DevOps核心指標 25
第2部分 軟件交付總體過程
第4章 持續集成 28
4.1 什么是持續集成 28
4.1.1 什么是持續 28
4.1.2 什么是集成 29
4.2 為什么要持續集成 30
4.2.1 小批量,減少等待 30
4.2.2 問題早發現、早修復,代價小 31
4.2.3 頻繁同步以減少沖突 31
4.3 流水線 33
4.3.1 流水線的誕生 33
4.3.2 流水線包含哪些活動 33
4.3.3 流水線的功能 35
第5章 逐特性集成 37
5.1 什么是特性 37
5.2 什么是逐特性集成 38
5.3 仍符合持續集成的理念 39
5.4 隔離未完成特性的其他方法 40
5.5 何時不必考慮隔離未完成的特性 41
5.6 當特性做不到既小又獨立時 42
第6章 在集成之前 44
6.1 第四階段:特性改動提交 44
6.1.1 合并請求基礎款:代碼評審 44
6.1.2 合并請求增強款:代碼評審 流水線 45
6.1.3 在創建合并請求之前 47
6.2 第三階段:特性改動累積 48
6.3 第二階段:代碼改動提交 49
6.3.1 代碼改動通過關卡才出現在目標分支 49
6.3.2 在提交時本地自動進行質量把關 50
6.3.3 在提交代碼改動之前 51
6.4 **階段:代碼改動累積 52
6.4.1 隨時進行的質量保證工作 52
6.4.2 實時進行的質量保證工作 53
6.4.3 IDE 54
第7章 持續交付 55
7.1 什么是持續交付 55
7.1.1 持續交付是持續集成的延伸 56
7.1.2 持續是適度頻繁 56
7.2 為什么要持續交付 58
7.3 版本晉級機制 59
7.4 部署流水線 61
7.5 邁向持續部署 63
7.5.1 適當的發布頻率 63
7.5.2 如何提高發布頻率 64
7.5.3 持續部署 65
第8章 特性間進一步解耦 67
8.1 混合自測 67
8.2 特性摘除 68
8.3 混合測試 70
8.4 逐特性交付 73
8.5 特性間解耦方法小結 74
第9章 運用精益思想 76
9.1 限制在制品的數量 76
9.2 優化發布審批 78
9.2.1 什么是發布審批 78
9.2.2 精簡發布審批流程 78
9.2.3 發布審批的工具支持 79
9.3 消除發布時間窗口限制 80
第10章 突破Scrum的若干約束 82
10.1 發布版本間的交疊 82
10.2 在一次迭代中多次發布 84
10.3 迭代規劃內容不必都做完 85
10.4 特事特辦 86
第11章 多項內容協同交付 87
11.1 本書中的微服務是代稱 87
11.2 提交完整的特性 88
11.3 采用相同的節奏 89
11.4 特性間完全解耦 90
11.5 按特定的順序發布 90
第12章 靜態庫的交付 92
12.1 什么是靜態庫 92
12.2 作為公共基礎庫 92
12.3 作為整體應用的組成部分 93
12.4 作為服務接口定義 94
第13章 并行的多個版本序列 96
13.1 版本序列之間的交疊 96
13.2 變體 97
第14章 盡快修復問題 99
14.1 盡快修復流水線的問題 99
14.1.1 為什么要盡快修復 99
14.1.2 自動通知合適的人 100
14.1.3 足夠高的優先級 101
14.1.4 足夠多的相關信息 101
14.2 盡快修復測試發現的缺陷 102
14.3 盡快解決發布帶來的問題 102
14.3.1 系統的可觀測性 103
14.3.2 發布回滾 103
14.3.3 緊急發布 104
14.3.4 當緊急程度更低一些時 105
第3部分 程序改動的累積和匯聚
第15章 版本控制 108
15.1 什么是版本控制 108
15.2 實現版本控制的方法和工具 108
15.3 版本命名 109
15.3.1 傳統的版本命名方式 110
15.3.2 SaaS軟件的版本命名 110
15.3.3 考慮版本控制工具的能力 111
15.3.4 考慮制品管理的方法 112
15.4 分支 112
15.4.1 “現代派”分支 113
15.4.2 制品的分支 113
第16章 使用版本控制工具 114
16.1 版本控制工具簡介 114
16.2 代碼庫內的層次結構 115
16.3 代碼庫間的層次結構 115
16.4 不應放入代碼庫的內容 116
16.4.1 小心二進制文件 116
16.4.2 代碼庫二進制文件存儲方案 117
16.4.3 不應納入版本控制的內容 117
16.5 代碼改動與工作項間的關聯 118
16.5.1 將代碼改動提交記錄關聯到工作項 118
16.5.2 將特性的代碼改動提交記錄關聯到工作項 119
16.6 版本與工作項間的關聯 120
16.6.1 送測特性列表 120
16.6.2 發布特性列表與發布說明 121
16.7 代碼庫的體積 121
第17章 分支策略 123
17.1 分支的四個層級 123
17.2 生產級分支 124
17.3 集成級分支 125
17.3.1 支持交疊:長集成分支 短發布分支 126
17.3.2 支持交疊:長集成分支 長發布分支 127
17.3.3 支持交疊:短集成發布分支 127
17.3.4 支持混合自測與測試:長環境分支 129
17.3.5 支持混合自測與測試:短環境分支 130
17.3.6 支持特性單獨測試和發布 131
17.4 特性級分支 132
17.4.1 特性分支從哪里創建、從哪里同步 132
17.4.2 合入集成級分支時處理沖突的方法 133
17.4.3 在已提交的特性上繼續改動 134
17.4.4 如何摘除特性 135
17.4.5 何時刪除特性分支 136
17.5 版本序列級分支 136
17.5.1 支持多個版本序列間的交疊 137
17.5.2 支持多個變體 138
17.6 典型分支策略分析 139
17.6.1 Git Flow 140
17.6.2 GitHub Flow 141
17.6.3 GitLab Flow 141
17.6.4 Aone Flow 143
第18章 使用制品管理工具 144
18.1 制品、制品庫與制品管理工具 144
18.2 “正式”制品必須來自流水線上的構建 145
18.3 制品庫間的層次結構 145
18.4 制品庫內的層次結構 146
18.5 記錄制品的屬性信息 147
18.6 避免重復存儲 147
18.7 制品的尺寸 148
18.8 加速制品存取的方法 149
18.9 制品清理策略 149
第4部分 程序形態的轉化
第19章 構建 152
19.1 什么是構建 152
19.2 構建的可重復性 153
19.2.1 構建的原材料不變 153
19.2.2 構建的工具和方法不變 154
19.3 加速構建 154
19.3.1 基本方法 155
19.3.2 探索:從程序形態轉化全過程的視角優化 156
19.3.3 探索:一些高端方法 157
19.4 源代碼、構建、制品之間的關聯關系 158
第20章 構建環境 160
20.1 什么是構建環境 160
20.2 構建環境標準化 160
20.3 構建環境資源池化 161
20.3.1 構建環境資源池化的價值 161
20.3.2 保障構建所需緩存 162
第21章 部署 164
21.1 自動化部署 164
21.2 部署策略 165
21.2.1 生產環境的部署策略 165
21.2.2 測試環境的部署策略 167
21.2.3 客戶端的部署策略 167
21.3 判斷部署成功完成的方法 168
21.4 發布與部署分離 168
21.5 快速回滾 169
21.6 制品、部署、環境之間的關聯關系 170
第22章 運行環境 171
22.1 什么是運行環境 171
22.2 運行環境管理的內容 172
22.3 管理本地運行環境 172
22.3.1 聲明式 173
22.3.2 只換不修 173
22.4 讓微服務在整體運行環境中運行 174
22.4.1 資源的申請與實現 174
22.4.2 基礎設施即代碼與GitOps 174
22.4.3 封裝以降低認知負荷 175
22.5 管理整套環境 175
22.5.1 何時需要再搭建一套環境 175
22.5.2 整套環境的自動生成與分配 176
22.5.3 實現在整體系統中自測 177
22.5.4 探索:虛擬獨占方式 178
22.5.5 測試環境和生產環境的一致性 179
22.5.6 數據隔離 180
第23章 SQL變更 181
23.1 什么是SQL變更 181
23.2 自動執行SQL變更 182
23.3 確保SQL變更質量 182
23.4 程序與數據存儲結構的版本匹配 183
23.5 管理SQL變更的特別之處 183
23.5.1 管理SQL變更的挑戰 184
23.5.2 應對挑戰的常見方法 184
23.5.3 探索:聲明式 185
第24章 應用配置參數 187
24.1 什么是應用配置參數 187
24.2 應用配置參數的管理 188
24.3 如何設置應用配置參數 188
24.3.1 設置應用配置參數的方式 189
24.3.2 自動執行 189
24.3.3 設置方式的選擇 190
24.3.4 探索:鍵值分離 191
24.3.5 探索:減少人工設置內容 193
24.4 質量和安全 193
24.4.1 確保變更質量 193
24.4.2 程序與應用配置參數的版本匹配 194
24.4.3 敏感信息管理 195
第5部分 程序質量的提升
第25章 靜態測試 198
25.1 代碼掃描 198
25.1.1 什么情況下要做代碼掃描 198
25.1.2 什么時候做代碼掃描 199
25.1.3 必
高質效交付:軟件集成、測試與 發布精進之道 作者簡介
董越,獨立DevOps咨詢師、《軟件交付通識》等書作者、《DevOps實踐指南》(第2版)等書譯者。曾任阿里巴巴集團研發效能事業部架構師、高級產品專家等職,從事Aone/云效DevOps產品設計、阿里云專有云集成與發布解決方案設計等工作。在加入阿里巴巴之前,還曾就職于西門子、摩托羅拉、雅虎、索尼、去哪兒網等大型企業,一直從事軟件配置管理、持續集成/持續交付、DevOps、軟件研發交付效能相關的工作。當前主要從事企業級DevOps體系建設的咨詢和培訓工作,幫助華為、中國工商銀行、交通銀行、招商銀行、中信銀行、中國移動、中國聯通、中國電信、華泰證券、泰康人壽等眾多企業提升軟件研發交付效能。牛曉玲,中國信息通信研究院云計算與大數據研究所審計與治理部副主任,DevOps標準工作組組長,DevOps國際標準編輯人。長期從事開發運維方面的研究工作,包括云服務的運維管理系統審查等相關工作。參與編制《云計算服務協議參考框架》、《對象存儲》、《云數據庫》、《研發運營一體化(DevOps)能力成熟度模型》系列標準和《云計算運維智能化通用評估方法》等標準20余項。參與多本白皮書、多份調查報告等的編寫工作,包括《企業IT運維發展白皮書》、《中國DevOps現狀調查報告(2019)》、《中國DevOps現狀調查報告(2020)》和《中國DevOps現狀調查報告(2021)》等。參與DevOps能力成熟度評估超過50個項目,具有豐富的標準編制及評估測試經驗。茹炳晟,騰訊Tech Lead,騰訊研究院特約研究員,中國計算機學會(CCF)TF研發效能SIG主席,《軟件研發效能度量規范》標準核心編寫專家,中國商業聯合會互聯網應用技術委員會智庫專家,中國通信標準化協會TC608云計算標準和開源推進委員會云上軟件工程工作組副組長,多本技術暢銷書作者。著作有《測試工程師全棧技術進階與實踐》、《現代軟件測試技術之美》、《軟件研發效能提升之美》、《軟件研發效能提升實踐》、《軟件研發效能權威指南》和《多模態大模型:技術原理與實戰》等,譯作有《持續架構實踐》、《DevOps實踐指南》(第2版)、《精益DevOps》、和《現代軟件工程》等。QCon、SECon、QECon、Archsummit等技術峰會的聯席主席、出品人和Keynote演講嘉賓。微信公眾號“茹炳晟聊軟件研發”主理人。施景豐,北京華佑科技有限公司技術合伙人,高效運維社區首席咨詢師,復旦大學軟件學院本科生客座導師,2023服貿會“企業數字化轉型論壇”卓越專家,GOPS大會金牌講師,CI/CD Meetup Online 明星講師,Certified DevOps Enterprise Coach。曾先后就職于用友軟件、中體彩、魅族、美云智數等知名企業并擔任技術總監、工程效率專家,主導工程效率體系與平臺建設。專注于數字化轉型/工程效率/DevOps領域,幫助企業全面提升軟件研發效能和數字化能力。石雪峰,京東零售研發效能專家,主導企業級研發效能體系和研發數字化體系建設,開放原子開源基金會TOC成員,知識星球“研發效能”主理人,極客時間專欄《DevOps實戰筆記》主筆,《軟件研發效能權威指南》、《Jenkins 2權威指南》和《高效能團隊模式》等書的譯著者。王曉翔,獨立DevOps咨詢師,《DevOps實踐指南》(第2版)譯者。去哪兒網工程效率部前高級總監,曾任奇安信內聘顧問,GOPS深圳大會金牌講師,2019運維行業年度優秀技術專家,《研發運營一體化(DevOps)能力成熟度模型》系列標準咨詢師。在軟件配置管理、過程管理和工程效率方面有十幾年的工作經驗。曾在中國海關數據中心、索尼移動通信產品(中國)有限公司等多家公司工作。在去哪兒網任職期間,逐步構建起持續集成、持續交付流水線,形成以應用為中心的全生命周期管理體系,并且通過平臺化不斷為研發團隊賦能,構建去哪兒網企業內部的DevOps生態圈,同時帶領團隊完成了從傳統配置管理到工程效率團隊的轉型。董越,獨立DevOps咨詢師、《軟件交付通識》等書作者、《DevOps實踐指南》(第2版)等書譯者。曾任阿里巴巴集團研發效能事業部架構師、高級產品專家等職,從事Aone/云效DevOps產品設計、阿里云專有云集成與發布解決方案設計等工作。在加入阿里巴巴之前,還曾就職于西門子、摩托羅拉、雅虎、索尼、去哪兒網等大型企業,一直從事軟件配置管理、持續集成/持續交付、DevOps、軟件研發交付效能相關的工作。當前主要從事企業級DevOps體系建設的咨詢和培訓工作,幫助華為、中國工商銀行、交通銀行、招商銀行、中信銀行、中國移動、中國聯通、中國電信、華泰證券、泰康人壽等眾多企業提升軟件研發交付效能。牛曉玲,中國信息通信研究院云計算與大數據研究所審計與治理部副主任,DevOps標準工作組組長,DevOps國際標準編輯人。長期從事開發運維方面的研究工作,包括云服務的運維管理系統審查等相關工作。參與編制《云計算服務協議參考框架》、《對象存儲》、《云數據庫》、《研發運營一體化(DevOps)能力成熟度模型》系列標準和《云計算運維智能化通用評估方法》等標準20余項。參與多本白皮書、多份調查報告等的編寫工作,包括《企業IT運維發展白皮書》、《中國DevOps現狀調查報告(2019)》、《中國DevOps現狀調查報告(2020)》和《中國DevOps現狀調查報告(2021)》等。參與DevOps能力成熟度評估超過50個項目,具有豐富的標準編制及評估測試經驗。茹炳晟,騰訊Tech Lead,騰訊研究院特約研究員,中國計算機學會(CCF)TF研發效能SIG主席,《軟件研發效能度量規范》標準核心編寫專家,中國商業聯合會互聯網應用技術委員會智庫專家,中國通信標準化協會TC608云計算標準和開源推進委員會云上軟件工程工作組副組長,多本技術暢銷書作者。著作有《測試工程師全棧技術進階與實踐》、《現代軟件測試技術之美》、《軟件研發效能提升之美》、《軟件研發效能提升實踐》、《軟件研發效能權威指南》和《多模態大模型:技術原理與實戰》等,譯作有《持續架構實踐》、《DevOps實踐指南》(第2版)、《精益DevOps》、和《現代軟件工程》等。QCon、SECon、QECon、Archsummit等技術峰會的聯席主席、出品人和Keynote演講嘉賓。微信公眾號“茹炳晟聊軟件研發”主理人。施景豐,北京華佑科技有限公司技術合伙人,高效運維社區首席咨詢師,復旦大學軟件學院本科生客座導師,2023服貿會“企業數字化轉型論壇”卓越專家,GOPS大會金牌講師,CI/CD Meetup Online 明星講師,Certified DevOps Enterprise Coach。曾先后就職于用友軟件、中體彩、魅族、美云智數等知名企業并擔任技術總監、工程效率專家,主導工程效率體系與平臺建設。專注于數字化轉型/工程效率/DevOps領域,幫助企業全面提升軟件研發效能和數字化能力。石雪峰,京東零售研發效能專家,主導企業級研發效能體系和研發數字化體系建設,開放原子開源基金會TOC成員,知識星球“研發效能”主理人,極客時間專欄《DevOps實戰筆記》主筆,《軟件研發效能權威指南》、《Jenkins 2權威指南》和《高效能團隊模式》等書的譯著者。王曉翔,獨立DevOps咨詢師,《DevOps實踐指南》(第2版)譯者。去哪兒網工程效率部前高級總監,曾任奇安信內聘顧問,GOPS深圳大會金牌講師,2019運維行業年度優秀技術專家,《研發運營一體化(DevOps)能力成熟度模型》系列標準咨詢師。在軟件配置管理、過程管理和工程效率方面有十幾年的工作經驗。曾在中國海關數據中心、索尼移動通信產品(中國)有限公司等多家公司工作。在去哪兒網任職期間,逐步構建起持續集成、持續交付流水線,形成以應用為中心的全生命周期管理體系,并且通過平臺化不斷為研發團隊賦能,構建去哪兒網企業內部的DevOps生態圈,同時帶領團隊完成了從傳統配置管理到工程效率團隊的轉型。
- >
伯納黛特,你要去哪(2021新版)
- >
有舍有得是人生
- >
自卑與超越
- >
經典常談
- >
隨園食單
- >
唐代進士錄
- >
龍榆生:詞曲概論/大家小書
- >
月亮與六便士