第1章 Together——與眾不同之處
1.1 現在需要Together
1.2 本書所蘊含的原則
1.3 為什么說Together是一種令人激動的技術
1.3.1 維護單源模型(Live Source技術)
1.3.2 通過配置管理控制協(xié)作
1.3.3 煩瑣事務的自動化
1.3.4 使用模式傳播專家經驗
1.3.5 持續(xù)的質量監(jiān)控和反饋
1.4 過程. 過程, 自始自終
1.4.1 只構造所需要的
1.4.2 要素
1.4.3 非線性生命周期總是處于過程之中
1.4.4 最小元模型
1.5 下章內容
第2章 最后的步驟:部署和運行
2.1 轎車服務(CarServ)系統(tǒng)
2.1.1 Cloudscape(云圖數據庫)
2.2 演化的系統(tǒng)
2.3 檢查單個模型
2.4 改變和重新部署
2.5 文檔生成
2.6 下章內容
第3章 第1步:對領域建模
3.1 說明書的元素
3.2 領域建模
3.2.1 著色建模
3.3 類型和類
3.4 把類型建模成類
3.4.1 建模屬性
3.4.2 無導航的關聯
3.4.3 建模操作
3.5 下章內容
第4章 受益者步驟:說明需求
4.1 業(yè)務流程
4.1.1 UML圖
4.1.2 業(yè)務用例與系統(tǒng)用例
4.1.3 CarServ的業(yè)務用例
4.1.4 判定點和對象流
4.2 系統(tǒng)功能
4.2.1 什么(What). 怎樣(How). 為什么(Why)
4.2.2 CarServ系統(tǒng)用例
4.2.3 腳本(Scenarios)
4.3 建模用戶:參與者
4.3.1 參與者與人物(persona)
4.3.2 參與者作為安全角色
4.3.3 批處理
4.4 使用狀態(tài)圖明確需求
4.5 非功能性需求
4.6 配置管理
4.7 下章內容
第5章 控制步驟:以特征為中心的管理
5.1 使一切都在控制中
5.2 為什么以特征為中心
5.3 為什么要用時間段(Timeboxes)
5.3.1 一定規(guī)模內的自相似
5.3.2 貫穿于生命周期的自相似
5.4 為什么是適應的
5.5 估算實現特征的代價
5.5.1 三點估算法
5.5.2 項目速率
5.6 用例與特征
5.6.1 在Together中的用例和特征
5.6.2 重構的代價和體系結構
5.6.3 配置管理
5.7 下章內容
第6章 持續(xù)的步驟:測量質量
6.1 如何測量質量
6.1.1 黑盒測量和白盒測量
6.2 測試
6.2.1 功能測試
6.2.2 非功能測試
6.2.3 單元測試
6.2.4 Together的測試框架
6.2.5 多少單元測試才是充分的
6.3 度量
6.4 審核
6.4.1 定制審核
6.4.2 編譯模型
6.4.3 其他觀點
6.5 生成文檔
6.5.1 超鏈接
6.5.2 設計模式
6.5.3 Together的文檔生成
6.5.4 檢查與審查
6.6 下章內容
第7章 微觀步驟:設計和實現
7.1 一個已實現的例子
7.1.1 把一個新需求加到構造中
7.1.2 定義測試
7.1.3 設計用戶交互
7.1.4 設計對象交互
7.1.5 設計持久性數據
7.2 有效的交互設計
7.2.1 此前和此后
7.2.2 選擇設計
7.2.3 指定維護關聯的責任(哪個對象維護關聯)
7.2.4 改變視角
7.2.5 在交互圖中避免細節(jié)
7.2.6 異步交互
7.3 有效類圖
7.3.1 保存領域模型視圖
7.3.2 包類圖與類圖
7.3.3 闡明設計時易忽略的角落
7.3.4 類符號分隔欄
7.3.5 雙向關聯
7.3.6 限定的關聯
7.4 使用模式
7.5 使用Together重構
7.6 定制Together
7.7 下章內容
第8章 宏觀步驟:體系結構
8.1 什么是體系結構, 為什么它很重要
8.2 框架優(yōu)先還是功能優(yōu)先
8.3 體系結構的職責
8.4 給出關于體系結構約束的文檔
8.5 對依賴關系的管理
8.5.1 包間依賴
8.5.2 依賴倒置原則
8.5.3 強制依賴
8.6 層間的交互
8.6.1 從表示到應用
8.6.2 從應用到領域
8.6.3 領域和數據管理
8.7 版本和配置的管理
8.7.1 版本控制下的模型元素的移動和重命名
8.8 下章內容
第9章 J2EE體系結構
9.1 利用Together輕松使用J2EE
9.1.1 開發(fā)
9.1.2 與Tomcat綁定在一起交付
9.1.3 部署到外部應用服務器
9.1.4 其他的J2EE支持
9.1.5 測試
9.1.6 總結
9.2 J2EE并不那么容易
9.2.1 層次的體系結構
9.2.2 表示層的問題
9.2.3 持久層的問題
9.2.4 狀態(tài)
9.2.5 總結
第10章 結束語
10.1 我們需要你再做一次
10.2 簡單總結一下
10.2.1 一個單源模型
10.2.2 最小元模型
10.2.3 擾亂改變模型
10.2.4 持續(xù)的質量測量
10.3 現在結束了
附錄A 安裝案例研究軟件
A.1 開始之前
A.2 Together的下載和安裝
A.2.1 環(huán)境變量
A.3 案例研究
A.3.1 Cloudscape數據庫
A.3.2 案例研究源碼
A.3.3 建立數據庫
A.4 快速測試
附錄B JUnit和JUnitX
B.1 動機
B.2 開始
B.3 使用Together的測試框架創(chuàng)建測試用例和測試包
B.3.1 創(chuàng)建測試用例
B.3.2 創(chuàng)建測試代理
B.3.3 創(chuàng)建測試包
B.3.4 運行測試
B.4 場景背后
B.4.1 框架類
B.5 擴展
B.6 在實踐中寫測試
B.6.1 tearDown
B.6.2 改變System.out
B.6.3 (使用TestProxy)測試隱含功能
B.6.4 測試代理的意外異常
B.6.5 線程化
附錄C 使用.config文件定制Together
C.1 動機
C.2 技巧和訣竅
C.2.1 文件名
C.2.2 加入而不是覆蓋
C.3 Bean的特性
C.4 文檔化模式實例
C.5 著色注釋
C.6 對照對象圖
C.7 文檔化包依賴
附錄D 定制Together模板
D.1 動機
D.2 幕后
D.3 匯集API模板
D.4 模板
附錄E 定制Together的檢查器
E.1 動機
E.2 檢查器特性生成器
E.3 使用基于配置的檢查器
E.4 開放的API
E.5 檢查器框架
E.6 結論
附錄F RwiSupport框架
F.1 動機
F.2 框架類
F.3 可能的增強
附錄G CarServ用例研究
參考文獻