CMMI3 PA之驗證(VER) 過程域解釋和實施指南
CMMI3 PA之驗證(VER) 過程域解釋和實施指南
ISO9000基礎和術語的定義:
驗證 verification:通過提供客觀證據對規定要求已得到滿足的認定; 注1:“已驗證”一詞用于表示相應的狀態; 注2:認定可包括下述活動,如:變換方法進行計算;將新設計規范與已證實的類似設計規范進行比較;進行試驗和演示;文件發布前的評審等;
確認 validation: 通過提供客觀證據(3.8.1)對特定的預期用途或應用要求(3.1.2)已得到滿足的認定。注1:“已確認”一詞用于表示相應的狀態。注2:確認所使用的條件可以是實際的或是模擬的。
驗證就是按照既定的標準,認定或工作產品是否符合要求。工作產品可能是文檔也可能是軟件本身。而認定的辦法一般是同行評審、軟件測試、試驗、演示等。
那什么是同行評審呢?比方說:A君是做軟件設計的,B君也是做軟件設計的,A君寫了一份設計文檔,讓B君這個同行(因為大家都是做設計的)來給給意見,這樣就使同行評審。同行評審的目的就是讓有同樣工作經驗和技能的人來評審自己的工作產品,發現盡量多的問題。
驗證這個PA其目的是希望軟件企業在軟件開發整個過程中,做好相應的檢查工作,把盡量問題發現前面,保證了項目的可控性,降低開發的成本。
提示:驗證(需求、設計、測試用例)一定要有依據;代碼走查不是驗證;驗證一般要有質量準則、選擇準則、覆蓋準則等;
驗證與確認的差別:
驗證重點強調是,驗證的準則是規定的要求;規定要求的表現的工作產品很多,如單位測試驗證產品每一模塊是否符合詳細設計說明書,詳細設計說明書是規定的要求;集成測試驗證接口是否符合概要設計說明書要求,概要設計說明書是規定要求;系統測試是驗證產品是否符合需求規格說明書要求,需求規格說明書是規定要求;
確認重點強調的是,確認的準則是預期用途或應用要求,所以,確認考慮的是產品或系統最終的用途或應用要求是否可以實現,確認過程所使用的條件(如環境條件)要是實際的或是模擬的,如汽車要求預期用途是在高溫的沙漠里行駛,確認過程可以實際或模擬高溫和沙塵的環境,把新開發的汽車放在次環境中路試。確認常見的方法:可以是分析、評審、模擬、原型、示范、試驗、測試等
SG 1 驗證準備
SP 1.1 選擇需驗證之工作產品
SP 1.2 建立驗證環境
SP 1.3 建立驗證程序及準則
SG 2 執行同行審查
SP 2.1 準備同行審查
SP 2.2 進行同行審查
SP 2.3 分析同行審查資料
SG 3 驗證工作產品
SP 3.1 執行驗證
SP 3.2 分析驗證結果
這個PA有3個Specific Goals,SG1講述的是做好驗證的準備,SG2、SG3分別講述的是執行驗證的兩種辦法,一種是同行評審,一種是執行驗證(通常就是測試,如單元測試、集成測試、系統測試)。
如果測試是在用戶實際生產環境下進行的,例如:驗收測試、客戶試用系統等,這時這類工作就屬于確認(Validation)了,請參考關于“確認(Validation)”。
SG1 Preparation for verification is conducted.
準備驗證的工作。目的是確保驗證(措施)已植入與產品及產品需求、設計、開發計劃和進度中,并對支持工具、測試設備及軟件、模擬、原始系統及設施等加以定義。驗證方法包括(但不限于)檢查、同行審查、審計、逐步審查、分析、模擬、測試及展示。
SP1.1 選擇需驗證之工作產品:選擇需驗證的工作產品及每一工作產品使用的驗證方法。組織會定義要進行同行評審的工作產品,如:計劃文檔、需求文檔、設計和接口文檔、代碼等,并且規定了每種文檔的同行評審辦法。組織也會定義需要進行測試的軟件產品,比方說要進行單元測試、集成測試、系統測試等。
典型的工作產品
1.需接受驗證的工作產品清單
2.每個工作產品的驗證方法
子實踐
1.識別需驗證的工作產品。
2.識別每個工作產品須符合的需求。參考需求管理過程域的“維護需求的雙向追溯性”特定實踐,以協助識別每一工作產品的需求。
3.識別可用的驗證方法。常見的驗證方法:路徑覆蓋測試、壓力、強調和性能測試,基于決策樹的測試,基于功能分解的測試,測試用例重用、接收測試等
4.定義每個工作產品的驗證方法。
5.提出需驗證的工作產品、需滿足的需求及使用的驗證方法,以與計劃整合。有關協調項目策劃的信息,請參考項目策劃過程域。
SP1.2 建立驗證環境:建立并維護支持驗證工作的環境。對于同行評審來說,支持環境可能就是會議室、投影、電腦、事先準備好的文檔等。對于測試來說,支持環境可能就是測試的軟件環境、數據環境、硬件環境等
典型的工作產品
1.驗證環境
子實踐
1.識別驗證環境需求。2.識別可再用及修改的驗證資源。
3.識別驗證設備及工具。4.取得支持驗證的設備及環境,例如:測試設備及軟件。
SP1.3建立驗證程序與準則:建立并維護所選定的工作產品的驗證程序與準則。對于同行評審來說,驗證過程就是同行評審開展的過程相關規定,如要事先發資料、通知大家到會、會議的組織、會議記錄等等,準則可能就是每個工作產品的評審標準。對于測試來說,驗證過程就是測試過程的相關規定,準則就是需求規格說明書,或者說是測試通過的標準。
典型的工作產品
1.驗證程序 2.驗證準則
子實踐
1.必要時,為工作產品與現成品,制作廣泛且整合的驗證程序。
2.必要時,開發與細化驗證準則。
3.識別預期結果、觀察中允許的誤差及其它符合需求的準則。
4.識別支持驗證所需的設備及與環境有關的組件
SG2 執行同行審查:對指定的工作產品進行同行評審。
SP2.1準備同行審查:準備對選定的工作產品進行同行審查。
如:把要評審的文檔實現發給大家,準備好會議議程,準備好會議室、投影儀等。
典型的工作產品
1.同行審查進度
2.同行審查檢查表
3.工作產品的允入及允出準則
4.需再次舉行同行審查的準則
5.同行審查培訓教材
6.已選定待審查的工作產品
子實踐
1.決定采用哪一種同行審查類型。
2.針對同行審查時所應搜集的資料,定義其需求。
3.建立并維護同行審查的允入及允出準則。
4.建立并維護再次審查工作產品的準則。
5.建立并維護檢查表,以確保工作產品審查的一致性。
6.開發詳細的同行審查進度,包括同行審查的培訓日期及審查所需數據的完成進度。
7.工作產品分發前,需先確保其符合同行審查允入準則。
8.提早分發工作產品及其相關信息給審查人員,使審查人員有足夠的準備時間。
9.適當地指派人員所擔任的角色。
10.先行審查工作產品,以準備進行同行審查。
SP2.2 進行同行審查:針對所選定的工作產品進行同行審查,并由同行審查的結果識別問題。
典型的工作產品
1.同行審查結果
2.同行審查問題
3.同行審查資料
子實踐
1.依指派的角色進行審查。
2.識別并記錄工作產品的缺失及其它問題。
3.記錄審查結果,包括行動方案。
4.搜集同行審查資料。有關數據搜集,請參考度?與分析過程域,以獲得更多信息。
5.識別行動方案并與相關的干系人溝通問題。
6.若已定義的準則指出需要性,則需再次執行審查。
7.確保符合審查的允出準則。
SP2.3分析同行審查資料:分析同行審查的準備、執行及結果數據。例如:記錄評審的準備、進行時間,發現的問題數量,評審的結果、缺陷的數據等等,對每個問題進行分析等。
典型的工作產品
1.同行審查資料
2.同行審查行動方案
子實踐
1.記錄同行審查準備、執行及結果的數據。典型的數據通常包括產品名稱、產品規模大小、審查成員、審查類型、每一審查人員的準備時間、審查會議時間、缺失數、缺失類型及發生處等。其它可能搜集的工作產品信息,例如:規模大小、開發階段、所檢查的操作模式及被評估的需求。
2.保存數據,以便日后參考及分析。
3.保護數據,以確保同行審查數據無不當使用。
4.使用數據評估人員績效、將審查結果歸屬到個人的績效上是不當使用同行審查數據的范例。
5.分析同行審查資料。
SG3 驗證工作產品:根據指定的要求驗證工作產品。這里的驗證既包括同行評審也包括測試,但因為SG2專門是針對同行評審的,這個SG可以理解成主要針對除了同行評審外的其它驗證活動。
SP3.1對選定的工作產品執行驗證。對指定的工作產品進行驗證如:執行單元測試、集成測試(驗證功能和接口)、系統測試等。
提示:單元測試要考慮語句覆蓋和分支覆蓋要求,集成測試要考慮模塊接口、調用,健壯等,測試時在在什麼環境下(基于外部硬件和軟件功能是否正常等);系統測試:要考慮性能要求(如跑多快,網站多少訪問速度,支持多少人訪問等),很多公司的需求和原始需求沒有寫性能要求是不對的;
典型的工作產品
1.驗證結果
2.驗證報告
3.展示或演示程序
4.運行過程日志或記錄
子實踐
1.依據需求,針對選定的工作產品執行驗證。
2.記錄驗證活動的結果。
3.由工作產品的驗證結果,識別行動方案。
4.記錄所執行的驗證方法,以及記錄在執行過程中發現的與使用的驗證方法及程序的偏差。
SP3.2 SP 3.2分析驗證結果:分析所有驗證活動的結果。分析驗證的結果,并制定修正計劃。這里強調的是:除了要分析發現的問題外,還需要采取糾正措施修正這些問題。
典型的工作產品
1.分析報告(例如:性能數據統計值、不符合事項的原因分析、實際產品與模式的比較、趨勢等)
2.問題報告
3.驗證方法、準則及環境的變更需求
子實踐
1.比較實際與預期結果。
2.基于已建立的驗證準則,識別未符合需求的產品,或識別方法、程序、準則及驗證環境的問題。
3.分析與缺失有關的驗證資料。
4.記錄所有分析結果并制成報告。
5.使用驗證結果,比較實際度?及性能與技術性性能參數間的差異。
6.提供缺失如何解決的信息(包含驗證方法、準則及驗證環境),并開始實施糾正措施。