基本信息
原書名: UML 2 and the Unified Process : Practical Object-Oriented Analysis and Design (2nd Edition)
原出版社: Addison-Wesley作者: (美)Jim Arlow,Ila Neustadt
譯者: 方貴賓 胡輝良
出版社:機械工業出版社
ISBN:711118775X
上架時間:2006-6-29
出版日期:2006 年6月
開本:16開
頁碼:400
版次:2-1
內容簡介
本書在第1版的基礎上針對uml2.0進行了更新,重點在藍圖uml,即使用正式、精確的uml模型詳細規定軟體系統。本書不僅以清晰易懂的術語詳細描述了如何套用uml和統一過程進行面向對象分析和設計過程,還結合實例討論了大量可以立即套用的實踐技術。.
本書適合面向對象技術的分析師、設計師、軟體工程技術人員閱讀,同時,也非常適合作為高等院校uml課程的教材。
本書為使用uml 2.0進行面向對象的分析和設計提供了實用的指導,描述面向對象的分析和設計如何適應統一過程中定義的軟體開發生命周期。
本書包含許多實用、有效並能迅速套用於現實環境的技巧。通讀本書,您將學會面向對象的分析和設計技術,學習uml的語法和語義以及統一過程的相關方面。本書從oo分析和設計者的角度精確而簡潔地總結了uml和統一過程。 ..
本書特點
● 每章前面有一張詳細的章節指示圖概述章節內容,書中包含大量詳細圖表清晰描述了uml 2.0
● 每章的小結系統總結了該章內容
● 對新uml 2.0語義的解釋易於理解
● 大量現實示例
● 關於對象約束語言(ocl)的討論是全新的內容
● 介紹了omg的模型驅動構架(mda)
作者簡介
Jim Arlow自1990年起就編寫和設計面向對象的軟體系統。他曾為許多一流公司(如英國航空公司和M&G)設計對象模型。他在歐洲是一個受人尊敬的OO顧問,己編寫和出版了許多關於對象技術和Java 的培訓教材。他經常出席像Object World這樣的會議並發言,還應邀到倫敦學院(University College London)、城市大學(City University)、英國計算機學會(British Computer Society)作演講。
目錄
譯者序.
前言
第一部分 uml和up介紹
第1章 什麼是uml 1
1.1 章節指示圖 1
1.2 什麼是uml 3
1.3 uml的誕生 3
1.4 mda—uml的未來 4
1.5 為什麼“統一” 6
1.6 對象和uml 6
1.7 uml結構 6
1.8 uml構造塊 7
1.8.1 物件 7
1.8.2 關係 7
1.8.3 圖 8
1.9 uml 公共機 9
1.9.1 規格說明 10
1.9.2 修飾 10
1.9.3 公共分類 11
1.9.4 擴展機制 12
.1.10 構架 14
1.11 小結 15
第2章 什麼是統一過程 17
2.1 章節指示圖 17
2.2 什麼是up 18
2.3 up的誕生 18
2.4 up和rup 20
2.5 為項目定製up 21
2.6 up公理 21
2.7 up是疊代和增量過程 22
2.7.1 疊代工作流 22
2.7.2 基線和增量 23
2.8 up結構 23
2.9 up階段 25
2.9.1 初始—目標 25
2.9.2 初始—焦點 25
2.9.3 初始—里程碑:生命期目標 25
2.9.4 細化—目標 25
2.9.5 細化—焦點 26
2.9.6 細化—里程碑:生命期構架 26
2.9.7 構造—目標 26
2.9.8 構造—焦點 26
2.9.9 構造—里程碑:初始運作功能 27
2.9.10 移交—目標 27
2.9.11 移交—焦點 27
2.9.12 移交—里程碑:產品發布 28
2.10 小結 28
第二部分 需 求
第3章 需求工作流 29
3.1 章節指示圖 29
3.2 需求工作流 31
3.3 軟體需求—元模型 31
3.4 需求工作流細節 32
3.5 需求的重要性 34
3.6 定義需求 34
3.6.1 需求模型 34
3.6.2 形式良好的需求 34
3.6.3 功能性和非功能性需求 35
3.6.4 組織需求 35
3.6.5 需求屬性 36
3.7 找出需求 37
3.7.1 需求抽取 37
3.7.2 訪談 38
3.7.3 問卷調查 39
3.7.4 需求會議 39
3.8 小結 39
第4章 用例建模 41
4.1 章節指示圖 41
4.2 用例建模 43
4.3 up 活動:找出參與者和用例 43
4.3.1 主體(系統邊界) 44
4.3.2 什麼是參與者 44
4.3.3 什麼是用例 45
4.3.4 項目辭彙表 47
4.4 up 活動:細化用例 48
4.5 用例規格說明 48
4.5.1 用例名稱 49
4.5.2 用例 id 50
4.5.3 簡要描述 50
4.5.4 參與者 50
4.5.5 前置條件和後置條件 50
4.5.6 主流 50
4.5.7 建模附流 54
4.6 需求跟蹤 57
4.7 何時適用用例建模 57
4.8 小結 58
第5章 高級用例建模 60
5.1 章節指示圖 60
5.2 參與者泛化 61
5.3 用例泛化 62
5.4 莍nclude?65
5.5 莈xtend?67
5.5.1 擴展用例 68
5.5.2 多重插入片段 69
5.5.3 條件擴展 70
5.6 何時使用高級特徵 70
5.7 書寫用例的技巧 71
5.7.1 保持用例簡短 71
5.7.2 關注“什麼”,而不是“如何” 71
5.7.3 避免功能分解 72
5.8 小結 73
第三部分 分 析
第6章 分析工作流 75
6.1 章節指示圖 75
6.2 分析工作流 75
6.3 分析製品—元模型 76
6.4 分析工作流細節 77
6.5 分析模型—經驗法則 77
6.6 小結 78 第7章 對象和類 80
7.1 章節指示圖 80
7.2 什麼是對象 82
7.2.1 封裝 83
7.2.2 訊息機制 84
7.3 uml 韻蠓??84
7.3.1 對象屬性值 85
7.4 什麼是類 85
7.4.1 類和對象 86
7.4.2 對象實例化 87
7.5 uml 類符號 87
7.5.1 名稱分欄 88
7.5.2 屬性分欄 89
7.5.3 操作分欄 91
7.5.4 類構造型語法 94
7.6 範圍 94
7.6.1 實例範圍和類範圍 95
7.6.2 範圍決定訪問 95
7.7 對象構造和銷毀 95
7.7.1 構造函式—示例 clubmember 類 96
7.7.2 析構函式—示例 clubmember 類 97
7.8 小結 97
第8章 找出分析類 100
8.1 章節指示圖 100
8.2 up活動:分析用例 102
8.3 什麼是分析類 102
8.3.1 分析類剖析 103
8.3.2 如何產生良好的分析類 104
8.3.3 分析類經驗法則 105
8.4 找出類 105
8.4.1 使用名詞/動詞分析找出類 106
8.4.2 使用crc分析找出類 107
8.4.3 採用rup構造型找出類 108
8.4.4 從其他來源找出類 109
8.5 產生初步分析模型 110
8.6 小結 111
第9章 關係 113
9.1 章節指示圖 113
9.2 什麼是關係 115
9.3 什麼是連結 115
9.3.1 對象圖 115
9.3.2 路徑 116
9.4 什麼是關聯 117
9.4.1 關聯語法 117
9.4.2 多重性 118
9.4.3 導航性 121
9.4.4 關聯和屬性 122
9.4.5 關聯類 124
9.4.6 受限關聯 125
9.5 什麼是依賴 125
9.5.1 使用依賴 126
9.5.2 抽象依賴 127
9.5.3 授權依賴 128
9.6 小結 129
第10章 繼承和多態 132
10.1 章節指示圖 132
10.2 泛化 133
10.2.1 類泛化 133
10.3 類繼承 133
10.3.1 覆寫 134
10.3.2 抽象操作和類 135
10.3.3 抽象層次 135
10.3.4 多重繼承 136
10.4 多態 136
10.4.1 多態示例 136
10.5 高級泛化 138
10.5.1 泛化集合 138
10.5.2 強類型 139
10.6 小結 141
第11章 分析包 143
11.1 章節指示圖 143
11.2 什麼是包 143
11.3 包和命名空間 145
11.4 嵌套包 145
11.5 包依賴 146
11.5.1 傳遞性 147
11.6 包泛化 147
11.7 構架分析 148
11.7.1 找出分析包 149
11.7.2 循環包依賴 149
11.8 小結 150
第12章 用例實現 153
12.1 章節指示圖 153
12.2 up 活動:分析用例 155
12.3 什麼是用例實現 156
12.4 用例實現—元素 156
12.5 互動 157
12.6 生命線 157
12.7 訊息 157
12.7.1 同步、異步和返回訊息 158
12.7.2 創建和銷毀訊息 159
12.7.3 發現和丟失訊息 159
12.8 互動圖 159
12.9 順序圖 160
12.9.1 生命線和訊息 160
12.9.2 激活 162
12.9.3 注釋順序圖 163
12.9.4 狀態常量和約束 163
12.10 組合區和操作符 164
12.10.1 採用opt和alt分支 166
12.10.2 採用loop和break疊代 168 ..
12.11 通信圖 170
12.11.1 疊代 171
12.11.2 分支 172
12.12 小結 173
第13章 高級用例實現 176
13.1 章節指示圖 176
13.2 互動重現 176
13.2.1 參數 178
13.2.2 門 179
13.3 接續 181
13.4 小結 182
第14章 活動圖 183
14.1 章節指示圖 183
14.2 什麼是活動圖 183
14.3 活動圖與up 184
14.4 活動 185
14.5 活動的語義 186
14.6 活動分區 188
14.7 動作節點 189
14.7.1 調用動作節點 190
14.7.2 接受時間事件的動作節點 191
14.8 控制節點 192
14.8.1 初始節點和終止節點 192
14.8.2 判決節點和匯合節點 192
14.8.3 派生節點和會聚節點—並發 193
14.9 對象節點 194
14.9.1 對象節點緩衝區的語義 194
14.9.2 用狀態展示對象 195
14.9.3 活動參數 195
14.10 別針 197
14.11 小結 197
第15章 高級活動圖 200
15.1 章節指示圖 200
15.2 連線器 202
15.3 可中斷活動區 202
15.4 異常處理 202
15.5 擴展節點 203
15.6 傳送信號和接受事件 204
15.7 流化 206
15.8 高級對象流特性 206
15.8.1 輸入和輸出效果 206
15.8.2 莝election?207
15.8.3 莟ransformation?207
15.9 廣播和廣收 207
15.10 參數集合 208
15.11 莄entralbuffer冉詰?209
15.12 互動概圖 210
15.13 小結 211
第四部分 設 計
第16章 設計工作流 213
16.1 章節指示圖 213
16.2 設計工作流 213
16.3 設計製品—元模型 214
16.3.1 製品跟蹤關係 215
16.3.2 需要維護兩個模型嗎 216
16.4 設計工作流細節 217
16.5 up活動:構架設計 218
16.6 小結 218
第17章 設計類 220
17.1 章節指示圖 220
17.2 up活動:類設計 221
17.3 什麼是設計類 222
17.4 設計類剖析 223
17.5 形式良好的設計類 223
17.5.1 完整性和充分性 224
17.5.2 原始性 224
17.5.3 高內聚 225
17.5.4 低耦合 225
17.6 繼承 226
17.6.1 聚合與繼承 226
17.6.2 多重繼承 227
17.6.3 繼承與接口實現 227
17.7 模板類 228
17.8 嵌套類 229
17.9 小結 230
第18章 精化分析關係 233
18.1 章節指示圖 233
18.2 設計關係 235
18.3 聚合和組合 235
18.4 聚合語義 236
18.5 組合語義 237
18.5.1 組合與屬性 238
18.6 如何精化分析關係 238
18.7 一對一關聯 239
18.8 多對一關聯 239
18.9 一對多關聯 240
18.10 列集 240
18.10.1 映射表 240
18.11 具體化關係 242
18.11.1 多對多關聯 242
18.11.2 雙向關聯 243
18.11.3 關聯類 244
18.12 結構化類的組合 244
18.12.1 結構化類元 244
18.12.2 結構化類 245
18.13 小結 247
第19章 接口和組件 252
19.1 章節指示圖 252
19.2 up活動:子系統設計 254
19.3 什麼是接口 254
19.4 已供接口和必需接口 255
19.5 接口實現與繼承 257
19.6 連線埠 260
19.7 接口和基於組件的開發 261
19.8 什麼是組件 261
19.9 組件構造型 262
19.10 子系統 262
19.11 發現接口 263
19.12 採用接口進行設計 263
19.12.1 外觀模式 264
19.12.2 物理構架和分層模式 264
19.13 接口的優點和缺點 265
19.14 小結 266
第20章 用例實現(設計) 269
20.1 章節指示圖 269
20.2 up活動:用例設計 271
20.3 用例實現(設計) 272
20.4 互動圖(設計) 272
20.5 建模並發 274
20.5.1 活動類 274
20.5.2 順序圖中的並發 276
20.5.3 通信圖中的並發 278
20.6 子系統互動 279
20.7 時序圖 279
20.8 用例實現(設計)示例 282
20.9 小結 284
第21章 狀態機 288
21.1 章節指示圖 288
21.2 狀態機 290
21.2.1 行為狀態機和協定狀態機 290
21.2.2 狀態機與類 291
21.3 狀態機和up 291
21.4 狀態圖 291
21.5 狀態 292
21.5.1 狀態語法 293
21.6 遷移 293
21.6.1 連線遷移—交叉偽狀態 294
21.6.2 分支遷移—選擇偽狀態 295
21.7 事件 296
21.7.1 調用事件 296
21.7.2 信號事件 297
21.7.3 改變事件 298
21.7.4 時間事件 299
21.8 小結 299
第22章 高級狀態機 301
22.1 章節指示圖 301
22.2 複合狀態 301
22.2.1 簡單複合狀態 302
22.2.2 正交複合狀態 304
22.3 子狀態機狀態 306
22.4 子狀態機通信 307
22.5 歷史 308
22.5.1 淺度歷史 308
22.5.2 深度歷史 309
22.6 小結 310
第五部分 實 現
第23章 實現工作流 311
23.1 章節指示圖 311
23.2 實現工作流 311
23.3 實現製品—元模型 312
23.4 實現工作流細節 313
23.5 製品 314
23.6 小結 314
第24章 部署 315
24.1 章節指示圖 315
24.2 up活動:構架實現 315
24.3 部署圖 316
24.4 節點 317
24.5 製品 318
24.6 部署 321
24.7 小結 322
第六部分 補充材料
第25章 ocl 介紹 325
25.1 章節指示圖 325
25.2 什麼是ocl 327
25.3 為什麼採用ocl 327
25.4 ocl表達式語法 327
25.5 包語境和路徑名 329
25.6 表達式語境 329
25.7 ocl表達式類型 330
25.8 表達式主體 331
25.8.1 注釋、關鍵字和優先權規則 331
25.8.2 ocl類型系統 332
25.8.3 原始類型 333
25.8.4 tuple 335
25.8.5 中綴操作符 335
25.8.6 ocl列集 335
25.8.7 疊代操作 340
25.9 ocl導航 343
25.9.1 語境實例內導航 343
25.9.2 通過關聯導航 343
25.9.3 通過多重關聯導航 345
25.10 ocl表達式類型細節 346
25.10.1 inv: 346
25.10.2 pre:、post: 和 @pre 347
25.10.3 body: 348
25.10.4 init: 349
25.10.5 def: 349
25.10.6 let表達式 350
25.10.7 derive: 351
25.11 其他圖中的ocl 352
25.11.1 互動圖中的ocl 352
25.11.2 活動圖中的ocl 354
25.11.3 狀態圖中的ocl 354
25.12 高級主題 356
25.12.1 關聯類的雙嚮導航 356
25.12.2 通過受限關聯導航 357
25.12.3 繼承的關聯 357
25.12.4 ocl訊息 359
25.13 小結 360
附錄1 用例模型舉例 365
附錄2 xml 和用例 370
參考書目 376
索引 378...