敏捷測試理論以及實踐(2)
所謂的V模型,其實是對瀑布模型的一種修改,也算一個Change吧,詳見下圖:
由于瀑布模型對于軟件的需求分析與設計階段考慮不足,導致可能會出現嚴重的設計問題,最后交付到客戶手里才會被發現,所以V模型就考慮到這點,針對開發的各個過程都會有相應的測試環節,比如用戶需求會對應驗收測試,需求分析和系統設計會對應確認測試和系統測試等等(詳見上表),這樣子起碼在交付前會把用戶需求方面的問題覆蓋到,不太會出現說這個產品不是客戶想要的這種問題。
但是缺點也是顯而易見的,跟瀑布模型一樣,測試過程還是放在了最后環節,雖然可以滿足客戶的需求,但是問題都只能到最后階段才能被發現,必然會導致上面瀑布模型發生相同情況,也就是成本和時間的增加,所以V模型充其量也只能是瀑布模型的2.0版本。(不過好歹已經有了Change,我相信在那個年代的背景呀,已經算挺不錯了,已經考慮到需要對需求分析這些進行測試了)
當然,時代總是在不斷地變化之中,你不懂得Change,那唯一的結局就是落后,落后就要挨打,有多少曾經風光的軟件公司在今天已經找不到蹤影,活下來的公司都是能不斷適應時代改變而改變的公司。
V模型雖然比瀑布模型稍微先進那么一點,但是總是沒法跟得上時代的進步,因為有現在看來顯而易見的缺點(當然,這里得說一下,即使在現在,瀑布模型和V模型還是有其用武之地,特別是那種對質量看得非常嚴格,基本上方案定了不會有改動的行業,所以它們沒有被淘汰,我這里講的Change其實更多是針對敏捷開發的公司的,這類公司其實以前就應該敏捷,只是那個時候沒敏捷的想法,但是它們的開發流程總是有敏捷的需求,所以這個流程總是在Change中,并且不斷地去適應和反過來推動它們的流程的繼續發展。)
上面講了這么多,大家已經知道了瀑布模型和V模型對于需要敏捷的公司有一個致命傷了,也就是他們的測試環節總是放在開發完成后,從而導致了所有的Bug都是只能在最后才能被發現,客觀上增加了產品是否能按時和正確地發布的風險。既然知道了問題所在,咱們的過程分析管理人員們也不是蓋的,紛紛想出了高招。
首先來介紹一下W模型(見下圖),W模型其實是有兩個V模型組成,其實也就是雙V了,看起來像W就叫做W模型了,W模型強調測試需要和開發同步進行,開發包括哪幾個步驟,測試就需要測哪幾個步驟,更重要一點是需要同步進行,也就是說你做完這一步我就需要測掉這一步,那開發的步驟也無非就包括了需求、設計和代碼了,所以這些步驟都進行測試。
posted on 2011-11-15 14:18 順其自然EVO 閱讀(140) 評論(0) 編輯 收藏 所屬分類: 測試學習專欄