資源描述:
《驗證與確認-缺一不可.doc》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、一談到“軟件測試”,就不可避免談著名的“V&V”——Verification和Validation(驗證和確認),在整個軟件開發(fā)生命周期,Verification和Validation每時每刻都存在著,兩者缺一不可,形成統(tǒng)一體,以全面保證軟件的質(zhì)量。??????在軟件測試中不僅要檢查程序是否出錯、程序是否和軟件產(chǎn)品的設(shè)計規(guī)格說明書一致,而且還要檢驗所實現(xiàn)的正確功能是否就是客戶或用戶所需要的功能,兩者缺一不可,這兩部分活動構(gòu)成了一個完整的測試活動。這就是軟件測試中有名的V&V,即Verificatio
2、n和Validation。實際上,在整個軟件開發(fā)生命周期,Verification和Validation每時每刻都存在著。1.驗證——Verification????Verification,翻譯為“驗證”,也可以譯為“檢驗”,即驗證或檢驗軟件是否已正確地實現(xiàn)了產(chǎn)品規(guī)格書所定義的系統(tǒng)功能和特性。驗證過程提供證據(jù)表明,軟件相關(guān)產(chǎn)品與所有生命周期活動(需求分析、設(shè)計、編程、測試等)的要求(如正確性、完整性、一致性、準確性等)相一致。???驗證是否滿足生命周期過程中的標準、實踐和約定;驗證為判斷每一個生命
3、周期活動是否已經(jīng)完成,以及是否可以啟動其他生命周期活動建立一個新的基準。???在ISO9000中,“驗證”的嚴格定義是:驗證是通過檢查和提供客觀證據(jù),表明規(guī)定要求已經(jīng)滿足的認可?!膀炞C”強調(diào)的是“規(guī)定規(guī)格要求”2.有效性確認——Validation???Validation,翻譯為“確認”,但更準確地翻譯,應(yīng)該是“有效性確認”,這種有效性確認要求更高,要能保證所生產(chǎn)的軟件可追溯到用戶需求的一系列活動。確認過程提供證據(jù),表明軟件是否滿足客戶需求(指分配給軟件的系統(tǒng)需求),并解決了相應(yīng)問題。???在IS
4、O9000中,“確認”的嚴格定義是:確認:是通過檢查和提供客觀證據(jù),表明一些針對某一特定預(yù)期用途的要求已經(jīng)滿足的認可。“確認”強調(diào)的是“預(yù)期用途的要求”3.兩者的區(qū)別和聯(lián)系??????為了更好地理解這兩個測試活動的區(qū)別,可以概括地說,驗證(Verification)是檢驗開發(fā)出來的軟件產(chǎn)品和設(shè)計規(guī)格書的一致性,即是否滿足軟件廠商的生產(chǎn)要求。但設(shè)計規(guī)格書本身就可能有問題、存在錯誤,所以即使軟件產(chǎn)品中某個功能實現(xiàn)的結(jié)果和設(shè)計規(guī)格書完全一致,但所設(shè)計的功能不是用戶所需要的,依然是軟件嚴重的缺陷。因為設(shè)計規(guī)
5、格書很有可能一開始就對用戶的某個需求理解錯了,所以僅僅進行驗證(Verification)測試還是不充分的,所以還需要進行性確認(Validation)測試。確認(Validation)就是檢驗產(chǎn)品功能的有效性,即是否滿足用戶的真正需求。??????這就是BOEHM對V&V的最著名又最簡單的解釋是·Verification:Arewebuildingtheproductright?是否正確地構(gòu)造了軟件?即是否正確地做事,驗證開發(fā)過程是否遵守已定義好的內(nèi)容·Validation:Arewebuildi
6、ngtherightproduct?是否構(gòu)造了正確的軟件?即是否正在做用戶真正所需要的事。我們還可以給出在目的、對象、參與人員和時機等各個方面的區(qū)別和聯(lián)系。目的:·驗證的目的是證實設(shè)計階段輸出是否確保設(shè)計階段輸入要求;·確認的目的是通過產(chǎn)品確認設(shè)計是否滿足使用要求。對象:·驗證的對象是設(shè)計輸出文件,計算書或樣品等;·確認的對象是最終產(chǎn)品(樣品)。參與人員:·驗證的參與人員通常是設(shè)計部門;·確認的參與人員必須包括使用者或能代表使用要求的人員。時機:·驗證的時機是設(shè)計適當階段,一般是設(shè)計階段輸出形成結(jié)果
7、時;·確認的時機是成功的設(shè)計驗證后,一般針對最終產(chǎn)品,也可分階段確認。