基本信息,內容簡介,目錄信息,
基本信息
軟體工程教程:IBM RUP方法實踐
書號: 40681
ISBN: 978-7-111-40681-5
作者: 杜育根
印次: 1-2
開本: 16開
字數: 276千字
定價: 29.0
所屬叢書: 國家示範性軟體學院系列教材
出版日期: 2016-07-12
內容簡介
本書通過幾個貫穿軟體工程所有框架活動的一體化案例來闡述軟體開發過程規範及方法,具體包括業務建模、需求分析建模、系統分析設計(分析建模、體系結構設計和詳細設計)、編程與測試、部署等階段詳細文檔及代碼。所有一體化案例取材於真實的軟體項目,所有運用面向對象的開發方法,通過UML進行建模(使用RationalRose工具),參考RUP過程模型,並採用MVC的體系結構進行設計實現。通過案例教學,能夠使讀者了解軟體開發的全過程,並學會編寫標準的軟體開發文檔,同時掌握代碼的編寫方法及規範。
目錄信息
前言
教學建議
第1章 軟體工程導論1
1.1 軟體和軟體工程史1
1.1.1 軟體的產生1
1.1.2 軟體危機3
1.1.3 傳統軟體工程4
1.1.4 現代軟體工程4
1.1.5 軟體工程與計算機科學5
1.2 軟體和軟體工程5
1.2.1 軟體5
1.2.2 軟體危機的表現6
1.2.3 軟體工程7
1.2.4 軟體過程及通用過程框架9
1.3 常見的軟體過程模型11
1.3.1 編碼修正模型11
1.3.2 線性順序模型12
1.3.3 V模型13
1.3.4 增量模型14
1.3.5 快速套用開發模型15
1.3.6 演化模型16
1.3.7 高級軟體工程21
1.4 傳統軟體過程規範23
1.4.1 過程總述23
1.4.2 需求分析階段23
1.4.3 高階設計階段24
1.4.4 詳細設計階段25
1.4.5 編碼和單元測試階段25
1.4.6 集成計畫與測試階段26
1.4.7 系統測試階段26
1.4.8 驗收測試與安裝階段27
1.4.9 維護階段27
1.5 Rational統一過程28
1.5.1 RUP簡介28
1.5.2 RUP的二維開發模型28
1.5.3 階段和里程碑30
1.5.4 RUP規程33
1.5.5 RUP模型、工件及信息流34
1.6 軟體工程的發展動向35
1.6.1 面向切面編程35
1.6.2 敏捷軟體開發36
1.6.3 實驗軟體工程37
1.6.4 模型驅動工程38
1.6.5 軟體生產線38
1.7 習題38
參考文獻39
第2章 面向對象和UML40
2.1 面向對象40
2.1.1 面向對象的歷史40
2.1.2 面向對象分析和設計基本概念42
2.1.3 面向對象編程43
【案例分析】類、對象45
2.2 UML45
2.2.1 UML的發展歷史45
2.2.2 RUP的發展歷史48
2.2.3 UML語義和UML表示法48
2.3 習題50
參考文獻50
第3章 業務建模52
3.1 業務建模概述52
3.1.1 業務建模的目的52
3.1.2 業務的構架視圖53
3.1.3 業務建模工作流程53
3.1.4 業務建模場景56
3.1.5 業務建模關鍵任務57
3.2 了解系統上下文58
【案例分析】“數字軟體學院”系統上下文59
3.3 選定目標組織60
3.3.1 確定目標組織的邊界60
3.3.2 確定業務涉眾61
【案例分析】數字軟體學院的業務涉眾62
3.3.3 說明目標組織的結構62
【案例分析】數字軟體學院的目標組織結構63
3.3.4 描繪業務願景和業務目標63
【案例分析】數字軟體學院的業務願景和業務目標65
3.4 建立業務用例模型66
3.4.1 識別業務執行者66
【案例分析】數字軟體學院業務系統的業務執行者67
【案例分析】教務學分查詢業務系統的業務執行者68
3.4.2 識別業務用例69
【案例分析】軟體學院的業務用例模型70
3.5 最佳化業務用例73
3.5.1 精化業務用例73
【案例分析】軟體學院教學的業務用例精化74
3.5.2 結構化業務用例74
【案例分析】軟體學院教學的業務用例包含關係75
【案例分析】軟體學院教學的業務用例擴展關係76
【案例分析】軟體學院教學的業務用例泛化76
【案例分析】軟體學院的業務執行者泛化77
3.5.3 劃分業務系統77
【案例分析】軟體學院的業務系統79
3.5.4 詳述業務用例79
【案例分析】學分查詢業務用例詳細描述81
3.6 建立業務分析模型85
3.6.1 業務工作者86
3.6.2 業務實體86
3.6.3 業務用例實現87
【案例分析】“學生學分查詢”業務用例實現之一——活動圖87
【案例分析】“學生學分查詢”業務用例實現之二——互動圖89
【案例分析】“學生學分查詢”業務用例實現之三——類圖92
3.6.4 詳細描述業務工作者和業務實體92
【案例分析】“學生學分查詢”業務用例——詳細描述業務工作者和業務實體93
3.7 創建領域模型94
3.8 小結95
3.9 習題96
參考文獻98
第4章 需求99
4.1 需求概述99
4.1.1 功能性需求100
4.1.2 非功能性需求100
4.2 需求工作流程102
4.2.1 分析問題103
4.2.2 理解涉眾需求103
4.2.3 定義系統104
4.2.4 管理系統範圍104
4.2.5 精化系統定義105
4.2.6 管理變更需求105
4.3 需求關鍵任務105
4.3.1 引發涉眾請求106
4.3.2 開發願景106
4.3.3 查找執行者和用例107
【案例分析】學院入口網站的執行者108
【案例分析】教務學分查詢系統的執行者108
【案例分析】學院入口網站的用例109
【案例分析】教務學分查詢系統的用例110
4.3.4 劃分用例優先權111
4.3.5 結構化用例模型112
【案例分析】學院入口網站的用例包114
【案例分析】教務學分查詢系統的用例包115
4.3.6 詳細描述用例116
【案例分析】學院入口網站中的兩個用例描述117
【案例分析】教務學分查詢系統中學分查詢的用例描述120
4.3.7 制定補充規範120
4.3.8 其他任務123
4.4 詳細描述軟體需求124
4.4.1 軟體需求規約(不帶用例)125
4.4.2 軟體需求規約(帶用例)128
4.4.3 用戶界面原型129
【案例分析】學分查詢系統的界面原型131
4.5 習題132
參考文獻134
第5章 分析與設計135
5.1 關於分析與設計的討論135
5.1.1 分析概述136
5.1.2 設計概述137
5.2 分析與設計工作流程138
5.2.1 執行體系結構合成139
5.2.2 定義候選體系結構139
5.2.3 最佳化體系結構139
5.2.4 分析行為139
5.2.5 設計構件140
5.2.6 設計資料庫140
5.2.7 服務識別140
5.2.8 服務規範140
5.3 分析建模141
5.3.1 分析模型元素141
5.3.2 靜態模型142
【案例分析】學院入口網站系統分析——靜態模型144
【案例分析】教務學分查詢系統分析——靜態模型145
5.3.3 動態模型145
【案例分析】教務學分查詢用例分析——動態模型147
【案例分析】學院入口網站中的修改用戶角色用例分析——動態模型148
5.4 設計建模149
5.4.1 設計及設計模型元素149
5.4.2 軟體模式150
5.5 體系結構設計151
5.5.1 體系結構演變152
5.5.2 體系結構設計原則153
5.5.3 三層體系結構設計154
5.5.4 MVC架構158
5.5.5 J2EE的輕量級框架SSH160
5.5.6 體系結構風格、框架與模式關係162
5.5.7 RUP4+1體系結構視圖164
【案例分析】“數字軟體學院”體系結構設計165
【案例分析】教務學分查詢系統體系結構171
5.6 詳細設計171
5.6.1 詳細設計概念171
5.6.2 設計模式172
5.6.3 類設計181
【案例分析】教務學分查詢系統——初始設計類183
【案例分析】學院入口網站——持久類185
【案例分析】教務學分查詢系統——定義類操作188
5.6.4 資料庫設計191
【案例分析】學院入口網站持久類到表的映射192
5.6.5 界面設計194
5.7 習題197
參考文獻198
第6章 實現200
6.1 實現工作流程200
6.1.1 結構化實現模型介紹201
6.1.2 計畫集成201
6.1.3 服務實現202
6.1.4 實現構件202
6.1.5 集成每個子系統202
6.1.6 集成系統202
6.2 實現關鍵任務202
6.2.1 結構化實現模型步驟202
6.2.2 實現設計元素205
6.2.3 評審代碼207
6.2.4 分析運行時行為208
6.2.5 開發人員測試210
6.2.6 實現可測性元素213
6.2.7 子系統集成213
6.2.8 系統集成214
6.2.9 記錄服務實現決策217
6.3 JSP代碼實現案例219
【案例分析】入口網站用戶管理功能實現219
【案例分析】教務學分查詢功能實現221
6.4 習題223
參考文獻224
附錄A 一體化案例介紹225