
1、瀑布模型
1.1 瀑布模型的特點
1970年溫斯頓·羅伊斯(Winston Royce)提出了著名的“瀑布模型”,直到80年代早期,它一直是唯一被廣泛采用的軟體開發模型,

1.2 瀑布模型核心思想
瀑布模型核心思想是按工序將問題化簡,將功能的實作與設計分開,便于分工協作,即采用結構化的分析與設計方法將邏輯實作與物理實作分開,
將軟體生命周期劃分為制定計劃、需求分析、軟體設計、程式撰寫、軟體測驗和運行維護等六個基本活動,
并且規定了它們自上而下、相互銜接的固定次序,如同瀑布流水,逐級下落,
1.3 瀑布模型顯著特點
1.嚴格把軟體專案的開發分隔成各個開發階段:需求分析,要件定義,基本設計,詳細設計,編碼,單體測驗,結合測驗,系統測驗等,
使用里程碑的方式,嚴格定義了各開發階段的輸入和輸出,如果達不到要求的輸出,下一階段的作業就不展開,
2.重視和強調程序檔案,在開發的中后期才會看到軟體原型,早期只能通過檔案來了解系統的模樣,
在這種情況下,檔案的重要性仿佛已經超過了代碼的重要性,
3.瀑布模型把每個開發階段都定義為黑盒,希望每個階段的人員只關心自己階段的作業,不需要關注其他階段的作業,
好處是:可以讓開發人員能夠更專注于本職作業,提高階段效率,
壞處是:
- a.由于各階段的開發人員只能接觸到自己作業范圍內的東西,所以對客戶需求的理解程度高低不等,開發人員更像是定義為流水線上的工人,
- b.對于客戶需求變更,編碼人員會比設計人員更容易產生很強的抵觸情緒,
- c.在每個開發階段都會有一些資訊刻意的不讓其他開發階段的人員知道(本意是為了提到效率,但實際上有時候產生的是互相的理解偏差),
4.瀑布模型產生的管理檔案(計劃書,進度表)等,能讓不太了解該專案的人也能看懂專案的進度情況(只有能看懂百分比就行),很適合向領導匯報用,
所以管理人員比較喜歡瀑布模型,但是開發人員不喜歡,因為它束縛了開發人員的創造性,
5.既然叫做瀑布,就意味著不應該走回頭路,否則如果出現返工,付出的代價會很大,
軟體生命周期前期造成的Bug的影響比后期的大的多,
代價比較大的主要原因還是每個開發階段的步子過大,每一次調整都可能傷筋動骨,
6.更適合需求相對穩定的大型專案,
1.4 瀑布模型不足之處
- 在專案各個階段之間極少有反饋,
- 只有在專案生命周期的后期才能看到結果,
- 通過過多的強制完成日期和里程碑來跟蹤各個專案階段,
- 瀑布模型的突出缺點是不適應用戶需求的變化,
2、敏捷開發
是一種從1990年代開始逐漸引起廣泛關注的一些新型軟體開發方法,是一種應對快速變化的需求的一種軟體開發能力,
相對于“非敏捷”,更強調程式員團隊與業務專家之間的緊密協作、面對面的溝通(認為比書面的檔案更有效)、頻繁交付新的軟體版本,
能夠很好地適應需求變化的代碼撰寫和團隊組織方法,也更注重軟體開發中人的作用,
敏捷建模(Agile Modeling,AM)的價值觀包括了XP的四個價值觀:溝通、簡單、反饋、勇氣,此外,還擴展了第五個價值觀:謙遜,

2.1 敏捷開發特點
極限編程的思想體現了適應客戶需求的快速變化,激發開發者的熱情,也是目前敏捷開發思維的重要支持者,
敏捷軟體開發是一個開發軟體的管理新模式,用來替代以檔案驅動開發的瀑布開發模式,
敏捷開發集成了新型開發模式的共同特點
- 敏捷就是“快”,快才可以適應目前社會的快節奏,要快就要發揮個人的個性思維多一些個性思維的增多,
- 客戶參與,以人為本,客戶是軟體的使用者,是業務理解的專家,沒有客戶的參與,開發者很難理解客戶的真實需求,
- 強調軟體開發的產品是軟體,而不是檔案,檔案是為軟體開發服務的,而不是開發的主體,
- 設計周密是為了最終軟體的質量,但不表明設計比實作更重要,
- 迭代,軟體的功能是客戶的需求,界面的操作是客戶的“感覺”,對迭代的強調是縮短了軟體版本的周期,
- 小版本,快速功能的展現,看似簡單,但對于復雜的客戶需求合理地分割與總體上的統一,要很好地二者兼顧是不容易的,
(1)人和互動 重于程序和工具,
(2)可以作業的軟體 重于求全而完備的檔案,
(3)客戶協作重于合同談判,
(4)隨時應對變化重于循規蹈矩,
專案的敏捷開發,敏捷開發小組主要的作業方式可以歸納為:
- 作為一個整體作業;
- 按短迭代周期作業;
- 每次迭代交付一些成果:關注業務優先級;
- 檢查與調整,
最重要的因素恐怕是專案的規模,規模增長,面對面的溝通就愈加困難, 因此敏捷方法更適用于較小的隊伍,40、30、20、10人或者更少,
歡迎關注訂閱微信公眾號【熊澤有話說】,更多好玩易學知識等你來取作者:熊澤-學習中的苦與樂 公眾號:熊澤有話說 出處: https://www.cnblogs.com/xiongze520/p/14676958.html 創作不易,任何人或團體、機構全部轉載或者部分轉載、摘錄,請在文章明顯位置注明作者和原文鏈接,
|
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/278003.html
標籤:設計模式
上一篇:哈希表及其企業級應用
