讀古今文學網 > 程序員必讀之軟件架構 > 缺乏軟件架構將引發問題 >

缺乏軟件架構將引發問題

既然軟件架構是關於結構和願景的,那你可以說它總是存在的。我同意,確實如此。說了這麼多,顯而易見,不思考軟件架構(以及「大局」)會導致團隊經常遭遇一些常見問題。問問你自己下面這些問題:

  • 你的軟件系統有良好定義的結構嗎?
  • 團隊裡每個人都以一致的方式實現特性嗎?
  • 代碼庫的質量水平一致嗎?
  • 對於如何構建軟件,團隊有共同的願景嗎?
  • 團隊裡每個人都得到了足夠的技術指導嗎?
  • 有適當的技術領導力嗎?

如果上面某些問題的答案是「不」,那就需要很好的團隊和很好的運氣才可能成功地交付一個軟件項目。如果沒人思考軟件架構,最終結果往往看起來像一團亂麻(big ball of mud)1 。當然,會有一個結構,但不是你想要的!其他副作用還包括軟件系統太慢、不安全、脆弱、不穩定、難以部署、難以維護、難以改變、難以擴展,等等。我敢肯定你從沒見過或參與過這樣的軟件項目,對嗎?你沒有,我也沒有。

1 : http://www.laputan.org/mud/ 。

既然軟件架構是每個軟件系統都固有的,那我們為什麼不乾脆承認這一點,放一些心思在上面?