UML 2.2面向對象分析與設計(UML 2.2面向對象分析與設計(第4版))

UML 2.2面向對象分析與設計

UML 2.2面向對象分析與設計(第4版)一般指本詞條

《UML 2.2面向對象分析與設計》是清華大學出版社出版的圖書,作者是(英)班尼特(Bennett, S. ) / (英)麥克羅布(McRobb, S. ) / (英)法默(Farmer, R. )。

基本介紹

  • 作者:(英)班尼特(Bennett,S.)/(英)麥克羅布(McRobb,S.)/(英)法默(Farmer,R.)
  • 譯者:李楊
  • ISBN:9787302304241
  • 頁數:548
  • 定價:69.80元
  • 出版社:清華大學出版社
  • 出版時間:2013-1
  • 副標題:UML 2.2面向對象分析與設計
  • 原作名:Object-Oriented Systems 
內容介紹,作者介紹,作品目錄,

內容介紹

本書對前一版進行了修訂,反映了信息系統開發中最前沿的方法。Bennett、McRobb和Farmer撰寫的這本書是面向對象分析與設計領域的經典圖書,是本科生和研究生“系統分析和設計”課程重要的教學用書。
本書為使用UML 2.2中的主要技術進行面向對象分析與設計給出了清晰實用的結構,遵循疊代和增量型方法(它們基於業內標準的統一過程),將系統分析和設計置於整個系統生命周期的背景中。本書分為4部分:第1部分為信息系統的分析和設計以及面向對象提供了背景;第2部分關注需求獲取和系統分析活動以及UML的基本標記法;第3部分涉及系統架構和設計活動,以及對象設計的UML標記法;第4部分介紹系統的實現,如何組織系統生命周期,以及如何開發可重用

作者介紹

作者介紹:
本書的作者,Simon Bennett、Steve McRobb和Ray Farmer自從1999年本書第1版付梓的時候就一起工作。他們的合作匯集了各自在信息系統學科豐富的教學研究經驗。他們豐富的業界經驗也保證了在實際組織中UML知識實踐套用的正確性。
Simon Bennett是De Montfort大學技術學院的培訓顧問,他在這裡提供UML、分析和設計,以及系統架構方面的培訓。他是計算機智慧型中心的準會員。之前作為企業架構師供職於Celesio AG,作為ICT主管供職於Leicester議會的復興和文化事務部,並且在1999年之前作為首席講師任教於De Montfort大學。Simon是Schaum’s Outline of UML(2nd edition)一書的合著者,該書也由McGraw-Hill出版。
Steve McRobb是De Montfort大學信息學院的首席講師。他教授面向對象系統分析與設計課程十幾年,目前是“計算、信息技術和信息系統管理”研究生課程的課程負責人。他最近的研究範圍主要集中在線上隱私以及ICT對權利關係的影響方面。Steve是Yorkshire Dales國家公園的前任首席行政主任。
Ray Farmer是Coventry大學工程和計算學院的副院長。他的研究興趣包括信息系統分析與設計、面向服務架構以及工程和計算教育方面的教學研究。他定期作為英國和國際上面向對象分析與設計方面的諮詢師。Ray之前在De Montfort大學的信息系統學院擔任不同的職位。

作品目錄

案例A1 Agate公司案例研究——
簡介 1
A1.1 Agate公司介紹 1
A1.2 現有計算機系統 2
A1.3 使用當前系統的業務活動 2
A1.4 需求總結 3
案例B1 FoodCo公司案例研究——
簡介 5
B1.1 FoodCo公司介紹 5
B1.2 現如今的FoodCo公司 8
B1.3 建議 11
第1章 信息系統 13
1.1 介紹 13
1.2 信息系統的歷史 14
1.3 信息系統現狀 16
1.4 何為系統 17
1.4.1 系統思考 18
1.4.2 系統思考的益處 21
1.4.3 信息系統發展過程中
的系統 26
1.5 信息與信息系統 27
1.5.1 信息 27
1.5.2 組織中信息系統的工作 27
1.5.3 信息技術 29
1.6 成功戰略 30
1.6.1 確認商業戰略 30
1.6.2 信息系統的貢獻 31
1.6.3 信息系統和信息技術戰略 31
1.7 本章小結 33
問題回顧 33
案例研究、練習和項目 33
拓展閱讀 34
第2章 信息系統開發面臨的挑戰 35
2.1 介紹 35
2.2 挑戰 36
2.2.1 終端用戶的視角 37
2.2.2 客戶的視角 39
2.2.3 開發者的視角 41
2.3 出錯的原因 42
2.3.1 質量問題 43
2.3.2 生產率問題 45
2.4 道德層面 46
2.4.1 項目內的道德問題 47
2.4.2 更為廣泛的道德問題 48
2.5 失敗的代價 49
2.6 本章小結 50
問題回顧 50
案例研究、練習和項目 50
拓展閱讀 51
第3章 面對挑戰 52
3.1 介紹 52
3.2 問題回響 54
3.2.1 質量問題 54
3.2.2 安裝和運行問題 55
3.2.3 生產率問題 56
3.3 項目的生命周期 57
3.3.1 瀑布型生命周期模型 58
3.3.2 原型 60
3.3.3 疊代和增量型開發 62
3.4 方法論 62
3.4.1 統一軟體開發過程 63
3.4.2 敏捷方法 64
3.5 信息系統開發管理 65
3.6 用戶參與 67
3.7 軟體開發工具 68
3.7.1 模型和技術支持 68
3.7.2 軟體構建 70
3.7.3 使用軟體開發工具的益處
和困難 71
3.8 本章小結 71
問題回顧 71
案例研究、練習和項目 72
拓展閱讀 72
第4章 面向對象 73
4.1 介紹 73
4.2 基本概念 73
4.2.1 對象 74
4.2.2 類和對象 75
4.2.3 類成員 76
4.2.4 一般化和特殊化 78
4.2.5 封裝、信息隱藏和訊息
傳遞 82
4.2.6 多態 84
4.2.7 對象狀態 85
4.3 面向對象的起源 86
4.4 當前的面向對象語言 88
4.5 本章小結 89
問題回顧 90
案例研究、練習和項目 90
拓展閱讀 91
第5章 建模的概念 92
5.1 介紹 92
5.2 模型和圖 92
5.2.1 模型的含義 93
5.2.2 圖 94
5.2.3 模型和圖的區別 96
5.2.4 UML中的模型 97
5.2.5 開發模型 98
5.3 繪製活動圖 99
5.3.1 活動圖的目的 99
5.3.2 活動圖的標記法 100
5.4 開發過程 103
5.4.1 基本原則 104
5.4.2 主要活動 105
5.5 本章小結 109
問題回顧 109
案例研究、練習和項目 110
拓展閱讀 110
第6章 需求獲取 111
6.1 介紹 111
6.2 用戶需求 111
6.2.1 當前系統 112
6.2.2 新的需求 113
6.3 事實發現技術 114
6.3.1 背景閱讀 114
6.3.2 訪談 115
6.3.3 觀察 117
6.3.4 文檔抽樣 118
6.3.5 調查問卷 119
6.3.6 記住上述技術 121
6.3.7 其他技術 122
6.4 用戶參與 122
6.5 文檔需求 123
6.6 用例 125
6.6.1 目的 125
6.6.2 標記法 126
6.6.3 使用原型支持用例 130
6.6.4 CASE工具支持 131
6.6.5 使用用例圖的業務
模型 131
6.6.6 測試和用例 132
6.7 需求獲取和建模 132
6.8 本章小結 133
問題回顧 135
案例研究、練習和項目 135
拓展閱讀 136
案例A2 Agate公司案例研究——
需求模型 138
A2.1 介紹 138
A2.2 需求列表 138
A2.3 執行者和用例 139
A2.4 術語表 144
A2.5 最初架構 144
A2.6 需求建模活動 145
第7章 需求分析 147
7.1 介紹 147
7.2 分析模型 148
7.2.1 分析模型和其他模型
的區別 148
7.2.2 好的分析 149
7.3 分析類圖:概念和標記法 150
7.3.1 類和對象 150
7.3.2 特性 151
7.3.3 特性和狀態 152
7.3.4 實例之間的連結 153
7.3.5 類之間的關聯 154
7.3.6 關聯和狀態 154
7.3.7 多重性 155
7.3.8 操作 156
7.3.9 操作和狀態 158
7.3.10 分析類圖的穩定性 158
7.4 用例實現 159
7.5 繪製類圖 161
7.5.1 健壯性分析 161
7.5.2 分析類stereotype 161
7.5.3 確認類 164
7.5.4 從通信圖到類圖 168
7.5.5 查找對象和類的其他
方法 169
7.5.6 添加和定位特性 173
7.5.7 添加關聯 175
7.5.8 確定多重性 175
7.5.9 尋找操作 175
7.5.10 初始操作分配 175
7.6 CRC卡 176
7.7 整合分析類圖 178
7.8 本章小結 179
問題回顧 179
案例研究、練習和項目 180
拓展閱讀 183
案例A3 Agate公司案例研究——
需求分析 184
A3.1 介紹 184
A3.2 用例實現 184
A3.3 整合分析類圖 189
A3.4 需求分析活動 189
第8章 完善需求模型 191
8.1 介紹 191
8.2 軟體和規範重用 192
8.2.1 為何重用 192
8.2.2 難以重用的原因 192
8.2.3 面向對象對重用的貢獻 193
8.3 進一步向結構中添加內容 195
8.3.1 尋找和建模一般化 195
8.3.2 尋找和建模組合 199
8.3.3 組合或聚集與一般化
的合併 200
8.3.4 組織分析模型——包
和依賴關係 201
8.4 重用軟體組件 202
8.4.1 組件的UML標記法 203
8.4.2 基於組件的開發 204
8.4.3 組件建模實例 205
8.5 軟體開發模式 207
8.5.1 模式的起源 207
8.5.2 什麼是軟體模式 208
8.5.3 分析模式 209
8.6 本章小結 211
問題回顧 211
案例研究、練習和項目 211
拓展閱讀 212
第9章 對象互動 213
9.1 介紹 213
9.2 對象互動和協作 214
9.3 互動順序圖 215
9.3.1 基本概念和標記法 216
9.3.2 管理順序圖 223
9.3.3 分支 226
9.3.4 延續 227
9.3.5 異步訊息 227
9.3.6 時間約束 228
9.3.7 實時系統和並發的建模 229
9.3.8 準備順序圖的指導原則 230
9.4 通信圖 230
9.4.1 基本概念和標記法 231
9.4.2 通信圖中的信息標籤 232
9.5 互動概覽圖 234
9.6 時序圖 236
9.7 模型一致性 237
9.8 本章小結 238
問題回顧 238
案例研究、練習和項目 238
拓展閱讀 239
第10章 規範對象操作 240
10.1 介紹 240
10.2 操作規範的角色 241
10.3 契約 242
10.4 描述操作邏輯 243
10.4.1 非算法型方法 243
10.4.2 算法型方法 246
10.5 對象約束語言 251
10.6 創建操作規範 253
10.7 本章小結 255
問題回顧 255
案例研究、練習和項目 256
拓展閱讀 256
第11章 規範控制 257
11.1 介紹 257
11.2 狀態和事件 258
11.3 基本標記法 259
11.4 深度標記法 264
11.4.1 組合狀態 264
11.4.2 並髮狀態 265
11.4.3 進入和退出偽狀態 267
11.4.4 交叉和選擇偽狀態 268
11.4.5 歷史偽狀態 268
11.4.6 狀態機的特殊化 269
11.5 準備狀態機 269
11.5.1 行為型方法 270
11.5.2 生命周期方法 273
11.6 協定型和行為型狀態機 273
11.7 一致性檢查 274
11.8 質量準則 274
11.9 本章小結 275
問題回顧 275
案例研究、練習和項目 276
拓展閱讀 276
案例A4 Agate公司案例研究——
深入分析 277
A4.1 介紹 277
A4.2 順序圖 277
A4.3 狀態機 278
A4.4 操作規範 280
A4.5 對類圖的進一步修訂 281
A4.6 需求分析的深入活動 283
第12章 設計 285
12.1 介紹 285
12.2 設計和分析有何不同 285
12.2.1 設計 286
12.2.2 疊代型生命周期中
的設計 287
12.3 邏輯設計和物理設計 287
12.4 系統設計和詳細設計 289
12.4.1 系統設計 290
12.4.2 詳細設計 290
12.5 設計的質量和目標 290
12.5.1 目標和約束 291
12.5.2 設計折中 294
12.5.3 設計中的可衡量目標 295
12.6 本章小結 296
問題回顧 296
案例研究、練習和項目 297
拓展閱讀 297
第13章 系統架構 298
13.1 介紹 298
13.2 架構的含義 299
13.3 生成架構模型的原因 301
13.4 對系統架構的影響 302
13.4.1 現有系統 303
13.4.2 企業級架構 304
13.4.3 技術參考架構 305
13.5 架構風格 305
13.5.1 子系統 306
13.5.2 分層和分區 307
13.5.3 MVC架構 311
13.5.4 分散式系統架構 314
13.5.5 架構和開發的組織
結構 316
13.6 並發 317
13.7 處理器分配 318
13.8 系統設計標準 319
13.8.1 資料庫設計 319
13.8.2 用戶界面設計標準 319
13.8.3 構建準則 319
13.9 Agate軟體架構 320
13.10 本章小結 321
問題回顧 322
案例研究、練習和項目 322
拓展閱讀 322
第14章 詳細設計 324
14.1 介紹 324
14.2 在面向對象的詳細設計中
添加的內容 325
14.3 特性和操作規範 325
14.3.1 特性的數據類型 325
14.3.2 派生特性 326
14.3.3 主操作 327
14.3.4 操作簽名 328
14.3.5 可見性 329
14.4 將特性和操作歸入類中 331
14.4.1 分配職責 331
14.4.2 接口 332
14.4.3 耦合和內聚 333
14.4.4 Liskov替換原則 336
14.5 設計關聯 336
14.5.1 一對一關聯 337
14.5.2 一對多關聯 338
14.5.3 多對多關聯 340
14.5.4 保持類最小 341
14.6 完整性約束 342
14.6.1 引用完整性 342
14.6.2 依賴約束 343
14.6.3 域完整性 344
14.7 設計操作算法 344
14.8 本章小結 345
問題回顧 345
案例研究、練習和項目 346
拓展閱讀 346
第15章 設計模式 347
15.1 介紹 347
15.2 軟體開發模式 348
15.2.1 框架 348
15.2.2 模式目錄和語言 348
15.2.3 軟體開發原則和模式 348
15.2.4 模式和非功能性需求 349
15.3 文檔模式——模式模板 349
15.3.1 模板內容 349
15.3.2 模板的其他方面 350
15.4 設計模式 350
15.4.1 設計模式的類型 350
15.4.2 創建型模式 351
15.4.3 結構型模式 355
15.4.4 行為型模式 359
15.5 如何使用設計模式 363
15.6 使用模式的優缺點 364
15.7 本章小結 365
問題回顧 365
案例研究、練習和項目 365
拓展閱讀 365
第16章 人機互動 367
16.1 介紹 367
16.2 用戶界面 368
16.2.1 什麼是用戶界面 368
16.2.2 對話隱喻 368
16.2.3 直接操縱隱喻 370
16.2.4 良好對話的特徵 372
16.2.5 風格指導 374
16.3 用戶界面設計方法 375
16.3.1 非正式方法和正式
方法 375
16.3.2 實現可使用性 381
16.4 標準和合法需求 382
16.5 本章小結 383
問題回顧 384
案例研究、練習和項目 384
拓展閱讀 384
第17章 設計邊界類 386
17.1 介紹 386
17.2 表示層結構 387
17.3 為用戶界面建立原型 388
17.4 設計類 390
17.5 使用順序圖設計互動 393
17.6 類圖回顧 399
17.7 用戶界面設計模式 400
17.8 使用狀態機建模界面 402
17.9 本章小結 408
問題回顧 409
案例研究、練習和項目 409
拓展閱讀 409
第18章 數據管理設計 411
18.1 介紹 411
18.2 持久性 412
18.2.1 持久性需求 412
18.2.2 存儲機制概述 412
18.2.3 持久性架構 413
18.3 檔案系統 415
18.3.1 檔案和記錄結構 415
18.3.2 檔案的組織方式 416
18.3.3 檔案訪問 416
18.3.4 檔案類型 419
18.3.5 檔案使用示例 420
18.4 資料庫管理系統 421
18.4.1 檔案和資料庫 421
18.4.2 資料庫的類型 423
18.5 設計關係型資料庫管理
系統 425
18.5.1 關係型資料庫 425
18.5.2 數據建模和規範化 426
18.5.3 將類映射為表 430
18.6 設計對象資料庫管理系統 432
18.7 分散式資料庫 436
18.8 數據管理類設計 438
18.8.1 分層結構 438
18.8.2 PersistentObject超類 439
18.8.3 資料庫代管者框架 441
18.8.4 使用數據管理產品
或框架 445
18.9 本章小結 447
問題回顧 447
案例研究、練習和項目 447
拓展閱讀 448
案例A5 Agate公司案例——簡介 449
A5.1 介紹 449
A5.2 架構 449
A5.3 用例示例 450
A5.4 類圖 451
A5.5 順序圖 455
A5.6 資料庫設計 458
A5.7 狀態機 459
A5.8 設計活動 460
第19章 實現 461
19.1 介紹 461
19.2 軟體實現 462
19.2.1 軟體工具 462
19.2.2 編程和文檔標準 464
19.3 組件圖 465
19.4 部署圖 467
19.5 軟體測試 469
19.5.1 由誰執行測試 469
19.5.2 測試內容 470
19.5.3 測試文檔 472
19.6 數據轉換 473
19.7 用戶文檔和培訓 474
19.7.1 用戶手冊 474
19.7.2 用戶培訓 474
19.8 實現策略 475
19.9 評審和維護 476
19.9.1 下一步驟 476
19.9.2 評審過程和評估報告 477
19.9.3 維護活動 478
19.10 本章小結 480
問題回顧 480
案例研究、練習和項目 481
拓展閱讀 481
第20章 軟體重用 482
20.1 介紹 482
20.2 為什麼要進行重用 482
20.2.1 項目的選擇 484
20.2.2 組織的結構 485
20.2.3 重用合適的單元 486
20.2.4 組件標準 487
20.3 為重用規劃策略 489
20.3.1 選擇視角法 489
20.3.2 RSEB 490
20.4 商用組件 491
20.5 案例研究示例 493
20.6 Web服務 499
20.7 本章小結 501
問題回顧 501
案例研究、練習和項目 501
拓展閱讀 502
第21章 軟體開發過程 503
21.1 介紹 503
21.2 過程、方法和方法論 504
21.2.1 方法論 504
21.2.2 為何使用方法論 506
21.3 統一軟體開發過程 506
21.4 動態系統開發方法 510
21.4.1 Atern生命周期 511
21.4.2 DSDM Atern技術 513
21.4.3 DSDM中的項目選擇 514
21.5 Scrum 514
21.6 極限編程 516
21.7 選擇方法論時的考慮 517
21.8 硬性與軟性方法論 519
21.9 本章小結 521
問題回顧 521
案例研究、練習和項目 522
拓展閱讀 522
附錄A 標記法匯總 523
附錄B 部分解決方案和答案指導 531
術語表 540

相關詞條

熱門詞條

聯絡我們