軟件質量保證與測試

王華 孫奕鳴

  • 出版商: 人民郵電
  • 出版日期: 2025-07-01
  • 售價: $419
  • 語言: 簡體中文
  • 頁數: 282
  • ISBN: 7115674256
  • ISBN-13: 9787115674258
  • 相關分類: 軟體測試
  • 下單後立即進貨 (約4週~6週)

  • 軟件質量保證與測試-preview-1
  • 軟件質量保證與測試-preview-2
軟件質量保證與測試-preview-1

相關主題

商品描述

  本書以SmartArchive項目為例,講解軟件質量保證與測試的關鍵概念、方法和技術,並通過演示實際項目的實施過程,深入探討如何應用這些概念、方法和技術來確保軟件質量。本書共9章,涵蓋了軟件質量保證概述、軟件質量管理體系、軟件度量、軟件配置管理、軟件風險管理、軟件評審、軟件測試技術、軟件測試過程和軟件測試管理等核心內容。本書框架布局清晰,理論和實踐緊密結合,並配套案例和習題,使讀者能夠在實踐中鞏固和應用所學知識。

  本書可作為高等學校軟件工程、計算機科學與技術等專業相關課程的教材,也可供從事軟件開發和測試工作的技術人員參考使用。

作者簡介

王華,男,1978年11月生,博士,副教授。歷任軟件公司程序員、項目經理和技術總監。主持浙江省教育廳科研項目1項。曾作為主要成員參與了國家863項目1項、霍英東教育基金1項、浙江省科技廳重大專項1項、浙江省科技廳一般項目1項、浙江省自然科學基金1項、浙江省公益技術研究計劃項目1項。與杭州富通、信雅達等企業開展產學研項目10余項,在項目運營上具有獨到見解,能將多年的項目運作經驗有機融合後,來配合項目不同時期的研發與管理。主講《軟件體系結構》、《軟件質量保證》、《軟件工程概論》、《計算機網絡》、《Java程序設計》、《信息技術服務管理》、《電子商務概論》、《Python與深度學習入門》等課程。指導學生獲得國家服務外包創新應用大賽國家二等獎。在《浙江大學學報》等國內外主流期刊,以第一作者發表論文20余篇,國外期刊上發表論文10余篇,其中EI期刊多篇。

目錄大綱

第 1章 軟件質量保證概述 1

1.1 軟件與軟件工程 1

1.1.1 軟件的特征 2

1.1.2 軟件工程 3

1.1.3 軟件過程 3

1.1.4 PSP和TSP 4

1.2 軟件質量保證 6

1.2.1 軟件質量 6

1.2.2 軟件質量保證人員的職責 7

1.2.3 軟件質量人人負責 8

1.2.4 軟件質量保證不存在“銀彈” 8

1.3 軟件測試 9

1.3.1 軟件缺陷 9

1.3.2 對軟件測試的誤解 10

1.3.3 軟件缺陷值得修復的原因 10

1.3.4 軟件測試方法分類 11

1.4 軟件質量保證人才 11

1.5 SmartArchive項目的軟件質量保證 13

1.5.1 軟件過程框架 14

1.5.2 組織標準軟件過程全貌 15

1.5.3 角色與職責 17

1.5.4 使用工具 19

1.6 小結 19

1.7 習題 20

第 2章 軟件質量管理體系 22

2.1 軟件質量管理的內容、標準和框架 23

2.1.1 軟件質量管理的定義 23

2.1.2 軟件質量管理體系標準 24

2.1.3 軟件質量管理框架 25

2.2 軟件質量保證方法 26

2.2.1 軟件質量保證過程和控制點 26

2.2.2 軟件質量保證技術和工具 27

2.3 軟件質量計劃和策略 28

2.3.1 軟件質量計劃 28

2.3.2 軟件質量策略 29

2.4 CMMI 29

2.4.1 CMMI概述 30

2.4.2 CMMI的成熟度級別 30

2.4.3 CMMI的過程域 31

2.4.4 一個公司聚餐的例子 33

2.4.5 A公司的CMMI改進實例 35

2.4.6 CMMI 5級在項目中的精簡應用 38

2.5 軟件質量保證相關過程域 43

2.5.1 項目立項 43

2.5.2 項目計劃 45

2.5.3 需求管理 46

2.5.4 計劃跟蹤 48

2.5.5 風險管理 49

2.5.6 項目評審 50

2.5.7 配置管理 52

2.5.8 質量保證 53

2.5.9 度量和分析 54

2.5.10 交付及維護 55

2.6 SmartArchive項目的軟件質量管理體系 57

2.6.1 SmartArchive項目的質量保證過程 57

2.6.2 制訂和維護軟件質量保證計劃 60

2.6.3 執行SQA活動 60

2.6.4 管理SQA活動 63

2.7 小結 64

2.8 習題 65

第3章 軟件度量  68

3.1 軟件度量概述 68

3.1.1 軟件度量的定義 69

3.1.2 軟件度量在軟件開發中的作用 69

3.2 軟件度量的類型 70

3.2.1 產品度量 70

3.2.2 過程度量 71

3.3 軟件度量與分析規程 71

3.3.1 確定度量目標 72

3.3.2 分解度量數據 72

3.3.3 確定度量計劃 74

3.3.4 實施度量計劃—度量數據的收集 74

3.3.5 分析和通報度量結果 75

3.3.6 度量在支持過程域中的活動 80

3.4 軟件代碼質量指標 81

3.4.1 代碼覆蓋率 83

3.4.2 抽象解釋 83

3.4.3 圈復雜度 84

3.4.4 編譯器警告 84

3.4.5 編碼標準 85

3.4.6 重復代碼 85

3.4.7 扇出 86

3.4.8 安全性 86

3.5 軟件度量工具 87

3.5.1 SonarQube 88

3.5.2 JIRA 88

3.5.3 Jenkins 89

3.6 SmartArchive項目的軟件度量 90

3.6.1 項目成員背景 90

3.6.2 成員工作量數據 91

3.6.3 階段工作量數據 91

3.6.4 規模度量數據 92

3.6.5 缺陷度量數據 93

3.6.6 度量數據及質量目標 93

3.6.7 進度跟蹤分析 95

3.6.8 工作量分析 96

3.6.9 缺陷分析 97

3.7 小結 98

3.8 習題 99

第4章 軟件配置管理 100

4.1 軟件配置管理要素 101

4.1.1 軟件配置管理的定義及優點 101

4.1.2 配置管理的功能 103

4.1.3 配置管理計劃 104

4.1.4 配置項 105

4.1.5 基線 106

4.1.6 變更控制 106

4.1.7 配置狀態報告 107

4.1.8 配置審計 108

4.2 軟件配置管理的功能及應用 109

4.2.1 保護軟件資產 109

4.2.2 協同高效工作 110

4.2.3 “昨日”重現 112

4.2.4 版本隔離和增量發布 113

4.2.5 風險管理 114

4.3 配置管理解決方案 115

4.3.1 一切皆有版本 115

4.3.2 靈活的基線控制 116

4.3.3 可定制的研發流程 117

4.4 CMMI與配置管理 120

4.5 常用的軟件配置管理工具 121

4.5.1 Git與GitHub 122

4.5.2 Gitee 123

4.5.3 其他代碼托管平臺和協作工具 124

4.6 SmartArchive項目的配置管理 125

4.6.1 配置管理人員及其職責 125

4.6.2 配置管理過程 125

4.7 小結 139

4.8 習題 140

第5章 軟件風險管理   142

5.1 軟件風險管理概述 143

5.1.1 軟件風險管理的定義 143

5.1.2 軟件風險管理的目標和價值 144

5.1.3 軟件風險管理的流程 145

5.2 軟件風險識別 145

5.2.1 頭腦風暴 146

5.2.2 專家訪談 146

5.2.3 需求分析 147

5.2.4 風險分類模型 148

5.2.5 檢查表和指南 148

5.3 軟件風險評估與優先級 149

5.3.1 風險值矩陣 149

5.3.2 優先級確定方法 151

5.4 軟件風險應對策略 153

5.4.1 風險規避 153

5.4.2 風險轉移 153

5.4.3 風險減輕 154

5.4.4 風險接受 154

5.5 SmartArchive項目的風險管理 155

5.5.1 SmartArchive項目的風險管理職責 155

5.5.2 SmartArchive項目的風險管理 155

5.6 小結 161

5.7 習題 161

第6章 軟件評審    163

6.1 軟件評審概述 163

6.1.1 軟件評審的定義 164

6.1.2 軟件評審的價值和意義 164

6.2 軟件評審的類型 165

6.2.1 技術評審 165

6.2.2 管理審查 166

6.3 軟件評審的實施方法 167

6.3.1 評審流程 167

6.3.2 評審工作產品和評審方法 168

6.3.3 軟件評審的技巧 169

6.4 SmartArchive項目的軟件評審 170

6.4.1 SmartArchive項目評審職責 170

6.4.2 SmartArchive項目評審流程 170

6.5 小結 186

6.6 習題 186

第7章 軟件測試技術 188

7.1 軟件測試的分類 189

7.1.1 靜態測試 189

7.1.2 動態測試 193

7.2 常用的軟件測試技術 194

7.2.1 黑盒測試 194

7.2.2 白盒測試 208

7.2.3 灰盒測試 215

7.3 測試驅動的開發 215

7.3.1 紅-綠-重構三段式 216

7.3.2 TDD工作流程 217

7.3.3 TDD的最佳實踐 218

7.4 SmartArchive項目的測試 用例 218

7.4.1 SmartArchive項目的黑盒測試 218

7.4.2 SmartArchive項目的白盒 測試 220

7.5 小結 220

7.6 習題 221

第8章 軟件測試過程  223

8.1 測試過程的5個階段 224

8.1.1 單元測試 224

8.1.2 集成測試 226

8.1.3 系統測試 230

8.1.4 驗收測試 231

8.1.5 金絲雀測試 232

8.1.6 小結 233

8.2 軟件測試工具 233

8.2.1 Selenium自動化測試 234

8.2.2 Appium移動應用測試 236

8.2.3 Postman API測試 237

8.2.4 JMeter性能測試 238

8.3 SmartArchive項目的測試 過程 239

8.3.1 SmartArchive項目的單元測試 240

8.3.2 SmartArchive項目的集成測試 243

8.3.3 SmartArchive項目的系統測試 244

8.3.4 SmartArchive項目的驗收測試 248

8.3.5 SmartArchive項目的金絲雀測試 249

8.4 小結 250

8.5 習題 251

第9章 軟件測試管理 252

9.1 軟件測試管理概述 253

9.1.1 軟件測試的常識 253

9.1.2 軟件測試策略 253

9.1.3 敏捷測試與團隊設置 254

9.1.4 軟件測試外包 256

9.1.5 開發人員的測試心理 256

9.1.6 測試人員的組織形式 256

9.2 軟件測試規程 257

9.2.1 軟件測試管理的角色與職責 257

9.2.2 軟件測試工具 258

9.3 軟件測試過程管理 258

9.3.1 測試計劃制訂及管理 260

9.3.2 測試用例設計及管理 262

9.3.3 測試程序設計及管理 263

9.3.4 缺陷管理 263

9.3.5 測試分析報告編寫及管理 266

9.3.6 單元測試 266

9.3.7 集成測試 267

9.3.8 系統測試 267

9.4 軟件測試管理工具 268

9.4.1 如何選擇軟件測試管理工具 269

9.4.2 禪道 270

9.4.3 Jira 270

9.5 SmartArchive項目的測試管理 271

9.5.1 軟件測試管理工具 271

9.5.2 全過程軟件測試管理 271

9.6 小結 280

9.7 習題 281