[Unit Test Tricks] Static Setter Injection

在實務開發中,常使用簡單工廠(Simple Factory)以及策略模式(Strategy Pattern)來封裝實作細節,使得 context 流程抽象穩定,並達到開放封閉原則(Open/Close Principle, OCP)中所蘊含可抽換實作的彈性。

在 context 流程中,透過簡單工廠依據條件來取得 interface 的 instance 固然美好,卻往往因為與簡單工廠的 static function 直接耦合,而導致這段 context 流程無法進行 isolated unit test。

這篇文章的小技巧,就是要解決 developer 因可測試性而廢棄簡單工廠不用,反而大費周章改用抽象工廠(Abstract Factory Pattern)的問題。

...繼續閱讀 »

Scrum Estimation-Dog Point Game

對於第一次接觸 Scrum 或 Planning Poker 的團隊,在一開始的估算過程中,往往會產生一些摸不著邊際或尷尬的場面。大家不曉得到底該怎麼比較,比較的基底為何?我這樣估會不會跟大家不一樣,不一樣時是不是應該從善如流,下一次就跟大家估一樣?當估得比其他人高時,是不是我就顯得能力比較弱?這些疑惑,會使得團隊成員不容易享受於輕鬆輕快的估算流程,而影響了團隊的節奏。

因此,本篇文章將介紹一個基於相對估算的簡單遊戲:Dog Point。透過把軟體開發中的 story 轉換成小狗的情況,來幫助大家瞭解估算的運作方式、意義。

...繼續閱讀 »