讀古今文學網 > 程序員必讀之軟件架構 > 經驗影響軟件設計 >

經驗影響軟件設計

我們擁有的知識、經驗和偏好往往會影響我們設計軟件的方式,尤其是如果一個人單槍匹馬完成。缺少了交流,我們往往會基於已有的對軟件應該如何設計的心智模型,去假設組件應該放在哪裡、特性會如何工作。盡早扔掉這些假設有助於避免一些無可挽回的糟糕意外。我傾向於使用白板來設計軟件的一個主要原因是它鼓勵更加合作的方式,而不是大家都對著自己電腦上最喜歡的建模工具,各自為政。合作,也就是相互溝通和挑戰。

就像結對編程,合作是處理軟件設計流程的一個有效途徑,特別是如果用輕量級的方法來做。合作提高了質量,也讓我們可以討論和挑戰一些常見的基於自己已有知識、經驗和喜好做出的假設。它也為代碼集體所有制鋪平了道路,有助於打破軟件開發團隊中常見的孤島。團隊中的每個人都會有不同的想法,但要達成共識。