本書四部分,共21章,其中,第一部分包括軟件工程與面向?qū)ο蠓椒āML概述、Rational Rose概述,第二部分包括UML概念模型、UML中的事物、UML中的關系、用例圖、包圖、類圖、協(xié)作圖、順序圖、狀態(tài)圖、組件圖、活動圖、部署圖,第三部分包括統(tǒng)一軟件開發(fā)過程,需求分析,系統(tǒng)分析,系統(tǒng)設計,系統(tǒng)實現(xiàn)、測試及部署,第四部分包括開發(fā)實例——博客網(wǎng)站。
呂云翔 北航軟件學院副教授,主要研究項目及領域: 軟件工程、企業(yè)資源規(guī)劃、計算機教育 著作: 實用軟件工程 人民郵電出版社 軟件工程 人民郵電出版社 計算機英語教程 人民郵電出版社等
第一部分 概述
第1章 軟件工程與面向?qū)ο蠓椒ā?
1.1 軟件工程簡介 2
1.1.1 軟件工程的發(fā)展過程 2
1.1.2 軟件工程的目標和原則 3
1.2 面向?qū)ο蠓椒ê喗椤?
1.2.1 什么是面向?qū)ο蠓椒ā?
1.2.2 面向?qū)ο蠓椒ǖ陌l(fā)展歷史 4
1.2.3 面向?qū)ο蠓椒ǖ幕靖拍睢?
1.2.4 面向?qū)ο蠓椒ǖ膬?yōu)勢 6
小結 7
習題 7
第2章 統(tǒng)一建模語言UML 9
2.1 軟件建模簡介 9
2.1.1 什么是模型 9
2.1.2 建模的重要性 9
2.1.3 建模的基本原理 10
2.2 UML簡述 10
2.3 UML的發(fā)展歷史 11
2.3.1 UML的出現(xiàn)背景 11
2.3.2 UML的誕生及其標準化 12
2.3.3 UML 2規(guī)范 12
2.4 UML的目標與應用范圍 13
2.4.1 UML的目標 13
2.4.2 UML的應用范圍 14
小結 14
習題 14
第3章 Rational Rose工具概述 16
3.1 Rose簡述 16
3.1.1 何謂Rose 16
3.1.2 Rational Rose對UML的支持 17
3.2 Rational Rose的安裝 18
3.2.1 安裝前的準備 18
3.2.2 安裝過程 19
3.3 Rational Rose的使用 25
3.3.1 Rational Rose界面介紹 25
3.3.2 Rose的基本操作 31
小結 38
習題 38
第二部分 UML概念詳解
第4章 UML概念模型 40
4.1 構造塊 40
4.1.1 事物 40
4.1.2 關系 42
4.1.3 圖 43
4.2 通用機制 45
4.2.1 規(guī)格說明 45
4.2.2 修飾 45
4.2.3 通用劃分 45
4.2.4 擴展機制 46
4.3 "4+1"架構 47
4.3.1 "4+1"架構的概念和組成 47
4.3.2 "4+1"架構要解決的問題 48
4.3.3 運用"4+1"視圖方法進行軟件
架構設計 49
小結 50
習題 50
第5章 用例圖 52
5.1 用例圖的基本概念 52
5.2 參與者 53
5.2.1 參與者的概念 53
5.2.2 確定參與者 53
5.2.3 參與者的泛化關系 54
5.3 用例 55
5.3.1 用例的概念 55
5.3.2 用例與參與者 55
5.3.3 用例的特征 56
5.3.4 用例的粒度 57
5.4 用例之間的關系 58
5.4.1 泛化關系 58
5.4.2 依賴關系 59
5.5 用例描述與文檔 60
5.5.1 用例描述概述 60
5.5.2 前置條件與后置條件 61
5.5.3 事件流 61
5.5.4 補充約束 62
5.5.5 用例文檔實踐 62
5.6 應用用例圖建!63
5.6.1 用例圖建模技術 63
5.6.2 用例圖使用要點 65
5.7 實驗:使用Rose繪制用例圖 65
5.7.1 用例圖的Rose操作 65
5.7.2 繪制機票預訂系統(tǒng)的用例圖 68
小結 70
習題 70
第6章 類圖與對象圖 73
6.1 類圖的基本概念 73
6.2 類圖的組成元素 74
6.2.1 類 74
6.2.2 接口 77
6.2.3 類圖中的關系 77
6.2.4 涉及類的其他概念 83
6.3 類圖的實例--對象圖 85
6.3.1 對象圖概述 86
6.3.2 對象圖的組成元素 86
6.4 類圖與對象圖的建模技術 87
6.4.1 類圖的建模技術 87
6.4.2 正向工程與逆向工程 88
6.4.3 對象圖的建模技術 89
6.4.4 面向?qū)ο笤O計的原則 89
6.5 實驗:使用Rose繪制類圖 92
6.5.1 類圖的Rose操作 92
6.5.2 繪制機票預訂系統(tǒng)的類圖 97
小結 101
習題 101
第7章 包圖 104
7.1 包圖的基本概念 104
7.2 包 104
7.2.1 包的概念 105
7.2.2 包的作用 107
7.2.3 元素的分包原則 107
7.3 包的依賴關系 107
7.4 包圖的建模技術 109
7.5 實驗:使用Rose繪制包與包圖 110
7.5.1 包圖的Rose操作 110
7.5.2 使用包組織UML圖中的元素 112
小結 112
習題 113
第8章 順序圖 115
8.1 順序圖的概念 115
8.2 順序圖的組成元素 116
8.2.1 對象 116
8.2.2 生命線 116
8.2.3 激活 117
8.2.4 消息 117
8.3 (*)UML 2中的"片段"概念 119
8.4 順序圖建模技術 120
8.5。*)順序圖的變體--時間圖 121
8.6 實驗:使用Rose繪制順序圖 122
8.6.1 順序圖的Rose操作 122
8.6.2 繪制登錄用例的順序圖 124
小結 125
習題 125
第9章 協(xié)作圖 127
9.1 協(xié)作圖的概念 127
9.2 協(xié)作圖的組成元素 128
9.2.1 對象 128
9.2.2 鏈 129
9.2.3 消息 129
9.3 協(xié)作圖與順序圖 130
9.4 協(xié)作圖建模技術 131
9.5 (*)UML 2中的通信圖 131
9.6 實驗:使用Rose繪制協(xié)作圖 132
9.6.1 協(xié)作圖的Rose操作 133
9.6.2 繪制查詢航班用例的協(xié)作圖 134
小結 135
習題 135
第10章 狀態(tài)圖 138
10.1 狀態(tài)圖的基本概念 138
10.1.1 狀態(tài)機 138
10.1.2 狀態(tài)圖 139
10.2 狀態(tài)圖的組成 140
10.2.1 簡單狀態(tài) 140
10.2.2 轉(zhuǎn)換 141
10.2.3 偽狀態(tài) 144
10.3 復合狀態(tài) 145
10.4 狀態(tài)圖的建模技術 147
10.5 實驗:使用Rose繪制狀態(tài)圖 147
10.5.1 狀態(tài)圖的Rose操作 148
10.5.2 繪制航班類的狀態(tài)圖 152
小結 154
習題 154
第11章 活動圖 156
11.1 活動圖基本概念 156
11.2 活動圖組成元素 157
11.2.1 動作和活動節(jié)點 157
11.2.2 開始和終止 158
11.2.3 控制流 158
11.2.4 判斷節(jié)點 158
11.2.5 合并節(jié)點 159
11.2.6 泳道 159
11.3 活動圖的高級概念 160
11.3.1 并發(fā) 160
11.3.2 分叉節(jié)點 161
11.3.3 結合節(jié)點 161
11.3.4 對象流 161
11.3.5 擴展區(qū)域 162
11.4 活動圖建模技術 162
11.5 活動圖的進一步說明 163
11.6 實驗:使用Rose繪制活動圖 163
11.6.1 活動圖的Rose操作 163
11.6.2 繪制用戶購票的活動圖 166
小結 167
習題 167
第12章 組件圖 170
12.1 組件圖的基本概念 170
12.2 組件圖的組成元素 171
12.2.1 組件 171
12.2.2 接口 172
12.2.3 組件圖中的關系 173
12.2.4。*)Rose中的特殊組件 173
12.2.5。*)UML 2中組件的嵌套 175
12.3 組件圖的建模技術 175
12.4 實驗:使用Rose繪制組件圖 176
12.4.1 組件圖的Rose操作 176
12.4.2 繪制機票預訂系統(tǒng)的組
件圖 178
小結 179
習題 179
第13章 部署圖 181
13.1 部署圖的基本概念 181
13.2 部署圖的組成元素 181
13.2.1 節(jié)點 182
13.2.2 部署圖中的關系 182
13.3 部署圖建模技術 183
13.4 實驗:使用Rose繪制部署圖 183
13.4.1 部署圖的Rose操作 183
13.4.2 繪制機票預訂系統(tǒng)的部署圖 185
小結 185
習題 186
第三部分 建模過程剖析
第14章 統(tǒng)一軟件開發(fā)過程 189
14.1 統(tǒng)一軟件開發(fā)過程概述 189
14.1.1 什么是軟件開發(fā)過程 189
14.1.2 統(tǒng)一軟件開發(fā)過程簡介 190
14.1.3 統(tǒng)一軟件開發(fā)過程發(fā)展歷程 190
14.2 過程總覽 191
14.3 階段和迭代--時間維度 191
14.3.1 起始階段 192
14.3.2 細化階段 193
14.3.3 構建階段 194
14.3.4 轉(zhuǎn)化階段 195
14.3.5 迭代 195
14.4 過程的靜態(tài)結構 196
14.4.1 工作者 196
14.4.2 活動 196
14.4.3 制品 197
14.4.4 工作流 197
14.5 核心工作流 197
14.6 在統(tǒng)一軟件開發(fā)過程中使用UML 200
14.6.1 起始階段常用UML圖 201
14.6.2 細化階段常用UML圖 202
14.6.3 構建階段常用UML圖 202
14.6.4 轉(zhuǎn)化階段常用UML圖 203
小結 204
習題 205
第15章 小型網(wǎng)上書店系統(tǒng) 207
15.1 小型網(wǎng)上書店系統(tǒng)的需求分析 207
15.1.1 項目背景描述 207
15.1.2 系統(tǒng)需求分析 207
15.1.3 用戶管理模塊 208
15.1.4 訂單管理模塊 208
15.1.5 書目管理模塊 208
15.2 系統(tǒng)的UML基本模型 209
15.2.1 需求分析階段模型 209
15.2.2 基本動態(tài)模型 210
15.3 類的設計與實現(xiàn) 212
15.3.1 系統(tǒng)設計類 213
15.3.2 類的實現(xiàn) 214
15.4 系統(tǒng)的組件圖和部署圖 215
15.4.1 系統(tǒng)的組件圖 215
15.4.2 系統(tǒng)的部署圖 215
第16章 小型二手貨交易系統(tǒng) 217
16.1 需求分析部分 217
16.1.1 子系統(tǒng)劃分 218
16.1.2 系統(tǒng)功能需求 218
16.1.3 非功能需求 221
16.2 系統(tǒng)設計部分 221
16.2.1 系統(tǒng)設計類圖 221
16.2.2 關鍵用例的動態(tài)模型 224
16.2.3 類的代碼框架 227
第17章 汽車服務管理系統(tǒng) 229
17.1 汽車服務管理系統(tǒng)的需求分析 229
17.1.1 系統(tǒng)功能需求 229
17.1.2 車輛及路線管理模塊 230
17.1.3 人員管理模塊 230
17.1.4 信息管理模塊 230
17.2 系統(tǒng)的UML基本模型 230
17.2.1 需求分析階段模型 230
17.2.2 基本動態(tài)模型 231
17.3 系統(tǒng)中的類 234
17.3.1 系統(tǒng)類圖 234
17.3.2 生成類的代碼框架 236
17.4 系統(tǒng)的劃分與部署 237
17.4.1 系統(tǒng)的包圖 237
17.4.2 系統(tǒng)的部署圖 237
附錄 習題答案 238
參考文獻 248