1. 程式人生 > >【敏捷開發每日一貼】寫不寫文件?

【敏捷開發每日一貼】寫不寫文件?

寫不寫文件?

敏捷宣言更強調“可以工作的軟體勝過面面俱到的文件”,但並不是說不需要文件。敏捷的目的是儘量減少浪費,所以採取了極端的邏輯,把所有的文件都視為浪費。但並不意味著文件可以被完全拋棄掉。文件對於團隊資訊傳遞來說是很有用的(特別是擴充套件規模時,或者團隊不穩定時)。

要理解敏捷開發的出發點不是不寫文件只寫程式碼,而是減少浪費,以便能按照自己專案的特點,靈活選擇文件的數量,在過度設計返工之間找到平衡。過度設計返工是造成浪費的主因,不同型別專案中兩者比重不同。

大型專案尤其是系統工程級別的專案,比如軍工、航空、大型通訊裝置專案,設計的工作量很大,原因是這種投入畢竟是可控的;而一旦由於設計不充分,導致嚴重的返工,則往往不是簡單的費用問題,可能造成專案被終止。

因而在這類專案推廣敏捷,應該適當增加文件的數量,以便長期專案能夠按計劃完成。

在網際網路、消費電子行業則正好相反,返工主要是由於業務變化而不是錯誤或不足的設計引起的;相反過度設計往往在未被付諸實現之前就已經過時,反而形成浪費。

因此在此類專案推廣敏捷,應當適當降低文件的數量,以便在業務變化時輕裝上陣,而不需要同步修改大量設計文件。但也並非完全不需要,可以根據專案過程定義裁剪。