第一部分緒 論
第1章 面向對象分析和設計
1. 1 在OOA/D中應用UML和模式
1. 2 分配職責
1. 3 什么是分析和設計
1. 4 什么是面向對象分析和設計
1. 5 示例
1. 6 UML
1. 7 進一步學習的參考資料
第2章 迭代開發(fā)和統(tǒng)一過程
2. 1 最重要的UP思想:迭代開發(fā)
2. 2 其他的UP最佳實踐和概念
2. 3 UP階段和面向進度表的術語
2. 4 UP流程(工作流)
2. 5 流程定制和開發(fā)案例
2. 6 敏捷UP
2. 7 順序"瀑布"生命周期
2. 8 何時你會知道自己并不了解UP
2. 9 進一步學習的參考資料
第3章 案例研究:NextGenPOS系統(tǒng)
3. 1 NextGenPOS系統(tǒng)
3. 2 架構層和案例研究重點
3. 3 本書的策略:迭代學習和開發(fā)
第二部分初 始
第4章 初始
4. 1 初始:一個類比
4. 2 初始階段可能會非常短暫
4. 3 初始階段會創(chuàng)建哪些工件
4. 4 何時你會知道自己并不了解初始階段
第5章 理解需求
5. 1 需求的類型
5. 2 進一步學習的參考資料
第6章 用例模型:寫出實際語境中
的需求
6. 1 目標和情節(jié)
6. 2 背景
6. 3 用例和附加價值
6. 4 用例和功能性需求
6. 5 用例類型和格式
6. 6 詳述用例的示例:處理銷售
6. 7 各部分的解釋
6. 8 用例的目標和范圍
6. 9 找出主要參與者. 目標和用例
6. 10 恭喜:用例已經被寫出, 但并不完美
無缺
6. 11 以一種簡樸的不考慮用戶界面的風格
來寫出用例
6. 12 參與者
6. 13 用例圖
6. 14 語境中的需求和低級別特性列表
6. 15 用例不是面向對象的
6. 16 統(tǒng)一過程中的用例
6. 17 案例研究:NextGen的初始階段中的
用例
6. 18 進一步學習的參考資料
6. 19 統(tǒng)一過程的工件和處理語境
第7章 識別其他需求
7. 1 NextGenPOS系統(tǒng)的示例
7. 2 NextGen系統(tǒng)示例:補充規(guī)范(部分)
7. 3 注解:補充規(guī)范
7. 4 NextGen示例:構想(部分)
7. 5 注解:構想
7. 6 NextGen示例:術語表(部分)
7. 7 注解:術語表(數(shù)據字典)
7. 8 可靠的規(guī)范:一個矛盾
7. 9 項目網站上的聯(lián)機工件
7. 10 在初始階段不需要太多的UML圖示
7. 11 統(tǒng)一過程中的其他需求工件
7. 12 進一步學習的參考資料
7. 13 統(tǒng)一過程的工件和處理語境
第8章 從初始到細化
8. 1 檢驗點:初始階段發(fā)生了什么
8. 2 細化
8. 3 計劃下一次迭代
8. 4 迭代1的需求和重點:基本的OOA/D
技巧
8. 5 哪些工件在細化階段中開始
8. 6 何時你會知道自己并不了解細化階段
第三部分 細化迭代1
第9章 用例模型:繪制系統(tǒng)順序圖
9. 1 系統(tǒng)行為
9. 2 系統(tǒng)順序圖
9. 3 一個SSD的示例
9. 4 系統(tǒng)之間SSD
9. 5 SSD和用例
9. 6 系統(tǒng)事件和系統(tǒng)邊界
9. 7 命名系統(tǒng)時間及操作
9. 8 顯示用例文本
9. 9 SSD和術語表
9. 10 UP內的SSD
9. 11 進一步學習的參考資料
9. 12 UP工件
第10章 領域模型, 可視化概念
10. 1 領域模型
10. 2 概念類識別
10. 3 銷售領域的候選概念類
10. 4 領域建模的指導原則
10. 5 分析相似的概念類--Register與
"POST"的比較
10. 6 為非現(xiàn)實世界建模
10. 7 規(guī)格說明或描述概念類
10. 8 UML表示法. 模型以及方法:多重
觀點
10. 9 縮小表示差距
10. 10 示例:NextGenPOS領域模型
10. 11 UP中的領域模型
10. 12 進一步學習的參考資料
10. 13 UPT件
第11章 領域模型:添加關聯(lián)
11. 1 關聯(lián)
11. 2 UML關聯(lián)表示法
11. 3 找出關聯(lián)--通用關聯(lián)列表
11. 4 關聯(lián)的指導原則
11. 5 角色
11. 6 關聯(lián)應該詳細到何種程度
11. 7 關聯(lián)的命名
11. 8 兩種類型間的多重關聯(lián)
11. 9 關聯(lián)以及實現(xiàn)
11. 10 NextGenPOS的領域模型中的關聯(lián)
11. 11 NextGenPOS的領域模型
第12章 領域模型:添加屬性
12. 1 屬性
12. 2 UML的屬性表示法
12. 3 有效的屬性類型
12. 4 非原始的數(shù)據類型類
12. 5 設計潛行:沒有屬性是外鍵
12. 6 為屬性的數(shù)量和單位建模
12. 7 NextGen的領域模型中的屬性
12. 8 從SalesLineltem到Item的多重性
12. 9 領域模型小結
第13章 用例模型:用操作契約增加
細節(jié)
13. 1 契約
13. 2 示例契約:enterItem
13. 3 契約條目的描述
13. 4 后置條件
13. 5 討論--enterItem的后置條件
13. 6 書寫契約將導致領域模型更新
13. 7 什么時候契約是有用的?契約與用例
的比較
13. 8 指導原則:契約
13. 9 NextGenPOS示例:契約
13. 10 領域模型的變化
13. 11 契約. 操作以及UML
13. 12 UP內的操作契約
13. 13 進一步學習的參考資料
第14章 迭代中的從需求到設計
14. 1 反復地做正確的事. 正確地做事
14. 2 難道這樣做不需要花費數(shù)周嗎?
是的, 完全不需要
14. 3 開始對象設計
第15章 交互圖表示法
15. 1 順序圖和協(xié)作圖
15. 2 協(xié)作圖示例:makePayment
15. 3 順序圖示例:makePayment
15. 4 交互圖價值不菲
15. 5 迭代圖的通用表示法
15. 6 協(xié)作圖的基本表示法
15. 7 順序圖的基本表示法
第16章 GRASP:根據職責設計對象
16. 1 職責和方法
16. 2 職責和交互圖
16. 3 模式
16. 4 GRASP:在職責分配中的通用原則
模式
16. 5 UML類圖表示法
16. 6 信息專家模式(專家模式)
16. 7 創(chuàng)建者模式
16. 8 低耦合模式
16. 9 高內聚模式
16. 10 控制器模式
16. 11 對象設計和CRC卡片
16. 12 進一步學習的參考資料
第17章 設計模型:GRASP模式與用
例實現(xiàn)
17. 1 用例實現(xiàn)
17. 2 工件注釋
17. 3 NextGen迭代的用例實現(xiàn)
17. 4 對象設計:makeNewSale
17. 5 對象設計:enterItem
17. 6 對象設計:endSale
17. 7 對象設計:makePayment
17. 8 對象設計:startUp
17. 9 將UI層連接到領域層
17. 10 UP中的用例實現(xiàn)
17. 11 小結
第18章 設計模型, 決定可見性
18. 1 對象之間的可見性
18. 2 可見性
18. 3 在UML中表示可見性
第19章 設計模型:創(chuàng)建設計類圖
19. 1 何時創(chuàng)建DCD
19. 2 DCD示例
19. 3 DCD和UP術語
19. 4 領域模型中的類與設計模型中的類
的比較
19. 5 創(chuàng)建NextGenPOS的DCD
19. 6 成員細節(jié)的表示法
19. 7 DCD. 繪圖和CASET具
19. 8 UP中的DCD
19. 9 UP工件
第20章 實現(xiàn)模型:將設計映射成代碼
20. 1 編程和開發(fā)過程
20. 2 將設計映射成代碼
20. 3 從DCD創(chuàng)建類的定義
20. 4 從交互圖創(chuàng)建方法
20. 5 代碼中的容器/集合類
20. 6 異常和錯誤處理
20. 7 定義Sale--makeLineItem方法
20. 8 實現(xiàn)的順序
20. 9 測試為先的編程
20. 10 映射設計到代碼的小結
20. 11 編碼方案的介紹
第四部分 細化迭仰
第21章 迭代2和其需求
21. 1 迭代2的重點:對象設計和模式
21. 2 從迭代1到迭代2
21. 3 迭代2的需求
21. 4 迭代2中面向分析的工件的改進
第22章 GRASP:更多的職責分配模式
22. 1 多態(tài)模式
22. 2 純虛構模式
22. 3 中介模式
22. 4 受保護變化模式
第23章 用GoF設計模式設計用例實現(xiàn)
23. 1 適配器模式(GoF)
23. 2 設計中的"分析"發(fā)現(xiàn):領域模型
23. 3 工廠模式(GoF)
23. 4 單子模式(GoF)
23. 5 接口變化的外部服務問題的結論
23. 6 策略模式(GoF)
23. 7 組合模式(GoF)和其他設計原則
23. 8 外觀模式(GoF)
23. 9 觀察者/發(fā)布-訂閱/委托事件模型
(GoF)
23. 10 結論
23. 11 進一步學習的參考資料
第五部分 細化迭代3
第24章 迭代3和其需求
24. 1 迭代3的需求
24. 2 迭代3的重點
第5章 建立用例的關系
25. 1 包含關系
25. 2 術語:具體用例. 抽象用例. 基用例
和附加用例
25. 3 擴展關系
25. 4 泛化關系
25. 5 用例圖
第26章 泛化建模
26. 1 領域模型的新概念
26. 2 泛化
26. 3 定義概念性超類和子類
26. 4 何時定義一個概念性子類
26. 5 何時定義一個概念性超類
26. 6 NextGenPOS概念類的層次
26. 7 抽象概念類
26. 8 為變化的狀態(tài)建模
26. 9 軟件中的類的層次和繼承
第27章 精化領域模型
27. 1 關聯(lián)類
27. 2 聚集與組合
27. 3 時間間隔和產品價格--改正迭代1
中的"錯誤"
27. 4 關聯(lián)角色名稱
27. 5 作為概念的角色與關聯(lián)角色的比較
27. 6 導出元素
27. 7 受限關聯(lián)
27. 8 自反關聯(lián)
27. 9 有序元素
27. 10 使用包來組織領域模型
第28章 增加新的SSD和契約
28. 1 新的系統(tǒng)順序圖
28. 2 新的系統(tǒng)操作
28. 3 新的系統(tǒng)操作契約
第29章 在狀態(tài)圖中為行為建模
29. 1 事件. 狀態(tài)和轉移
29. 2 狀態(tài)圖
29. 3 UP中的狀態(tài)圖在哪里
29. 4 用例的狀態(tài)圖
29. 5 POS應用的用例狀態(tài)圖
29. 6 從狀態(tài)圖受益的類
29. 7 外部事件和內部事件的說明
29. 8 狀態(tài)圖的另外表示法
29. 9 進一步學習的參考資料
第30章 應用模式設計邏輯架構
30. 1 軟件架構
30. 2 架構模式:層
30. 3 模型-視圖分離原則
30. 4 進一步學習的參考資料
第31章 組織模型包的設計和實現(xiàn)
31. 1 包組織的指導原則
31. 2 更多的UML包表示法
31. 3 進一步學習的參考資料
第32章 架構分析和SAD的介紹
32. 1 架構分析
32. 2 架構的類型和視圖
32. 3 技巧:識別和分析架構因素
32. 4 示例:部分NextGenPOS架構因素表
32. 5 技巧:架構因素的解析
32. 6 架構分析中各主題的小結
32. 7 UP中的架構分析
32. 8 進一步學習的參考資料
第33章 使用對象和模式設計更多用例
的實現(xiàn)
33. 1 在本地服務上實現(xiàn)故障恢復, 使用
本地高速緩存提高性能
33. 2 故障處理
33. 3 通過代理(GoF)在本地服務上實現(xiàn)
故障恢復
33. 4 對非功能性或質量需求進行設計
33. 5 通過適配器訪問外部物理設備:購買
與開發(fā)的比較
33. 6 對一族互相關聯(lián)的對象使用抽象工廠
(GoF)
33. 7 通過多態(tài)性和DoItMyself處理支付
33. 8 結論
第34章 使用模式設計持久化框架
34. 1 問題:持久化對象
34. 2 解決方案:來自持久化框架的持久仕
服務
34. 3 框架
34. 4 持久化服務和框架的需求
34. 5 關鍵思想
34. 6 模式:將對象表示為表
34. 7 UML的數(shù)據建模Profile
34. 8 模式:對象標識
34. 9 使用外觀訪問持久化服務
34. 10 映射對象:數(shù)據庫映射器或數(shù)據庫
代理模式
34. 11 使用模板方法模式設計框架
34. 12 使用模板方法模式實現(xiàn)物化
34. 13 使用映射器工廠配置映射器
34. 14 模式:緩存管理
34. 15 在一個類里合并和隱藏SQL語句
34. 16 事務狀態(tài)和狀態(tài)模式
34. 17 使用命令模式設計事務
34. 18 使用虛擬代理延遲物化
34. 19 如何表示表中的關系
34. 20 持久化對象超類和分離問題不同
方面的設計原則
34. 21 遺留問題
第六部分 特殊專題
第35章 繪圖及其工具
35. 1 冥思苦想的設計和形象思考
35. 2 在開發(fā)過程中畫UML圖的建議
35. 3 工具和特性樣例
35. 4 樣例二
第6章 迭代計劃和項目有關問題的
介紹
36. 1 區(qū)分需求的等級
36. 2 劃分項目風險的等級
36. 3 適應性計劃與預測性計劃
36. 4 階段和迭代計劃
36. 5 迭代計劃:下一迭代做什么
36. 6 在迭代之間跟蹤需求
36. 7 早期估計的有效性(和無效性)
36. 8 組織項目工件
36. 9 一些小組迭代進度安排問題
36. 10 何時你會知道自己并不了解UP中
的計劃安排
36. 11 進一步學習的參考資料
第37章 關于迭代開發(fā)和UP的注釋
37. 1 其他UP的最佳實踐和觀點
37. 2 構造階段和移交階段
37. 3 其他有意義的實踐
37. 4 限定每次迭代時間的動機
37. 5 順序"瀑布型"生命周期
37. 6 可用性工程和用戶界面設計
37. 7 UP分析模型
37. 8 RUP產品
37. 9 重用的挑戰(zhàn)和神話
第38章 更多的UML表示法
38. 1 一般符號
38. 2 實現(xiàn)圖
38. 3 模板(參數(shù)化的. 通用的)類
38. 4 活動圖
術語表
參考文獻