最近看了Doug Rosenberg 的"Use Case Driven Object Modeling with UML: Theory and Practice(2007)"。
自從看了1999的"Use Case Driven Object Modeling with UML: A Practical Approach"後,對於他的ICONIX方法論就一直感興趣,2005年時雖然出了一本"Agile Development with ICONIX Process: People, Process, and Pragmatism",卻沒有太大的興趣。
新版的"Use Case Driven Object Modeling with UML"主要加了兩個章節:Ch07 Technical Architecture、Ch12 Design-Driven Testing。
在TA中也特別以 Spring Framework為架構作範例講解,DDT也是他非常認同且強調的部份。Robustness Analysis 部分算是翻修了不少。
大體說來,整本書的節奏比以前好很多,內容也更完整了。
[ICONIX圖]
如果沒有時間,那麼一定要好好地看完"Ch01 Introduction to ICONIX Process",精華都在這裡了。
ICONIX是我在做 SA->SD 中間欠缺的一環,之前雖然有採用過 Craig Larman 的SSD 的方式,但實際應用上,還是Robustness比較容易上手,總之,這本書是在如何將需求製成程式碼的步驟,講解的非常詳細的書,非常值得閱讀。
不過因為幫人上課的緣故,我認為本書在Use Case上的描述稍嫌不足,建議先去看看"Use Case Modeling"這本,而不要先看"Writing effective Use Cases使用案例寫作實務"或是"Patterns for Effective Use Cases"這樣的書。
為什麼? 因為在學會 modeling的技巧之後,回頭看UC的寫法才會有所領悟,我看過太多看不完"Writing effective Use Cases"的人,或是看完之後寫出的UC仍然跟你的 code搭不上邊的案例。(但是,還是要好好的閱讀"Writing effective Use Cases"這本書的忠告,裡面的建議都是專案過程中,大家會犯的錯誤。)
若是初學者,建議再搭配"The Object Primer 3e Agile Model-Driven Development with UML 2.0",裡面的整個開發流程講解是不錯的,較有全局觀。
留言