軟體開發模型和軟體測試模型

2021-09-26 21:42:02 字數 2067 閱讀 2717

瀑布模型在軟體工程中占有重要地位,是所有其他模型的基礎框架。

瀑布模型的每乙個階段都只執行一次,因此是線性順序進行的軟體開發模式。

適合需求變更小,比較穩定的專案。

優點:

缺點:

瀑布模型的乙個大缺陷在於,可以執行的產品很遲才能被看到。這會給專案帶來很大的風險,尤其是整合的風險。如果在需求引入的乙個缺陷要到測試階段甚至更後的階段才發現,通常會導致前面階段的工作大面積返工,業界流行的說法是:「整合之日就是**之日」。

一般在軟體開發初期階段需求不是很明確時,採用漸進式的開發模式。

螺旋模型是漸進式開發模型的代表之一。

這對於那些規模龐大、複雜度高、風險大的專案尤其適合。

優點:

缺點:增量開發能顯著降低專案風險結合軟體持續構建機制,構成了當今流行的軟體工程佳實踐之一。增量開發模型,鼓勵使用者反饋,在每個達代過程中,促使開發小組以一種迴圈的、可**的方式驅動產品的開發。因此,在這種開發模式下,每一次的迭代都意味著可能有需求的更改、構建出新的可執行軟體版本,意味著測試需要頻繁進行,測試人員需要與開發人員更加緊密地協作

增量通常和迭代混為一談,但是其實兩者是有區別的。增量是逐塊建造的概念,例如畫一幅人物畫,我們可以先畫 人的頭部,再畫身體,再畫手腳……而迭代是反覆求精的概念,同樣是畫人物畫,我們可以採用先畫整體輪廓,再 勾勒出基本雛形,再細化、著色。

敏捷的價值觀:

個體與互動重於過程和工具 、、人與人溝通

可用的軟體重於完備的文件 、、輕文件

客戶協作重於合同談判 響應變化重於遵循計畫 、、客戶參與

在每對比對中,後者並非全無價值,但我們更看重前者、、擁抱變化

敏捷開發有很多種方式,其中scrum是比較流行的一種。

scrum裡面的角色:

與瀑布不同,scrum將產品的開發分解為若干個小sprint(迭代),其週期從1周到4周不等,但不會超過4周。參與的團隊成員一般是5到9人。每期迭代要完成的user story是固定的。每次迭代會產生一定的交付。

scrum的基本流程

明確的標註了測試過程中存在的不同型別的測試,並且清楚的描述了這些測試階段和開發過程期間各階段的對應關係

v模型指出,單元和整合測試應檢測程式的執行是否滿足軟體設計的要求;系統測試應檢測系統功能、效能的質量特性是否達到系統要求的指標;驗收測試確定軟體的實現是否滿足使用者需要或合同的要求

侷限性:僅僅把測試作為在編碼之後的乙個階段,未在需求階段就進入測試

w模型增加了軟體各開發階段中應同步進行的驗證和確認活動。w模型由兩個v字型模型組成,分別代表測試與開發過程,圖中明確表示出了測試與開發的並行關係。

w模型特點:測試與開發是同步進行的

w模型優點:有利於盡早地全面的發現問題。

例如,需求分析完成後,測試人員就應該參與到對需求的驗證和 確認活動中,以盡早地找出缺陷所在。同時,對需求的測試也有利於及時了解專案難度和測試風險,及早制定應對措施,顯著減少總體測試時間,加快專案進度。

w模型缺點:需求、設計、編碼等活動被視為序列的;測試和開發活動也保持著一種線性的前後關係,上一階段完全結束,才可正式開始下乙個階段工作。無法支援敏捷開發模式。對於當前軟體開發複雜多變的情況,w模型並不能解除測試管理面臨著困惑。

軟體開發模型與測試模型

1 優點 強調開發的階段性 強調需求分析和早起計畫 強調產品測試。2 缺點 依賴於早期進行的唯一一次需求分析,不能適應需求的變化 由於是單一流程,開發中的經驗教訓不能的及時反饋給應用於本產品的過程 風險往往遲至後期的測試階段才顯露,因而失去較早的糾正機會。瀑布模型的乙個大缺陷在於,如果在需求引入的乙...

軟體開發模型

軟體開發模型 software development model 是指軟體開發全部過程 活動和任務的結構框架。軟體開發包括需求 設計 編碼和測試等階段,有時也包括維護階段。軟體開發模型能清晰 直觀地表達軟體開發全過程,明確規定了要完成的主要活動和任務,用來作為軟體專案工作的基礎。對於不同的軟體系統...

軟體開發模型

前提 在介紹軟體開發模型之前,要說一下軟體的生命週期,如同人的一生一樣,要經過嬰兒期,兒童期,少年期,青年期,老年期直到衰老死亡的過程。同樣,乙個軟體產品也要經過計畫,分析,設計,程式設計,測試和維護直到被淘汰的過程,軟體的這一過程稱為軟體生命週期。定義 軟體開發模型 software develo...