軟件工程中有各種思想來對抗複雜度的增加,敏捷(agile)就是其中的一種。
週一參加了《敏捷初步》的培訓,fido一直在強調“敏捷是一種思想”。
凡是思想的東西每個人都可以自己進行理解,比如我就覺得“結對編程”雖然夠創意但不如一個人先寫,然後兩個人共同進行“代碼審查”。
收穫總結一下:要清晰、要預期、要輸出、要反饋、要改進。
1. 首先你的整體做事情的思路要清楚。實現一個算法、模塊、軟件之前即使不要求詳細的文檔,也最好要弄明白各種情況、各種分支等;
2. 然後你要對時間、對輸出有個預期。“迷路的原因之一很可能是你不知道自己要去哪兒。”你都不知道什麼時間要輸出什麼,那時間開銷和成果就根本沒法保證;
3. 即使工期延後、即使沒有完成預定目標,仍然要輸出。儘快的看到結果可以有效的減少你的負面心情,並給反饋和改進定下基礎;
4. 持續的反饋和改進,回到1或者2。
凡是思想性的東西還有個特點:就是你可以把它用到其它的生活實踐上,比如你想學做菜。