定 價:¥69.80
作 者: | 杜文峰,袁琳,朱安民,葉聰 |
出版社: | 清華大學出版社 |
叢編項: | |
標 簽: | 暫缺 |
ISBN: | 9787302606840 | 出版時間: | 2023-02-01 | 包裝: | 平裝-膠訂 |
開本: | 16開 | 頁數(shù): | 字數(shù): |
第一篇 軟件工程基礎
第1章 軟件發(fā)展史及軟件工程 3
1.1 軟件的發(fā)展歷程 3
1.2 軟件的定義和特點 5
1.3 軟件危機 6
1.4 軟件工程 7
1.5 軟件開發(fā)方法 9
1.6 軟件工程知識體系 12
1.7 小結 13
1.8 習題 13
第2章 軟件生命周期 14
2.1 項目構想和立項 14
2.2 可行性分析 15
2.3 項目開發(fā)計劃 17
2.3.1 制訂項目開發(fā)計劃 17
2.3.2 項目開發(fā)計劃評審 19
2.4 需求分析 19
2.4.1 需求的定義和組成 20
2.4.2 需求管理 21
2.5 軟件設計 24
2.5.1 軟件設計的目標和任務 25
2.5.2 軟件設計階段 26
2.5.3 模塊化與模塊獨立 26
2.5.4 經典軟件體系結構 27
2.5.5 設計復審 34
2.6 軟件實現(xiàn) 35
2.6.1 程序設計語言的選擇 35
2.6.2 軟件編碼規(guī)范 37
2.6.3 軟件效率 38
2.7 軟件測試 41
2.7.1 軟件測試的發(fā)展歷程 42
2.7.2 軟件測試技術 45
2.7.3 軟件測試策略 50
2.7.4 軟件測試步驟 55
2.7.5 軟件測試的原則 56
2.7.6 軟件調試 58
2.7.7 軟件可靠性 61
2.8 軟件維護 61
2.8.1 軟件維護分類 62
2.8.2 軟件維護實施 62
2.9 小結 67
2.10 習題 67
第二篇 結構化方法
第3章 結構化分析 71
3.1 結構化需求描述方法 71
3.2 結構化需求建模 73
3.2.1 數(shù)據(jù)流圖 73
3.2.2 處理/加工邏輯說明 77
3.2.3 狀態(tài)轉換圖 80
3.2.4 數(shù)據(jù)模型 82
3.3 小結 87
3.4 習題 88
第4章 結構化設計 89
4.1 結構化設計與結構化分析的關系 89
4.2 結構化模塊及模塊獨立性 90
4.2.1 結構化的模塊獨立性 90
4.2.2 結構化設計啟發(fā)式規(guī)則 97
4.3 系統(tǒng)結構設計 98
4.3.1 系統(tǒng)結構圖 99
4.3.2 HIPO圖 101
4.3.3 面向數(shù)據(jù)流的設計方法 101
4.4 數(shù)據(jù)設計 109
4.4.1 數(shù)據(jù)元素設計 110
4.4.2 數(shù)據(jù)結構設計 110
4.4.3 文件格式設計 111
4.4.4 數(shù)據(jù)庫設計 113
4.5 過程設計 116
4.5.1 程序流程圖 116
4.5.2 PDL 118
4.5.3 模塊過程設計 121
4.6 設計優(yōu)化 121
4.7 小結 122
4.8 習題 122
第5章 結構化實現(xiàn) 123
5.1 結構化實現(xiàn)與結構化設計的關系 123
5.2 結構化編碼 124
5.2.1 結構化程序的源代碼組成 124
5.2.2 結構化程序的編譯過程 126
5.2.3 結構化程序多文件組織 127
5.2.4 結構化模塊集成 129
5.3 結構化測試 132
5.3.1 結構化測試階段 132
5.3.2 結構化白盒測試覆蓋標準 134
5.3.3 結構化白盒測試用例設計 138
5.3.4 結構化黑盒測試用例設計 143
5.3.5 結構化測試實施 146
5.4 小結 147
5.5 習題 147
第三篇 面向對象方法
第6章 統(tǒng)一建模語言 151
6.1 統(tǒng)一建模語言的發(fā)展史 151
6.2 UML中的圖 152
6.2.1 用例圖 152
6.2.2 活動圖 154
6.2.3 類圖 155
6.2.4 對象圖 158
6.2.5 順序圖 158
6.2.6 通信圖 162
6.2.7 狀態(tài)圖 164
6.2.8 構件圖 166
6.2.9 部署圖 167
6.2.10 包圖 169
6.3 小結 171
6.4 習題 171
第7章 面向對象分析 172
7.1 業(yè)務用例分析 172
7.2 業(yè)務用例描述 173
7.3 活動建模 174
7.4 分析模型 176
7.4.1 對象建模 176
7.4.2 交互建模 180
7.4.3 狀態(tài)建模 182
7.4.4 劃分內容主題 183
7.4.5 完善分析模型 184
7.5 面向對象分析評審 185
7.6 小結 186
7.7 習題 186
第8章 面向對象設計 187
8.1 分析模型到設計模型的轉換 187
8.2 面向對象設計原則 188
8.2.1 面向對象的模塊獨立性 188
8.2.2 面向對象設計啟發(fā)式規(guī)則 191
8.2.3 設計模式 198
8.3 面向對象架構設計 201
8.3.1 軟件架構設計 202
8.3.2 類方法設計 207
8.3.3 類屬性設計 211
8.4 軟件構件設計 214
8.4.1 構件設計原則 214
8.4.2 軟件構件的設計方法 215
8.5 部署設計 218
8.6 小結 222
8.7 習題 222
第9章 面向對象實現(xiàn) 223
9.1 面向對象編碼 223
9.1.1 項目文件組織 223
9.1.2 面向對象業(yè)務實現(xiàn) 226
9.2 面向對象測試 228
9.2.1 面向對象測試階段 228
9.2.2 面向對象測試策略 230
9.2.3 面向對象測試用例設計 231
9.3 小結 239
9.4 習題 240
第四篇 軟件過程及管理
第10章 軟件過程 243
10.1 瀑布模型 244
10.2 演化模型 246
10.3 快速原型法 247
10.4 增量模型 249
10.5 螺旋模型 251
10.6 噴泉模型 253
10.7 構件組裝模型 254
10.8 統(tǒng)一過程 255
10.9 能力成熟度模型 257
10.10 凈室軟件工程 258
10.11 敏捷開發(fā)過程 260
10.11.1 極限編程 261
10.11.2 Scrum 262
10.12 小結 264
10.13 習題 264
第11章 軟件項目管理 265
11.1 項目管理概述 265
11.2 項目管理框架 266
11.3 項目階段管理 268
11.3.1 項目準備與啟動 268
11.3.2 項目計劃 270
11.3.3 項目的執(zhí)行與控制 277
11.3.4 項目的收尾與總結 295
11.4 小結 297
11.5 習題 297
第五篇 現(xiàn)代軟件開發(fā)
第12章 騰訊敏捷軟件開發(fā) 301
12.1 騰訊敏捷研發(fā)理念 301
12.2 騰訊敏捷解決方案 303
12.3 敏捷的核心應用 304
12.3.1 看板 304
12.3.2 需求 305
12.3.3 迭代 306
12.3.4 測試 307
12.3.5 缺陷 308
12.3.6 DevOps 310
12.3.7 報表 311
12.3.8 文檔 312
12.4 小結 312
12.5 習題 313
第13章 基于領域驅動的云原生軟件開發(fā) 314
13.1 云原生概述 314
13.2 云原生架構及其設計原則 317
13.3 領域驅動設計 322
13.4 基于領域的敏捷需求分析 323
13.4.1 領域分析及子領域識別 323
13.4.2 業(yè)務需求分析 324
13.5 云原生軟件架構設計 324
13.5.1 界限上下文劃分 325
13.5.2 實體及值對象分析 326
13.5.3 聚合分析與設計 327
13.5.4 事件識別及服務分析 330
13.5.5 存儲庫設計 331
13.5.6 數(shù)據(jù)一致性 332
13.5.7 軟件前端設計 335
13.6 云原生軟件系統(tǒng)實現(xiàn)及部署 336
13.6.1 云原生軟件實現(xiàn) 336
13.6.2 容量估算及組件選型 341
13.6.3 系統(tǒng)測試 341
13.6.4 軟件發(fā)布及部署 342
13.7 小結 343
13.8 習題 344
第14章 人機交互設計 345
14.1 人機交互 345
14.2 交互模型和框架 347
14.3 人機交互設計原則 350
14.4 人機交互界面的設計過程 354
14.5 小結 356
14.6 習題 356
參考文獻 357
軟件工程(微課視頻版)
目 錄