隨著競爭日趨激烈,專門從事軟件外包測試業(yè)務的公司或單位,要想在國際軟件外包測試業(yè)務市場上取得競爭優(yōu)勢,必須具備三方面的競爭能力:一是以品牌優(yōu)勢或規(guī)模優(yōu)勢取得國際客戶的信任,二是擁有大量的專業(yè)測試人才,三是在軟件測試流程上能夠符合國際標準。
其中,軟件測試流程的改進和提高無疑是獲得核心競爭力的途徑之一。為了完善軟件測試流程,穩(wěn)定測試質量,提高服務水平,軟件外包企業(yè)往往引進某一種國際質量認證體系。
對于軟件企業(yè),CMMI(Capability MaturityModel Integration)是當前業(yè)內最流行的國際質量認證體系之一。CMMI被稱為能力成熟度模型集成,是有關企業(yè)/組織的過程進程中各個發(fā)展階段的定義、實現、質量控制和改善的模型化描述。
不可否認,CMMI認證體系經過十多年的發(fā)展,已經比較完善。但是,由于各行業(yè)、企業(yè)以及各軟件項目的特點都不盡相同,所以引進并非一個簡單的復制過程,如果引進失敗將造成企業(yè)巨大的財力、物力、效率損失,甚至會使企業(yè)陷入一個更加窘迫的境地。因此,對于軟件外包測試項目,引進CMMI存在一定的風險。
一、CMMI模型與風險管理思想的結合
從理論上講,CMMI應用在軟件外包企業(yè)可能有兩個優(yōu)點。一是可用于確定企業(yè)/組織的過程能力,利于提高企業(yè)的國際知名度;二是有助于找出企業(yè)/組織中產品質量及過程改進方面較為關鍵的問題,從而為它們的過程改進提供指南。
根據CMMI原來的定義,CMMI有兩種表述方式:階段表述和連續(xù)表述。前者采用5個等級的成熟度模型,后者采用6個等級的能力等級模型。按照過程域劃分,CMMI總共有22個過程域,其中CMMI2級包括7個過程域(需求管理、項目規(guī)劃、項目監(jiān)控、供應商合約管理、度量與分析、過程與產品質量保證和配置管理),CMMI3級包括11個過程域(需求開發(fā)、技術解決方案、產品集成、驗證、確認、機構過程焦點、機構過程定義、機構培訓、集成化項目管理、風險管理和決策分析),CMMI4級包括2個過程域(機構過程性能、量化項目管理),CMMI5級包括2個過程域(機構創(chuàng)新及部署、因果分析)。
從上述可知,CMMI中關于測試流程的指導就來源于CMMI3級中驗證與確認這兩個過程域。按照CMMI標準,我們首先可以構建出軟件外包測試項目測試流程框架軟件測試流程活動包括測試活動的執(zhí)行角色、發(fā)生時間以及先后繼承關系等方面。
其中,軟件測試流程主要有以下幾個步驟:第一步是創(chuàng)建測試計劃,第二步是執(zhí)行測試,第三步是對整個測試過程的評價。在具體應用中,我們發(fā)現這一測試流程存在一些問題:
第一,一些高級測試人員認為簡單化的測試工作,如果按照CMMI標準化要求,這一工作可能變得復雜化,工作量增加,相反報酬卻沒有增加,所以實施起來存在主觀上的人為抵制風險。
第二,CMMI要求的專業(yè)化程度較高。因此一些企業(yè)通常會雇傭專業(yè)的C M M I 咨詢顧問來指導實施。咨詢顧問一般會結合其在其他企業(yè)的工作經驗,為本企業(yè)提出解決方案和實施建議。但是軟件測試人員能否有效貫徹實施這一方案,卻是個問題。
第三,外包測試流程中某些活動的發(fā)生的時間與一般軟件開