讀古今文學網 > 程序員必讀之軟件架構 > 一些實用的建議 >

一些實用的建議

下面是一些向初學者介紹軟件架構的實用建議。

1. 宣傳教育

舉辦幾次專題研討活動,幫助人們學習和理解軟件架構是什麼。可以針對開發者或非開發者,這有助於確保所有人都有相同認識。至少,你應該留意下面幾點:

  • 軟件架構是什麼;
  • 軟件架構為什麼重要;
  • 你打算採取的做法。

2. 回顧架構

如果你定期回顧反思你的團隊執行情況,為什麼不直接在談話的主題列表上加入軟件架構?如果你認為軟件架構沒有得到足夠重視,也許是因為你經常重構你的軟件架構,或者在一些非功能特性 上遇到了問題,那麼思考一下你可以採用的軟件架構實踐。另一方面,如果你花太多時間思考軟件架構或預先設計,也許是時候看看這個工作的價值,以及是否有任何實踐可以被放棄或取代。

3. 完成標準

如果你對工作項目有「完成標準」,把軟件架構也加進去。這有助於確保你以任何所需的架構模式、規則或非功能目標來考慮工作項目架構的影響和實現的一致性。

4. 分配軟件架構角色

如果你的軟件團隊不思考軟件架構,那麼簡單地把軟件架構角色 分配給團隊內某個可能合適的人選也許可行,因為你明確地把對軟件架構的所有權和責任指定給了一個人。把這個角色分配給多人在有些團隊裡行得通,但我發現,起初由一個人承擔,然後隨著團隊經驗的增加,再與其他人共享,這種方式更好。有些團隊不喜歡「軟件架構師」這個詞,而代之以架構所有者 3 。不管你怎麼稱呼它,指導和合作才是關鍵。

3 http://www.agilemodeling.com/essays/architectureOwner.htm

5. 架構培訓班

光說還不夠,懷疑論者要看的是架構並非大型預先設計。這也是我舉辦短期架構培訓班的原因,一些小團隊可以協作為一組簡單的需求 架構軟件解決方案,製作數個可視化圖表,並互相交流各自的方案。這讓人們體會到預先設計並不一定意味著在非常低的抽像層次設計好所有東西,也提供了一種實踐溝通軟件架構的方法。