頭一段時間以前就在網上看到敏捷開發相關的東西挺火的,最近閑著就搞了本
Robert C.Martin寫的《
Agile Software Development:Principles, Patterns, and Practices》翻翻。只是閑著翻了一下,心里就起了一些疑問。(說明:本人的這些疑問并不是建立在對敏捷開發熟悉的情況下的,純粹閑談)
如果理解不錯的話,敏捷開發方法論的初衷應該是為了更好的因對需求變化,以及延伸出了各種對應的措施,例如赫赫有名的XP、測試驅動等...
1、對大項目或者有一定規模的產品開發合適嗎?
直覺告訴我不合適。想過如果用敏捷開發的這套東西來應用到現在參與的產品開發,感覺懸乎。如果在一個規模較大的項目或者產品軟件開發過程中面對較為負責的需求變更情況下,敏捷開發提供的這套東西就顯得有點力不從心了,即使應用,那投入的精力也是可想而知的。對于大的項目或者產品軟件的開發,是不是還是應該按照傳統的軟件工程思路來搞,這樣即使不帥應該也不算丑吧,心里也應該更踏實一點。(這有點類似于遇到兩個女孩子,一個長得比較大眾化,五官還算是比較規整;另一個比較會打扮,可能就是常說的比較有特點,但是五官長的有缺陷; 那還是前者耐看一點,再有特點但是長得有硬傷有什么用啊^_^)
2、敏捷開發中提到的一些手段是不是對大部分開發人員要求過高了?
粗略翻了一下《
Agile Software Development:Principles, Patterns, and Practices》中的大部分章節,發現里面涉及到了5個基本的OO設計原則、以及一些常用設計模式靈活使用(而且建立在對設計好壞有一定審美能力的情況下的)、、、 這對大部分開發人員來說,是不是有點過高??? 在中國,頂級的公司不敢說,對于大部分看起來還不錯的公司來說,估計大部分開發人員離以上水平就有相當差距了
說歸說,道歸道,敏捷開發這種思路還是很好的,尤其是對于中小型項目估計應該有一定的效果。這也可以看作是對傳統軟件工程的那套東東的一個補充,如果讓一個代碼行只有幾萬行的web系統去嚴格按照傳統軟件工程提倡那套方式去搞,顯然有點.....
本博客中的所有文章、隨筆除了標題中含有引用或者轉載字樣的,其他均為原創。轉載請注明出處,謝謝!