重點摘要#
- Walking Skeleton 是一個最小的端到端實作,連結所有主要架構元件
- 從小規模開始,確保系統能運作,然後增量式地添加功能
- 這種方法提供短回饋週期,讓問題在早期被發現
- 系統越大,越需要使用這個策略
詳細內容#
實施、驗證和演化應用程式架構的一個非常有用的策略,是從 Alistair Cockburn 所稱的 Walking Skeleton 開始。Walking Skeleton 是一個最小的、端到端的系統實作,它連結了所有主要的架構元件。從小規模開始,讓一個工作系統運行所有的溝通路徑,給你信心確認你正朝著正確的方向前進。
增量式成長#
一旦骨架就位,就該讓它進行鍛鍊了。像全身運動一樣增量式地充實它,添加端到端的功能。目標是保持系統持續運行,同時不斷成長骨架。
為什麼要這樣做#
- 對架構進行修改越晚成本越高、難度越大
- 我們希望盡早發現錯誤
- 這種方法提供短回饋週期,讓我們能快速適應
- 根據需要迭代工作,以滿足業務優先排序的執行期品質屬性
- 架構的假設能更早被驗證
- 問題在早期投入較少時就被發現,因此架構更容易演化
系統越大,使用這個策略就越重要。在小型應用中,一個開發者可以相對快速地從上到下實作一個功能。但在大型系統中,可能涉及多個團隊、多個開發者,更困難和耗時的工作應該盡早進行。
核心理念#
從一個 Walking Skeleton 開始,保持它運行,然後增量式地成長。
— By Clint Shank