軟件驗證與確認
軟件驗證(Verification)和確認(Validation),簡稱為V&V 或V2。驗證和確認的區別在于:驗證關心的是確保軟件模塊或功能內在的正確性;確認則表明要與規定的需求進行比較是否滿足要求,它所關心的是該軟件產品的價值。
軟件驗證與確認是貫穿于軟件開發過程中十分細致的軟件檢驗活動。每個開發階段的結果可認為是下一開發階段的一個規格文件,但要進入下一階段之前必須對該結果作出確認。驗證和確認的主要方法有:代碼走查、審查、測試和正確性證明等。代碼走查就是對軟件文檔進行書面檢查。它通過人工模擬執行源程序的過程,檢查軟件設計的正確性。人工模擬也像計算機執行那樣,可以仔細推敲、校驗和核實每一步的執行結果,進而確定其執行邏輯、控制模型、算法和使用參數與數據的正確性。
審查是軟件驗證和確認中的一個主要方法,可彌補其他方法的一些不足之處。它是一種用形式的、有效的和經濟的方法查找設計和編程中的錯誤。審查的主要目的是1)找出軟件中的缺陷;2)核實是否符合需求;3)早期生產評價;4)過程評價等。由第三方進行軟件評測工作是十分重要的,其評測工具軟件對軟件進行靜態的和動態的評測,能發現軟件設計的缺陷、瓶頸和多余物等。值得指出的是,用于軟件測試的各種方法、技術、工具和措施等,對提高軟件的可靠性都是必要的,但不是充分的。這就表明,其中任何一個手段,均不能絕對保障軟件的可靠性,但只要能發現軟件中任何一個微小的錯誤,就起到了它的作用。
軟件評審
從某種意義上說,軟件中的多數錯誤是人為的。軟件評審是軟件生產過程中過濾軟件錯誤的一個“濾波器”。軟件評審涉及評審的組織機構、管理、準則、類別、內容、文件和要求等。
一般要求在軟件研制階段的里程碑點進行軟件評審。評審的主要類別有:軟件定義評審、軟件需求評審、概要設計評審、詳細設計評審、軟件實現評審和軟件驗收評審等。
評審的原則:
·某階段未通過階段評審不得進入下一個軟件研制階段;
·評審時對事不對人,評審的是產品,而不是評審生產者;
·評審就要挑刺,找問題、缺陷和隱患;
·評審組的人員面越廣越好;
·評審組不作無休止的爭論和辯駁,將爭論點記錄下來,供以后甄別;
·評審只是提出問題,沒有解決問題的任務;
·使用“評審檢查單”以提高評審的效果;
評審的作用:
·技術把關,避免軟件人員的想當然;
·概念溝通,吸收用戶和總體人員參加,審查軟件人員理解的正確性;
文章來源于領測軟件測試網 http://www.kjueaiud.com/