軟體的生命週期
從軟體產品設想開始到軟體不再使用而結束的時間,軟體生命週期分為六個階段,分別為:需求分析,計畫、設計、編碼、測試、執行維護。
瀑布模型
瀑布模型在軟體工程中佔主要地位,是所有其他模型的基本框架,瀑布模型的每乙個階段都只執行一次,是線性順序進行的軟體開發模式。
優點:強調開發的階段性,強調早期計畫及需求調查,強調產品測試;
缺點:需求分析只有一次,不適應需求變化,線性的開發模式,開發中的經驗不能反饋應用於本產品,不易修改錯誤。
在瀑布模型中,測試階段處於軟體實現後,這就必須給軟體開發後給測試留有相應的時間,否則測試不充分,易遺留錯誤。
螺旋模型
在軟體開發初期需求不是很不明確,採用漸進式的開發模式,螺旋就是漸進式的模式之一,對於規模龐大,複雜度高,風險大的專案尤為適合,它帶來的好處是測試隨開發的迭代而迭代。
優點:強調嚴格的全過程管理,強調各開發階段的質量,提供機會檢討專案是否有必要進行下去。
缺點:引入非常嚴格的風險識別、風險分析、風險控制,需要人員、資金和時間的投入。
增量與迭代
增量:增量開發能顯著降低專案風險,結合軟體持續構建機制,構成了當今流行的軟體工程最佳實踐之一,增量開發模型,鼓勵使用者反饋,在每次迭代中,促使開發小組以一種迴圈的、可**的方式驅動產品開發。但每一次的迭代都意味著需求可能需要更改,測試需要頻繁進行,測試與開發要緊密協作。
增量與迭代的區別:
增量是逐漸構造的過程,迭代是反覆求精的概念。
敏捷敏捷的貢獻在於他更多的去思考如何激發開發人員的工作熱情。
敏捷開發有多種方式,其中scrum比較流行。
軟體測試v模型
目的:改變軟體開發的效率與效果。
軟體測試w模型
測試開發同步進行。
軟體開發模型與測試模型
1 優點 強調開發的階段性 強調需求分析和早起計畫 強調產品測試。2 缺點 依賴於早期進行的唯一一次需求分析,不能適應需求的變化 由於是單一流程,開發中的經驗教訓不能的及時反饋給應用於本產品的過程 風險往往遲至後期的測試階段才顯露,因而失去較早的糾正機會。瀑布模型的乙個大缺陷在於,如果在需求引入的乙...
開發模型和測試模型
隨著軟體工程學科的發展,軟體工作的範圍不僅僅侷限在程式編寫,而是擴充套件到了整個軟體的生命週期,如軟體基本概念的形成,需求分析,設計,實現,測試,安裝部署,執行維護,直到軟體被更新,替換成了其他版本。軟體工程還包括很多技術性的管理工作,例如過程管理,產品管理,資源管理和質量管理,在這些方面也逐步地建...
軟體測試 2 開發模型和測試模型
軟體的生命週期 軟體的生命週期是指從軟體產品的設想開始到軟體不再使用而結束的時間。一般分為6個階段 需求分析 計畫 設計 編碼 測試 執行維護。瀑布模型 瀑布模型是所有其他模型的基礎框架,每個階段只執行一次,因此是線性順序進行的軟體開發模式。優點 1.強調開發的階段性 2.強調早期計畫及需求調查 3...