敏捷vs V方法(模型)
當今軟件行業中有許多不同的軟件開發方法。V方法(V-Model)是瀑布式開發方法(最早的方法之一)的擴展。V-Model的主要焦點是將編碼和測試放在同等的權重上。敏捷模型是最近引入的一種軟件開發模型,旨在解決現有模型中存在的缺陷。敏捷的主要關注點是儘早進行測試,並通過將系統分解為非常小且可管理的子部分,儘早發佈產品的工作版本。
什麼是方法(V)?
V方**(V-Model)是一種軟件開發模型。它被認為是典型瀑布式軟件開發模型的擴展。V-Model使用瀑布模型中定義的階段之間的相同關係。但是,V-model不是線性下降(如瀑布模型),而是對角向下,然後向上移動(在編碼階段之後),形成字母V的形狀。這種V形的形成是為了顯示開發/設計的每個階段與相應的測試階段之間的關係。時間和抽象層次分別用水平軸和垂直軸表示。
測試(上升路徑,V的右側)用於驗證,而相應的設計階段(下降路徑,V的左側)用於驗證。在V模型中,編碼和測試的權重相等。V-Model建議在設計文檔/代碼旁邊創建測試文檔。例如,集成測試文檔應該在記錄高級設計時編寫,單元測試應該在制定詳細設計計劃時記錄。這意味著每個測試的實現計劃應該事先創建,而不是等到開發完成後才可以交給測試團隊。
什麼是敏捷?
敏捷是一種基於敏捷宣言的最新軟件開發方法。這是為了解決傳統的V模型和瀑布式軟件開發方法的一些缺點而開發的。敏捷方法的基礎是在開發週期的早期高度重視客戶的參與。它建議客戶儘早、經常地進行測試。當穩定版本可用時,測試在每個點進行。敏捷的基礎是從項目開始的測試開始,一直持續到項目的結束。敏捷的關鍵價值觀是“質量是團隊的責任”,它強調軟件的質量是整個團隊(不僅僅是測試團隊)的責任。敏捷的另一個重要方面是將軟件分解成更小的可管理的部分,並很快地將它們交付給客戶。交付一個有效的產品是最重要的。然後團隊繼續改進軟件,並在每個主要步驟持續交付。這是通過有非常短的發佈週期(稱為sprint)來實現的,並在每個週期結束時獲得改進的反饋。在早期方法中,沒有太多團隊交互的貢獻者,比如開發人員和測試人員,現在在敏捷模型中一起工作。
敏捷和V方法(模型)有什麼區別?