?
? ?敏捷開發是1990年逐漸引起人們廣泛關注的新型軟件開發方式,它是具有應對快速變化需求的軟件開發能力。相對于非敏捷開發,它是一種以客戶需求為核心,持續迭代,循序漸進的開發方式,敏捷絕非是一種特定的開發方式,而是一種應對快速變化需求的一種軟件開發能力。所以敏捷開發并不在意需求是否變更,即便在開發后期,敏捷開發仍樂于接受需求的變更,這一點對于客戶滿意度來說,是非常有競爭力的
?
?
特點:
1. 開發周期更短:相對于其他幾種開發方式(瀑布式開發,迭代式開發,螺旋發開),敏捷開發的周期無疑更短.他能更快的滿足需求.如果客戶提起需求變更是,它也能更快的做出相應的變化,正如它的名字一樣,敏捷開發代表的是更快的速度
2.更好的適應快速變化的需求:在任何時候需求都不是一成不變的的.無論前期考慮的多么周到為了適應快速變化的市場,為了讓軟件更加完善,需求永遠都是在不停變化的,毫不夸張的說,我們正在開發的功能,還沒有上線,客戶可能已經不需要了.敏捷快發能夠駕馭需求的變化,他主張接受變更,對變更做出更快的響應
3.采用迭代方式:頻繁的交付可使用的軟件,在敏捷開發在,每個星期都要更新一個新版本,交付一個可以使用的軟件,然后根據市場變化,交付下一個迭代的產品。在這頻繁的交付過程中,更好的滿足客戶需求,適應需求的變化
敏捷開發意味著讓我們全面的擁抱需求的變化,但是對于瞬息萬變的市場反饋還不足以應對.
因此為了更快的發現問題和反饋市場變化,在敏捷開發的過程中,引入了持續集成,持續交付和持續部署來更高效的進行敏捷開發
什么是敏捷開發?
在敏捷開發中,軟件項目在構建初期被切分成多個子項目,各個子項目的成果都經過測試,具備可視、可集成和可運行使用的特征。換言之,就是把一個大項目分為多個相互聯系,但也可獨立運行的小項目,并分別完成,在此過程中軟件一直處于可使用狀態。
瀑布式開發
優點:?
1. 為項目提供了按階段劃分的檢查點。?
2. 當前一階段完成后,您只需要去關注后續階段.?
3. 它提供了一個模板,這個模板使得分析、設計、編碼、測試和支持的方法可以在該模板下有一個共同的指導。
缺點:
1. 各個階段的劃分完全固定,階段之間產生大量的文檔,極大地增加了工作量。
2. 由于開發模型是線性的,用戶只有等到整個過程的末期才能見到開發成果,從而增加了開發風險。
3. 通過過多的強制完成日期和里程碑來跟蹤各個項目階段。
4. 瀑布模型的突出缺點是不適應用戶需求的變化。
?
?
?
優點:
1. 敏捷開發的高適應性,以人為本的特性。
2. 更加的靈活并且更加充分的利用了每個開發者的優勢,調動了每個人的工作熱情。
缺點:
1. 由于其項目周期很長,所以很難保證開發的人員不更換,而沒有文檔就會造成在交接的過程中出現很大的困難。
?
?
ps:個人整理,如有侵權,請聯系
?