再次去學習了敏捷開發模式(缺乏實踐),來談談敏捷開發模式與傳統的瀑布開發模式。
敏捷開發模式
在瀑布開發模式的基礎上進行了改進,最新從國外傳播入國內,它還沒有成熟,很多的開發團隊都處于實踐、探索的階段;
敏捷開發最主要的特點就是:以人為核心、循序漸進。
不再是非常詳細的文檔的編寫,強調人與人面對面的交流;把一個項目分成許多的周期,每個周期都有自己需要完成的任務,并且是一定要完成。
流程上主要是以下七點:
1、詳細的產品需求列表,排定優先級,這些便需要產品經理來完成的工作,同時一般會有用研、UI、運營等人的配合;
2、工作量的評估:這一項需要技術人員的支持,同時也需要產品經理,內容就是溝通各方面的資源、權衡技術難度,制定詳細的規劃;
3、計劃會議:這里是迭代的目標以及時間,同時把每一個大的任務細化到每個小任務——2、3天完成;
4、站立會議:每日開站立會議,每個人說明自己昨天完成了什么任務,今天要做什么,把已經完成的任務從未完成區域放在燃盡圖的已完成區域;
5、做到每日集成,每天都有一個成功編譯、并且可以演示的版本;
6、當一次迭代完成的時候,組織演示會議,也叫評審會議,邀請部門經理等管理者參加;
7、總結:輪流發言、討論需要改進的地方,放入下一輪產品的需求中。
瀑布開發模式
瀑布開發模式是比較傳統的軟件開發模式,在經過了長期的檢驗后,很多的項目采用瀑布開發模式最終失敗,暴露出了瀑布開發模型的很多缺點;
瀑布開發模式主要分為以下5個階段:
1、需求分析:對于需求進行詳細的分析和評估,形成需求分析文檔;
2、設計:技術評估,規劃時間節點,形成技術文檔以及時間規劃;
3、開發:按照時間規劃,進行開發,每個階段完成一定的內容;
4、測試:開發完成后,進行測試,有問題就修改,直到可以用為止;
比較
一、瀑布開發模式
優點
步驟清晰明確;
文檔完整,開發過程中可以作為參考;
缺點
1、瀑布開發是從工業發展過來的,不適合計算機軟件的開發;
2、開發周期長,花大量時間去編寫文檔,耗費時間、人力;
3、客戶只有在整個項目完成時才可以看到成果,會導致信任問題;
4、風險大,在開發過程中并不能明白最后的結果,同時不能適應變化;
二、敏捷開發模式
優點
1、迭代快,開發周期短;
2、不再耗費大量的時間來寫文檔,而是人與人面對面交流,只寫一些必要的文檔;
3、分工詳細,每天都輸出成果,客戶能夠看得到,會信任項目團隊;
4、溝通多,容易發現問題,同時能夠激起團隊的協作、奮斗;
條件限制
1、人與人之間的信任是非常重要的環節,但是這個比較難完成,技術團隊的成員可能技術能力差別大,同時也有互相競爭,又或者是項目團隊的成員有所保留,不愿意這樣的溝通;
2、團隊在開發期間的任務多、壓力大,需要時刻保持“興奮”,一般很難做到。