在我從unit test邁入TDD的領域,跨過那道實務的門檻,這本書絕對佔有一席之地。
這是一本用java寫的書,書裡面完整的一個範例章節更是很特別的用了Java swing(我連它是什麼都不知道), 我不會寫java,但這本書卻讓我從「TDD不就是先寫測試,再寫prod code通過它嗎?」的程度,到建立walking skeleton的觀念(跟曳光彈開發配合),為什麼需要top-down的使用一些OO特性來開發,最後再了解了ATDD的outside-in打通實務貫通的癥結點。
同一時期的另一本重點書是「測試驅動開發的藝術」(我記得好像也是java當例子),這兩本讓我把TDD所需相關知識打得很紮實。
技術的最後,在我survey並在實務上愛上cucumber後,更是完全打通了ATDD在實務上的最大瓶頸,讓我可以跟需求單位與其他成員一起定義出適當的acceptance criteria, 就技術面來說,實務TDD所有需要的部分就全到位了。
接著的則是「specification by example」讓我更清楚且精準的在實務上,帶領PO進行改變,那是本導入的聖經本。
最後,就是一切agile的相關學習與知識,讓我可以更有效、更無感的把人、流程、團隊文化給搞定,讓整個軟體開發過程可以串得更順、更自然,也讓團隊進入持續改善跟自主管理的狀態。
以上,就是整條路後半段的心路歷程跟學習過程。
(前半段就是unit test, refactoring, OOD/SOLID, design patterns, CI with static code analysis report, integration testing, web testing)
額外岔出去的則是living documentation跟scrum estimations.
這條路很充實、愉快,而且還沒結束。因為持續改善是沒有止盡,所以得學習更多東西,當作改善的動力、成長的養份。那個 agile tribes 的地鐵圖還有一些沒踩鳥點,對這充滿期待跟興奮!
PS: 我也不知道為啥一個書籍封面寫這麼長....手機無法編輯網誌,晚點再把內容搬過去好了。
Search