瀑布模型、快速原型模型、增量模型、螺旋模型
瀑布模型也稱軟件生存週期模型。面試
優勢:設計模式
(1)它在軟件工程中佔有重要地位,它提供了軟件開發的基本框架,這比依靠「我的技藝」開發軟件好得多。框架
(2)它有利於大型軟件開發過程當中人員的組織、管理,有利於軟件開發方法和工具的研究與使用,從而提升了大型軟件項目開發的質量和效率。 工具
缺點:開發工具
(1)階段的劃分徹底固定,階段之間產生大量的文檔,極大地增長了工做量;測試
(2)因爲開發模型是線性的用戶只有等到整個過程的末期才能見到開發成果,從而卡增長了開發的風險;.net
(3)早期的錯誤可能要等到開發後期的測試階段才能發現,進而帶來嚴重後果。設計
適用範圍blog
(1)在開發時間內需求沒有或不多變化;資源
(2)分析設計人員應對應用領域很熟悉;
(3)低風險項目(對目標、環境很熟悉);
(4)用戶使用環境很穩定;用戶除提出需求之外,不多參與開發工做。
快速原型模型
優勢:
(1)能夠獲得比較良好的需求定義,容易適應需求的變化;
(2)有利於開發與培訓的同步;
(3)開發費用低、開發週期短且對用戶更友好。
缺點:
(1)客戶與開發者對原型理解不一樣;
(2) 準確的原型設計比較困難;
(3) 不利於開發人員的創新。
使用範圍:
(1)對所開發的領域比較熟悉並且有快速的原型開發工具;
(2)項目招投標時,能夠以原型模型做爲軟件的開發模型;
(3)進行產品移植或升級時,或對已有產品原型進行客戶化工做時,原型模型是很是適合的。
增量模型
優勢:
(1)採用增量模型的優勢是人員分配靈活,剛開始不用投入大量人力資源;(2)若是核心產品很受歡迎,則可增長人力實現下一個增量;
(3)可先發布部分功能給客戶,對客戶起到鎮靜劑的做用。
缺點:
(1)並行開發構件有可能遇到不能集成的風險,軟件必須具有開放式的體系結構;
(2)增量模型的靈活性可使其適應這種變化的能力大大優於瀑布模型和快速原型模型,但也很容易退化爲邊作邊改模型,從而是軟件過程的控制失去總體性。
使用範圍:
(1)進行已有產品升級或新版本開發,增量模型是很是適合的;
(2)對完成期限嚴格要求的產品,可使用增量模型;
(3)對所開發的領域比較熟悉並且已有原型系統,增量模型也是很是適合的。
螺旋模型
優勢:
(1)設計上的靈活性,能夠在項目的各個階段進行變動;
(2)以小的分段來構建大型系統,使成本計算變得簡單容易;
(3)客戶始終參與每一個階段的開發,保證了項目不偏離正確方向以及項目的可控性;
(4) 隨着項目推動,客戶始終掌握項目的最新信息 , 從而他或她可以和管理層有效地交互。
缺點:
(1)採用螺旋模型須要具備至關豐富的風險評估經驗和專門知識,在風險較大的項目開發中,若是未可以及時標識風險,勢必形成重大損失;
(2)過多的迭代次數會增長開發成本,延遲提交時間。
使用範圍:螺旋模型只適合於大規模的軟件項目。
---------------------
做者:旮旯兒
來源:CSDN
原文:https://blog.csdn.net/galar1993/article/details/30124545
版權聲明:本文爲博主原創文章,轉載請附上博文連接!
最後還有最近面試到的MVC設計模式,M(model)模型,V(view)視圖層,C(controller)控制層。
優勢:分層開發,加速開發效率。層次清晰