軟體工程案例教程:軟體項目開發實踐(第3版)

軟體工程案例教程:軟體項目開發實踐(第3版)

《軟體工程案例教程:軟體項目開發實踐(第3版)》是2017年機械工業出版社出版的圖書,作者是韓萬江、姜立新。

基本介紹

  • 中文名:軟體工程案例教程:軟體項目開發實踐(第3版)
  • 作者:韓萬江、姜立新
  • 出版社機械工業出版社
  • 出版時間:2017年3月
  • 定價:45 元
  • 開本:16 開
  • ISBN:978-7-111-55984-9
內容簡介,目錄,

內容簡介

本書是理論與實踐相結合的典範之作,前兩版被國內眾多高校選為“軟體工程”課程的教材,贏得了廣大師生的一致讚譽。第3版呈現了軟體工程理論近年來的新發展,同時一如既往地融會了作者多年的教學經驗和項目實踐經驗。全書按照軟體開發過程模型展開講解,通過一個貫穿全書的綜合案例,詳細介紹了軟體開發的需求分析、概要設計、詳細設計、編碼、產品交付以及維護等軟體開發過程。
本書特色
全面更新。面向軟體工程新技術,總結了軟體開發實踐的過程、經驗和方法,重新甄選案例並對內容進行了精心梳理,更利於理論知識的落地。
注重實效。全面涵蓋軟體工程流程中開發、測試、生產和運維的實踐過程,同時各章案例又有不同側重,使得篇章結構更加清晰有效,易於閱讀。

目錄

前言
第1章 軟體工程概述 1
1.1 軟體工程的背景 1
1.2 軟體工程知識體系 3
1.3 軟體工程的三段論 5
1.4.1 軟體項目開發路線圖 8
1.4.2 軟體項目管理路線圖 8
1.4.3 軟體過程改進路線圖 9
1.5 軟體開發模型 12
1.5.1 瀑布模型 12
1.5.2 V模型 13
1.5.3 原型模型 13
1.5.4 增量式模型 14
1.5.5 噴泉模型 14
1.5.6 智慧型模型 14
1.5.7 敏捷生存期模型 14
1.6 軟體工程中的復用原則 22
1.7 小結 24
1.8 練習題 24
2.1 軟體工程方法比較 26
2.2 結構化軟體工程方法 27
2.2.1 結構化需求分析 28
2.2.2 結構化設計 28
2.2.3 結構化編碼 29
2.2.4 結構化測試 29
2.2.5 結構化維護 29
2.3 面向對象軟體工程方法 29
2.3.2 面向對象設計 31
2.3.3 面向對象編程 31
2.3.4 面向對象測試 31
2.3.5 面向對象維護 31
2.3.6 面向對象建模工具UML 32
2.4 面向構件軟體工程方法 34
2.5 面向代理軟體工程方法 35
2.6 軟體工程方法總結 36
2.7 軟體逆向工程 36
2.8 基於容器技術的軟體工程化管理 37
2.9 項目案例說明 38
2.10 小結 38
2.11 練習題 38
第3章 軟體項目的需求分析 40
3.1 軟體項目需求概述 40
3.1.1 需求定義 40
3.1.2 需求類型 41
3.1.3 需求的重要性 42
3.2 需求工程 42
3.2.1 需求獲取 43
3.2.2 需求分析 45
3.2.3 需求規格說明編寫 46
3.2.4 需求驗證 47
3.2.5 需求變更 47
3.3 結構化需求分析方法 48
3.3.1 數據流圖方法 49
3.3.2 系統流程圖 50
3.3.3 實體關係圖 50
3.4 面向對象需求分析方法 52
3.4.1 UML需求建模圖示 53
3.4.2 UML需求建模過程 56
3.5 其他需求建模方法 65
3.6 原型設計工具 66
3.6.1 Axure RP 66
3.6.2 Balsamiq Mockups 67
3.6.3 Prototype Composer 67
3.6.4 GUI Design Studio 67
3.7 需求規格說明文檔 67
3.8 項目案例分析 70
3.9 小結 72
3.10 練習題 73
第4章 軟體項目的概要設計 75
4.1 軟體設計簡介 75
4.1.1 軟體設計的定義 75
4.1.2 概要設計的定義 76
4.2 體系結構設計 76
4.2.1 H/T體系結構 77
4.2.2 C/S體系結構 78
4.2.3 B/S體系結構 78
4.2.4 多層體系結構 80
4.2.5 面向服務的體系結構 84
4.2.6 面向工作流引擎 85
4.2.7 雲架構 88
4.2.8 應用程式框架結構 90
4.3 模組(構件)設計 94
4.3.1 模組分解 94
4.3.2 耦合度 95
4.3.3 內聚度 96
4.4 數據模型設計 98
4.4.1 資料庫設計 99
4.4.2 檔案設計 106
4.5 接口設計 107
4.5.1 用戶界面設計 107
4.5.2 外部接口和內部接口設計 109
4.6 結構化設計方法 109
4.6.1 變換流與事務流 110
4.6.2 功能模組劃分 111
4.6.3 數據流映射為結構圖 113
4.6.4 輸入/輸出設計 113
4.7 面向對象的設計方法 114
4.7.1 UML的設計圖示 116
4.7.2 識別對象類 121
4.7.3 確定屬性 121
4.7.4 定義對象的操作 122
4.7.5 確定對象之間的通信 122
4.7.6 完成對象類的定義 122
4.8 軟體設計指導原則 128
4.9 概要設計文檔標準 129
4.10 項目案例分析 131
4.10.1 體系結構 131
4.10.2 模組設計 132
4.10.3 資料庫設計 133
4.10.4 界面設計 135
4.11 小結 135
4.12 練習題 135
第5章 軟體項目的詳細設計 138
5.1 詳細設計的概念 138
5.2 詳細設計的內容 138
5.3 結構化詳細設計方法 139
5.3.1 詳細設計工具 139
5.3.2 JSD方法 145
5.3.3 Warnier方法 147
5.3.4 結構化詳細設計的例子 148
5.4 面向對象詳細設計方法 150
5.4.1 詳細設計工具 150
5.4.2 詳細設計步驟 151
5.4.3 面向對象詳細設計的例子 152
5.5 詳細設計文檔 154
5.6 項目案例分析 155
項目詳細設計簡介 155
5.7 小結 163
5.8 練習題 163
第6章 軟體項目的編碼 165
6.1 編碼概述 165
6.2 編碼方法 165
6.2.1 結構化編程 166
6.2.2 面向對象編程 170
6.2.3 面向組件編程 172
6.3 編碼策略 172
6.3.1 自頂向下的開發策略 172
6.3.2 自底向上的開發策略 173
6.3.3 自頂向下和自底向上相結合的開發策略 173
6.3.4 執行緒模式的開發策略 173
6.4 McCabe程式複雜度 173
6.5 編碼語言、編碼規範和編碼文檔 174
6.5.1 編碼語言 174
6.5.2 編碼標準和規範 175
6.5.3 編碼文檔 180
6.6 重構理念和重用原則 180
6.6.1 重構理念 180
6.6.2 重用原則 181
6.7 項目案例分析 182
6.7.1 項目開發環境的建立 182
6.7.2 編碼標準和規範 182
6.7.3 代碼說明 205
6.8 小結 211
6.9 練習題 212
第7章 軟體項目的測試 213
7.1 軟體測試概述 213
7.1.1 什麼是軟體測試 213
7.1.2 軟體測試技術綜述 214
7.2 靜態測試 215
7.2.1 文檔審查 216
7.2.2 代碼檢查 217
7.2.3 技術評審 218
7.3 白盒測試方法 219
7.3.1 語句覆蓋 220
7.3.2 判定覆蓋 220
7.3.3 條件覆蓋 220
7.3.4 判定/條件覆蓋 221
7.3.5 條件組合覆蓋 221
7.3.6 路徑覆蓋 221
7.3.7 其他覆蓋準則 222
7.4 黑盒測試方法 224
7.4.1 邊界值分析 225
7.4.2 等價類劃分 225
7.4.3 規範導出法 227
7.4.4 錯誤猜測法 227
7.4.5 基於故障的測試方法 227
7.4.6 因果圖法 228
7.4.7 決策表法 229
7.4.8 場景法 231
7.5 其他測試技術 234
7.5.1 回歸測試 234
7.5.2 隨機測試 235
7.5.3 探索性測試 235
7.6 軟體測試級別 236
7.6.1 單元測試 236
7.6.2 集成測試 238
7.6.3 系統測試 241
7.6.4 驗收測試 243
7.6.5 上線測試 243
7.7 面向對象的測試 243
7.7.1 面向對象分析的測試 244
7.7.2 面向對象設計的測試 244
7.7.3 面向對象的單元測試 245
7.7.4 面向對象的集成測試 246
7.7.5 面向對象的系統測試 247
7.8 測試過程管理 247
7.8.1 軟體測試計畫 247
7.8.2 軟體測試設計 248
7.8.3 軟體測試開發 252
7.8.4 軟體測試執行 253
7.8.5 軟體測試跟蹤 253
7.8.6 軟體測試評估與總結 257
7.9 自動化測試 260
7.10 軟體測試過程的文檔 265
7.10.1 測試計畫文檔 265
7.10.2 測試設計文檔 266
7.10.3 軟體測試報告 274
7.11 項目案例分析 276
7.11.1 測試設計案例 277
7.11.2 測試執行結果 277
7.11.3 測試報告案例 278
7.12 小結 281
7.13 練習題 281
第8章 軟體項目的交付 283
8.1 產品交付概述 283
8.2 安裝部署 284
8.2.1 軟體安裝 284
8.2.2 軟體部署 284
8.3 驗收測試 284
8.4 培訓 286
8.4.1 培訓對象 286
8.4.2 培訓方式 286
8.4.3 培訓指南 286
8.5 用戶文檔 287
8.5.1 用戶手冊 287
8.5.2 系統管理員手冊 287
8.5.3 其他文檔 287
8.6 軟體項目交付文檔 287
8.6.1 驗收測試報告 288
8.6.2 用戶手冊 291
8.6.3 系統管理員手冊 292
8.6.4 產品交付文檔 293
8.7 項目案例分析 294
8.7.1 安裝部署 295
8.7.2 用戶手冊 309
8.8 小結 309
8.9 練習題 309
第9章 軟體項目的維護 310
9.1 軟體項目維護概述 310
9.2 軟體項目維護的類型 311
9.2.1 糾錯性維護 311
9.2.2 適應性維護 312
9.2.3 完善性維護 312
9.2.4 預防性維護 312
9.3 軟體再工程過程 312
9.4 軟體項目維護的過程 313
9.4.1 維護申請 314
9.4.2 維護實現 315
9.4.3 維護產品發布 315
9.5 軟體維護過程文檔 315
9.6 軟體維護的代價 315
9.7 項目案例分析 316
9.7.1 SPM安全漏洞維護方案 317
9.7.2 SPM安全漏洞維護評估 328
9.8 小結 329
9.9 練習題 329
參考文獻 331

相關詞條

熱門詞條

聯絡我們