軟體工程實用案例教程

軟體工程實用案例教程

《軟體工程實用案例教程》是2019年7月清華大學出版社出版的圖書,作者是梁潔、金蘭、張碩、宋亞嵐、孔德華。

基本介紹

  • 書名:軟體工程實用案例教程
  • 作者:梁潔、金蘭、張碩、宋亞嵐、孔德華
  • 出版社:清華大學出版社
  • 出版時間:2019年7月
  • 定價:58 元
  • ISBN:9787302522775
內容簡介,圖書目錄,

內容簡介

《軟體工程實用案例教程》結合軟體工程的發展與教學需要,系統地闡述了軟體工程這一領域的基本概念、原理與方法。《軟體工程實用案例教程》共包括11章,主要內容有:軟體工程綜述,軟體過程,可行性研究,結構化需求分析,結構化軟體設計,面向對象的需求分析,面向對象的設計,基於構件的開發,軟體項目的測試,軟體實施、維護與進化,軟體工程標準與文檔等。
全書內容豐富、組織嚴謹,原理和方法結合密切,結構化方法和面向對象的方法均有一個實例貫穿始終,豐富的圖表和套用實例有助於培養讀者的實際分析設計能力和文檔寫作能力,書中含有豐富的例題與習題便於教學及讀者自學。
《軟體工程實用案例教程》可以作為高等院校軟體工程專業、計算機科學與技術專業、計算機套用專業,以及其他相關專業高年級本科生的教材,同時可作為從事軟體分析、設計與開發人員的參考書。

圖書目錄

第1章 軟體工程綜述 1
1.1 軟體工程的背景 1
1.1.1 軟體及其特性 1
1.1.2 軟體危機 4
1.2 軟體工程概述 5
1.2.1 軟體工程的基本概念 5
1.2.2 軟體工程的目標 6
1.2.3 軟體工程三要素 7
1.2.4 軟體工程的多樣性 9
1.2.5 軟體工程與Web 10
1.2.6 軟體工程的通用原則 13
1.2.7 軟體工程人員的職業道德 14
本章小結 15
本章練習題 16
第2章 軟體過程 18
2.1 軟體過程概述 18
2.1.1 軟體描述 18
2.1.2 軟體設計與實現 19
2.1.3 軟體有效性驗證 21
2.1.4 軟體進化 22
2.1.5 軟體開發團隊組成 23
2.2 軟體過程模型概述 24
2.2.2 應對變更 28
2.2.3 Rational統一過程 31
2.3 敏捷軟體開發 33
本章小結 36
本章練習題 36
第3章 可行性研究 38
3.1 可行性研究的任務 38
3.2 可行性研究的重要性 39
3.3 可行性研究過程 40
3.4 系統流程圖與工作流程 41
3.4.1 流程圖規範 42
3.4.2 流程圖分析案例 42
3.4.3 分層 43
3.5 數據流圖與系統功能 43
3.5.1 數據流圖規範 44
3.5.2 數據流圖分析案例 44
3.5.3 命名 46
3.5.4 用途 46
3.6 成本/效益分析 47
3.6.1 成本估計 47
3.6.2 成本/效益分析的方法 48
本章小結 49
本章練習題 50
第4章 結構化需求分析 51
4.1 需求 51
4.1.1 需求的定義 51
4.1.2 需求的層次 52
4.1.3 需求的分類 54
4.2 需求工程 55
4.2.1 需求工程的任務 55
4.2.2 需求工程的活動 55
4.3 需求獲取 56
4.3.1 需求獲取中的常見困難 57
4.3.2 定義項目前景和範圍 59
4.3.3 選擇信息的來源 61
4.3.4 需求獲取的方法 62
4.4 需求分析 63
4.4.1 過程建模 63
4.4.2 數據建模 75
4.4.3 過程模型與數據模型的聯繫 82
4.4.4 結構化分析的局限性 82
4.5 需求規格說明 82
4.5.1 需求規格說明文檔的類型 83
4.5.2 軟體需求規格說明文檔的讀者 83
4.5.3 軟體需求規格說明文檔模板 84
4.6 需求驗證 84
4.6.1 需求驗證的概念 84
4.6.2 需求驗證的方法 85
4.7 需求管理 86
4.7.1 建立和維護需求基線 86
4.7.2 建立需求跟蹤信息 87
4.7.3 進行變更控制 87
4.8 結構化需求分析方法案例 88
本章小結 93
本章練習題 93
第5章 結構化軟體設計 97
5.1 軟體設計的相關概念 97
5.1.1 軟體設計的任務 97
5.1.2 軟體設計的原則 98
5.1.3 結構化設計圖形工具 103
5.1.4 軟體設計的啟發規則 105
5.2 體系結構設計 108
5.2.1 數據流類型 109
5.2.2 變換流的映射方法 109
5.2.3 事務流的映射方法 114
5.3 數據設計 117
5.3.1 檔案設計 117
5.3.2 資料庫設計 117
5.4 接口設計 120
5.4.1 接口設計概述 120
5.4.2 人機界面的互動設計 121
5.5 過程設計 122
5.5.1 結構化程式設計 122
5.5.2 過程設計工具 122
5.6 軟體設計規格說明書文檔 124
本章小結 125
本章練習題 125
第6章 面向對象的需求分析 129
6.1 面向對象的基本概念 129
6.1.1 對象與類 129
6.1.2 封裝、繼承和多態性 131
6.1.3 面向對象分析概述 135
6.2 案例說明 136
6.3 上下文模型 137
6.4 活動圖與業務流程 137
6.4.1 活動圖規範 138
6.4.2 活動圖建模 139
6.5 用例圖與系統需求 141
6.5.1 用例規範 141
6.5.2 從業務流程到用例圖建模 143
6.6 靜態結構與類圖 147
6.6.1 靜態結構與類圖的分類 147
6.6.2 類圖規範 148
6.6.3 類圖建模 150
6.7 時序圖與互動模型 155
6.7.1 時序圖規範 156
6.7.2 時序圖驗證 157
6.8 狀態圖與事件驅動模型 159
6.8.1 狀態圖規範 159
6.8.2 識別狀態空間 161
6.8.3 狀態圖建模 162
本章小結 162
本章練習題 163
第7章 面向對象的設計 165
7.1 面向對象軟體設計概述 165
7.1.1 面向對象設計的過程 165
7.1.2 面向對象設計準則 167
7.2 體系結構設計 168
7.2.2 三層架構 169
7.2.3 採用MVC模式的Web體系結構 171
7.2.4 系統邏輯結構與類包圖 173
7.2.5 系統物理體系結構與構件圖 175
7.2.6 系統物理體系結構與部署圖 177
7.3 構件級設計 179
7.3.1 從分析類到設計類 179
7.3.2 從用例場景到設計類 181
7.3.3 構件詳細類圖建模 184
7.4 用戶界面設計 185
7.4.1 把控制權交給用戶 186
7.4.2 減輕用戶的記憶負擔 186
7.4.3 保持界面一致 187
本章小結 187
本章練習題 188
第8章 基於構件的開發 190
8.1 實施階段的準備工作 190
8.2 基於構件的編碼 191
8.2.1 開發環境 191
8.2.2 從雇員管理構件設計類圖到編碼 192
8.2.3 雇員管理構件編碼 193
8.3 實現問題 205
8.3.1 復用 206
8.3.2 配置管理 207
8.3.3 宿主機-目標機開發 207
本章小結 208
本章練習題 208
第9章 軟體項目的測試 210
9.1 軟體測試概述 210
9.2 軟體測試技術 213
9.2.1 黑盒測試 213
9.2.2 白盒測試 218
9.2.3 灰盒測試 221
9.3 軟體測試過程 222
9.3.1 單元測試 222
9.3.2 集成測試 223
9.3.3 確認測試 224
9.3.4 系統測試 225
9.3.5 驗收測試 226
9.3.6 回歸測試 226
本章小結 227
本章練習題 227
第10章 軟體實施、維護與進化 230
10.1 軟體實施概述 230
10.2 軟體維護概述 232
10.2.1 軟體維護的類型 232
10.2.2 軟體維護存在的問題 233
10.2.3 軟體維護的風險 234
10.2.4 軟體維護的過程 235
10.2.5 軟體的可維護性 236
10.3 軟體進化概述 237
10.3.1 進化過程 238
10.3.2 遺留系統 238
10.3.3 軟體再工程 240
本章小結 242
本章練習題 243
第11章 軟體工程標準與文檔 244
11.1 軟體工程標準 244
11.2 軟體工程國家標準 245
11.3 軟體工程文檔標準(GB/T 8567-2006國家標準) 247
11.3.1 軟體生存周期與各種文檔的編制 247
11.3.2 文檔編制中的考慮因素 249
11.3.3 可行性研究報告 251
11.3.4 軟體開發計畫 253
11.3.5 系統/子系統需求規格說明 258
11.3.6 系統/子系統設計(結構設計)說明 266
11.3.7 數據需求說明 272
11.3.8 軟體測試說明 274
11.3.9 軟體測試報告 278
11.3.10 項目開發總結報告 280
11.3.11 軟體用戶手冊 282
11.3.12 面向對象軟體的文檔編制 285
本章小結 294
本章練習題 294

相關詞條

熱門詞條

聯絡我們