目前佔據主流的陣營有:
人們喜歡簡潔。但這更多的看起來是乙個謊言——沒有多少團隊能夠自始至終保持簡潔。人們喜歡簡潔只是因為這個難以做到。並不是說人們不願意如此。很多人都知道軟體開發不比其他的勞動力密集型的行業——人越多,產量越大。《人月神話》中已經提到,專案增加更多的人,在提公升工作產出的同時,也產生了混亂。短期內,這些混亂能夠被團隊通過各種形式消化;但從長期看來,隨著團隊人員的變動(新人加入,老人離開),以及人正常自然的遺忘曲線,**庫會逐漸失控,混亂無法被消化,而專案並不會停止,新功能不斷的加入,架構就在一天天的過程中被腐蝕。
很少有人注意到,規模的變大才是導致架構腐化的根源——因果關係在時空上的不連續,使得人們並不能從其中獲得經驗,只是一再重複這個悲劇的迴圈。
作為軟體從業者,需要不斷地保持對技術社群的關注。閉門造車只能加速架構的腐化——特別是這些自己的發明在開源社群早已有成熟的方案的時候。在那些貌似光鮮的產品背後,實際上有著無數的失敗的案例成功的經驗在支撐。
值得一提的是,高傲的開發者往往對新技術不夠耐心;或者說對新技術的能力或侷限缺乏足夠耐心去了解。每乙個產品都有其針對的問題域,對於問題域之外,新技術往往沒有成熟到能夠應對的地步。開發者需要不斷地閱讀、思考、參與,來驗證自己的問題域是否與其匹配。淺嘗輒止不是好的態度,也阻礙了新技術在團隊內的推廣。
架構為什麼會腐化
架構腐化一詞我已經忘了從哪本書上看到的了,但是這個詞給我留下了非常深刻的印象。關鍵在於 腐 一詞,充分而又形象的描述了架構是怎樣一步一步從簡單清爽走向複雜汙穢的。請允許我用 汙穢 一詞來描述乙個糟糕的架構,因為糟糕的架構就像是一潭散發著臭味的淤泥,讓你不想靠近,一旦涉入其中就會難以自拔,苦不堪言。我...
敏捷專案管理(摘錄) 敏捷流程架構
楚凡科技 www.trufun.net 10年間致力於做中國最專業的軟體工程解決方案提供商 規範軟體開發過程 優化軟體開發流程 保證軟體開發質量 提高軟體開發效率 trufun uml2建模工具 trufun bacon 需求管理工具 trufun 研發雲管理工具等 流程也許不如人那麼重要,但它絕非...
《軟體架構設計》學習筆記 摘錄(三)
成功的架構設計 好的架構應當具有如下品質 軟體架構師的工作成功要為整個軟體開發團隊的工作提供足夠的指導和限制,使他們能夠沿著正確的方向進行下去。軟體架構師開展架構設計工作,都是以 軟體需求規格說明書 為最主要的設計依據的,都是先勾畫出概念性架構,再結合具體技術平台制定實際架構。非功能需求來自何處?一...