最近受朋友公司所托,幫他們的測試團(tuán)隊(duì)與產(chǎn)品線質(zhì)量保障體系業(yè)務(wù)進(jìn)行業(yè)務(wù)咨詢。其中讓我比較感興趣的就是一個(gè)50人的測試部門,從5年前的初創(chuàng)的十幾人團(tuán)隊(duì)開始,經(jīng)歷了從混亂到有序的流程演變,通過團(tuán)隊(duì)乃至公司整體的意識(shí)認(rèn)知與實(shí)際行動(dòng),自始至終將產(chǎn)品質(zhì)量思維貫徹其中,最后讓公司通過了CMMI4級認(rèn)證。
能獲得這樣的成就,最根本的原因就在于公司上下團(tuán)結(jié)一致,各層部門與人員有效的發(fā)揮著各自的作用,堅(jiān)持不斷創(chuàng)新、總結(jié)、優(yōu)化各類工作流程與項(xiàng)目經(jīng)驗(yàn)。而更難得的是公司內(nèi)的人員與團(tuán)隊(duì)又始終保持著高度的目的與價(jià)值觀統(tǒng)一,這樣的公司總體來說想不成功都很難。
說到這里就不得不提一下CMMI這個(gè)概念了,相信在IT公司做過研發(fā)與測試的同學(xué)應(yīng)該都有所耳聞,這次我們就圍繞著CMMI來詳細(xì)說說與其相關(guān)的一些內(nèi)容。
CMMI是什么
CMMI的全稱為Capability Maturity Model Integration,即能力成熟度模型集成。最早的時(shí)候在部分國家與地區(qū)還是使用的是CMM這個(gè)標(biāo)準(zhǔn),但隨著模型本身的發(fā)展與演化,最后就變成了CMMI這個(gè)廣泛的認(rèn)證模型標(biāo)準(zhǔn)了。
那CMMI又有什么用呢?企業(yè)在集成了CMMI的成熟度模型之后,可以增強(qiáng)軟件的開發(fā)與改進(jìn)能力,也方便對軟件工程過程進(jìn)行管理和優(yōu)化,從而能按時(shí)地、不超預(yù)算地開發(fā)出高質(zhì)量的軟件;這么說可能會(huì)有點(diǎn)虛,其實(shí)說直白點(diǎn)就是規(guī)范企業(yè)的項(xiàng)目產(chǎn)品執(zhí)行過程。
如果企業(yè)嚴(yán)格依照CMMI的要求去執(zhí)行產(chǎn)品或項(xiàng)目的流程,認(rèn)證時(shí)會(huì)評估企業(yè)這套執(zhí)行流程就給與評分和改進(jìn)建議,流程中的需求分析、設(shè)計(jì)、編碼、測試、集成、交付一些列的動(dòng)作就可以依照這個(gè)標(biāo)準(zhǔn)來進(jìn)行優(yōu)化和提升,并且CMMI認(rèn)證的專業(yè)性也是毋庸置疑的,所以帶給企業(yè)的執(zhí)行流程方面的提升也是顯而易見且效果巨大的。
另外,如果企業(yè)的項(xiàng)目都是以招標(biāo)的形式進(jìn)行獲取的話,通過CMMI的高等級認(rèn)證,它可以幫助企業(yè)在招投標(biāo)中獲得高額加分,一般情況下可以獲得2-7分的加分。
某些情況下企業(yè)可以靠CMMI認(rèn)證獲得高額政府補(bǔ)貼,部分地區(qū)的補(bǔ)貼可以達(dá)到幾十萬元;至于CMMI為企業(yè)帶來的其他正向影響也是不勝枚舉,比如行業(yè)標(biāo)桿影響力、企業(yè)的品牌宣傳、融資時(shí)的優(yōu)勢等等。
CMMI評級劃分
CMMI一共分為5級,1級最低,5級最高,每一級的定義如下。
01、1級(初始級)
產(chǎn)品或項(xiàng)目的研發(fā)過程是混亂的,對過程管理幾乎沒有定義,就是我們平時(shí)所說的干到哪算哪。過程中的風(fēng)險(xiǎn)與不可控環(huán)節(jié)隨處都是,這樣的狀態(tài)下研發(fā)出的產(chǎn)品自然沒有任何的高質(zhì)量保障。說的極端點(diǎn),產(chǎn)品是否OK完全看運(yùn)氣。
02、2級(管理級)
產(chǎn)品或項(xiàng)目的研發(fā)過程中建立了基本的項(xiàng)目管理過程來跟蹤費(fèi)用、進(jìn)度和功能特性。制定了必要的過程規(guī)范,并能復(fù)用之前項(xiàng)目中成功經(jīng)驗(yàn)。一般來說大部分的小公司都處于在這個(gè)階段,有基本的研發(fā)流程與項(xiàng)目管理角色參與其中,但也僅限于此,項(xiàng)目中的時(shí)間、成本、質(zhì)量無法做到應(yīng)有的及時(shí)管控與優(yōu)化。盡管可以從既有與過往的項(xiàng)目中復(fù)盤進(jìn)行部分的完善與優(yōu)化,但也有其自身的局限性。
03、3級(定義級)
企業(yè)已經(jīng)將產(chǎn)品或項(xiàng)目的過程有了一整套完整的實(shí)施流程,并演化成企業(yè)自身的標(biāo)準(zhǔn)軟件過程。所有項(xiàng)目均使用經(jīng)批準(zhǔn)、剪裁的標(biāo)準(zhǔn)軟件過程來開發(fā)和維護(hù)軟件,軟件產(chǎn)品的生產(chǎn)在整個(gè)軟件過程是可見的。到了這一等級,整個(gè)產(chǎn)品或項(xiàng)目的研發(fā)過程已經(jīng)是相當(dāng)?shù)耐晟屏耍渲械拿恳粋€(gè)階段的準(zhǔn)入、輸入、輸出、成果物都是經(jīng)過準(zhǔn)確標(biāo)準(zhǔn)評審而產(chǎn)生的正向結(jié)果,也正是因?yàn)檫@樣的嚴(yán)格標(biāo)準(zhǔn),才能確保整個(gè)研發(fā)的鏈路中很少會(huì)出現(xiàn)不可控因素與低級風(fēng)險(xiǎn)產(chǎn)生,從而保證了產(chǎn)品與項(xiàng)目的高質(zhì)量交付與上線。
04、4級(量化管理級)
分析對軟件過程和產(chǎn)品質(zhì)量的詳細(xì)度量數(shù)據(jù),對軟件過程和產(chǎn)品都有定量的理解與控制。管理有一個(gè)作出結(jié)論的客觀依據(jù),管理能夠在定量的范圍內(nèi)預(yù)測性能。
這一級別是在3級的基礎(chǔ)上增加了數(shù)據(jù)論證與量級控制標(biāo)準(zhǔn),研發(fā)的過程中對于每個(gè)階段的要求都有精確的度量數(shù)據(jù),以此來進(jìn)行高精度的產(chǎn)品與項(xiàng)目質(zhì)量管控。
試想一下,在這個(gè)等級中,測試團(tuán)隊(duì)需要在項(xiàng)目的測試階段嚴(yán)格做好每一項(xiàng)測試流程中的活動(dòng):測試計(jì)劃(是否細(xì)化到大中小周期)、測試用例(覆蓋率是否100%)、評審的時(shí)機(jī)是否在需求規(guī)格說明書在設(shè)計(jì)階段進(jìn)行、接口測試-功能測試-非功能測試-性能測試是否按照事前安排準(zhǔn)確執(zhí)行、測試報(bào)告中測試結(jié)果描述維度、問題的解決與跟蹤是否有明確的去向、是否符合執(zhí)行標(biāo)準(zhǔn)。
除了這些,還需要有缺陷防范機(jī)制;主動(dòng)進(jìn)行技術(shù)變動(dòng)管理與標(biāo)志、選擇、評價(jià)的機(jī)制;過程變動(dòng)管理,定義過程改進(jìn)的目的,經(jīng)常地進(jìn)行過程改進(jìn)等等條件限制。
05、5級(優(yōu)化級)
優(yōu)化管理級的量化反饋和先進(jìn)的新思想、新技術(shù)促使過程持續(xù)不斷改進(jìn)。這一等級的要求就已經(jīng)變得極其嚴(yán)苛了,需要在產(chǎn)品或項(xiàng)目的過程中特別關(guān)注軟件過程改進(jìn)的持續(xù)性、有效性以及自身加強(qiáng)。防止缺陷及問題的發(fā)生。不斷地提高整個(gè)的過程能力。另外對于執(zhí)行過程的效果,進(jìn)行成本/利潤分析,從成功的過程實(shí)踐中吸取經(jīng)驗(yàn),加以總結(jié)。
把最好的創(chuàng)新成績迅速向全組織轉(zhuǎn)移。對失敗的案例,由項(xiàng)目團(tuán)隊(duì)近行分析以找出原因。項(xiàng)目完成后進(jìn)行分析,通過來自過程的質(zhì)量反饋和吸收新觀念、新科技,使過程能不斷地得到改進(jìn)。最后對過程的評價(jià)相對標(biāo)準(zhǔn)軟件過程的改進(jìn),都在全組織內(nèi)推廣。
CMMI認(rèn)證評級的注意點(diǎn)
01、CMMI 3
一般來說CMM1和CMMI2,企業(yè)只要有軟件研發(fā)的過程,企業(yè)實(shí)際經(jīng)營管理能夠正常運(yùn)轉(zhuǎn)且經(jīng)營狀態(tài)為續(xù)存,就滿足了要求。而從CMMI3開始才會(huì)有相應(yīng)的認(rèn)證證書,對企業(yè)也開始有了一定的要求了,如團(tuán)隊(duì)規(guī)模與人員角色數(shù)量規(guī)定。
認(rèn)證CMMI3級的話研發(fā)團(tuán)隊(duì)人數(shù)應(yīng)在15-20人左右,開發(fā)的產(chǎn)品需要準(zhǔn)備3個(gè)(兩個(gè)是研發(fā)完成狀態(tài),另一個(gè)是需要在研發(fā)中),評估小組成員4人(ATM),另外就是固定的辦公場所。
CMMI3的人員架構(gòu)需要1名發(fā)起人(公司法人或高層,法人最好),組織級5人(高層經(jīng)理、組織培訓(xùn)、過程與產(chǎn)品質(zhì)量保證、配置管理員、過程改進(jìn)小組EPG),項(xiàng)目級10人(負(fù)責(zé)該項(xiàng)目的項(xiàng)目經(jīng)理、開發(fā)與測試人員等),評估小組4人(主要負(fù)責(zé)協(xié)助主任評估師完成正式評估)。
一般來說CMMI3的認(rèn)證不會(huì)太困難,大部分的企業(yè)都是可以達(dá)到認(rèn)證條件的,只需要全力配合認(rèn)證機(jī)構(gòu)順利開展,并確保所需的材料與日常工作標(biāo)準(zhǔn)與輸出物OK的情況下,剩下的就只是水到渠成的事。
02、CMMI 4
CMMI4的要求自然就更高了,它要求認(rèn)證企業(yè)必須擁有自己的項(xiàng)目庫,并且能從一定量的案例中做到實(shí)際的優(yōu)化,對人員(開發(fā)、測試、質(zhì)量經(jīng)理、ATM等)、軟件、企業(yè)經(jīng)營規(guī)模等要求都更高。
CMMI的認(rèn)證是可以越級的,但也僅限于到CMMI3,要認(rèn)證CMMI4與CMMI5的話必須先通過CMMI3的認(rèn)證并且持證時(shí)間滿一年后才可以。
CMMI4認(rèn)證的資格除了上面說的這些先決條件之外,另外很重要的就是在CMMI3認(rèn)證取得之后一直到CMMI4或5認(rèn)證開的這段時(shí)間是否有積累到一定量的項(xiàng)目實(shí)施經(jīng)驗(yàn)與成果累積,這里的積累不是單純的只要執(zhí)行就好了,重點(diǎn)在于是否可以按照后期需要認(rèn)證的CMMI等級的標(biāo)準(zhǔn)要求進(jìn)行相應(yīng)的材料與經(jīng)驗(yàn)累積。
說的通俗一點(diǎn)就是你想考個(gè)證,就必須復(fù)習(xí)和他相關(guān)的教材的意思。日常工作中是否有嚴(yán)格按照CMMI的認(rèn)證要求執(zhí)行,對應(yīng)的流程與標(biāo)準(zhǔn)是否有跡可循,文檔化、量化、持久化都是必不可少的手段。剩下的無非就是團(tuán)隊(duì)的規(guī)模是否達(dá)標(biāo),企業(yè)戰(zhàn)略目標(biāo)是否合理且明確等等條件。
03、CMMI 5
能申請到CMMI5的公司都是非常厲害的,達(dá)到企業(yè)規(guī)模65人和項(xiàng)目規(guī)模6個(gè)的要求其實(shí)并不難,難就難在20個(gè)實(shí)踐領(lǐng)域。企業(yè)必須確保在滿足CMMI3的實(shí)踐領(lǐng)域基礎(chǔ)上追加這些并嚴(yán)格執(zhí)行這些認(rèn)證要求。
這里需要注意的是之前很多人說的22個(gè)過程領(lǐng)域其實(shí)是CMMI v1.3版本的叫法,2019年開始就全面改為CMMI2.0版本,此版本開始已經(jīng)將這個(gè)22個(gè)領(lǐng)域進(jìn)行了分解與合并,變成了現(xiàn)在的20個(gè)實(shí)踐領(lǐng)域。要想認(rèn)證這一等級的話就必須滿足20個(gè)實(shí)踐領(lǐng)域,具體領(lǐng)域明細(xì)如下:
CMMI認(rèn)證評級的流程
CMMI的所有等級相關(guān)認(rèn)證流程都是差不多的,這里以CMMI5為例,大致從企劃到認(rèn)證結(jié)束的流程如下:
01、企劃發(fā)起
由于CMMI認(rèn)證工作十分的專業(yè),所以企業(yè)一般來說會(huì)先選擇一家專業(yè)的咨詢公司來幫助自己進(jìn)行相關(guān)的認(rèn)證準(zhǔn)備工作。
02、信息注冊與提交
首先,發(fā)起人需要在CMMI研究院官網(wǎng)進(jìn)行信息注冊,注冊成功之后,聯(lián)系CMMI評估師,將企業(yè)的OU表(包括公司信息、項(xiàng)目信息、ATM信息)發(fā)送給評估師,CMMI評估師會(huì)根據(jù)企業(yè)注冊的信息發(fā)起評估計(jì)劃,這個(gè)時(shí)候一般已經(jīng)可以確定CMMI的評估日期了,CMMI評估師根據(jù)日程安排自由選擇。這里需要注意的是發(fā)起人賬號與協(xié)調(diào)人賬號的注冊必須提前幾個(gè)月的時(shí)間,不然評估的時(shí)間會(huì)排到你懷疑人生。
還有一點(diǎn)就是與評估師的溝通最好都有咨詢公司主導(dǎo),當(dāng)然后續(xù)的一些事宜都最好提前與咨詢公司溝通到位或者在場陪同。
03、資料籌備與人員安排
接下來咨詢公司會(huì)協(xié)助企業(yè)準(zhǔn)備評審材料,CMMI認(rèn)證材料主要包括項(xiàng)目資料,企業(yè)基本信息,研發(fā)流程,人員角色安排等等,咨詢公司會(huì)根據(jù)這些資料將企業(yè)的軟件開發(fā)流程進(jìn)行CMMI標(biāo)準(zhǔn)化,使其符合認(rèn)證的要求標(biāo)準(zhǔn)。
基本的審核材料有企業(yè)基本信息,如企業(yè)英文名、企業(yè)簡介、組織架構(gòu)、公司的戰(zhàn)略目標(biāo)、產(chǎn)品的應(yīng)用領(lǐng)域、企業(yè)總?cè)藬?shù)、產(chǎn)品研發(fā)相關(guān)人員的數(shù)量、客戶類型、年度銷售額、評估的發(fā)起人和聯(lián)系人等基本信息。
項(xiàng)目相關(guān)的有項(xiàng)目信息,包含項(xiàng)目名稱、項(xiàng)目描述、客戶名稱、客戶類型、起始日期等。項(xiàng)目確定的考慮因素包含項(xiàng)目材料完整度、項(xiàng)目相關(guān)人員是否有時(shí)間參與評估、項(xiàng)目規(guī)模、項(xiàng)目類型、客戶類型等。人員角色則需要根據(jù)已確定項(xiàng)目,將參與評估的各角色人員,如高層經(jīng)理、各項(xiàng)目的項(xiàng)目經(jīng)理、設(shè)計(jì)人員、開發(fā)人員、測試人員、過程改進(jìn)人員(EPG)、配置管理人員(CM)、質(zhì)量保證人員(QA)等。
這里需要考慮人員本身是否從事或了解角色所對應(yīng)的工作、時(shí)間是否充足、項(xiàng)目相關(guān)人員是否參與過對應(yīng)項(xiàng)目并有一定量的項(xiàng)目經(jīng)驗(yàn)等。
04、評估前準(zhǔn)備
這個(gè)是正式評估前的最后一環(huán),在企業(yè)進(jìn)行審核的相關(guān)材料準(zhǔn)備過程中,咨詢公司會(huì)對對應(yīng)人員進(jìn)行CMMI培訓(xùn),另外在正式的CMMI認(rèn)證之前,也需要對參與人員針對考核方向與訪談重點(diǎn)進(jìn)行模擬訪談。
培訓(xùn)的內(nèi)容一般包含:CMMI的整體概念、根據(jù)認(rèn)證等級的所屬實(shí)踐領(lǐng)域與其實(shí)際作用、大致的認(rèn)證流程步驟、參與人員角色的具體分工責(zé)任、實(shí)踐領(lǐng)域與執(zhí)行流程各階段的輸出物是什么等等之類。
這里拿博主的公司舉例,角色培訓(xùn)部門會(huì)對具體參與人員進(jìn)行角色專項(xiàng)培訓(xùn),培訓(xùn)內(nèi)容主要是有針對性的梳理各角色工作內(nèi)容、工作流程、輸出成果物、相關(guān)干系人、訪談重點(diǎn)關(guān)注內(nèi)容、評估準(zhǔn)備重點(diǎn)材料等。
之后會(huì)讓各角色人員結(jié)合專項(xiàng)培訓(xùn)內(nèi)容和整體CMMI評估材料進(jìn)行評估前準(zhǔn)備、了解材料內(nèi)容、項(xiàng)目內(nèi)容、相關(guān)工作成果輸出物的位置與問題的作答方向。全部完成后按照正式訪談形式進(jìn)行模擬訪談演練,了解受訪談人員的準(zhǔn)備情況,針對準(zhǔn)備不充分的人員進(jìn)行補(bǔ)充培訓(xùn)。一般來說以上這些工作內(nèi)容基本在正式認(rèn)證前一個(gè)半月到兩個(gè)月之前就必須完成。
05、正式評估
在正式評估開始的前一天,會(huì)由咨詢公司與評估師聯(lián)系,根據(jù)評估師要求,準(zhǔn)備就緒檢查。企業(yè)配合協(xié)調(diào)就緒檢查和訪談期間使用的會(huì)議室場地、準(zhǔn)備受訪談人員使用的電腦等設(shè)備、協(xié)調(diào)參與檢查人員時(shí)間、準(zhǔn)備投影設(shè)備、攝像頭等。
正式評估為期5天,第1天會(huì)開一個(gè)啟動(dòng)大會(huì),相關(guān)的角色人員都不用參加。
第2和第3天就是重頭戲了,評估師與評估小組會(huì)根據(jù)對應(yīng)申請等級認(rèn)證的數(shù)百條要求來進(jìn)行審查,審查大致分為兩類,一個(gè)是物,文檔審查,也就是我們平時(shí)項(xiàng)目執(zhí)行流程中所涉及的各類執(zhí)行工作文檔與記錄。
另一個(gè)就是人,現(xiàn)場訪談,評估師與評估小組會(huì)對相關(guān)人員進(jìn)行訪談,受訪談人員包話:項(xiàng)目經(jīng)理、開發(fā)、測試、設(shè)計(jì)、需求分析、QA、OT、CM、高層經(jīng)理等。
評估小組完成所有的實(shí)踐領(lǐng)域的文檔審核、現(xiàn)場訪談工作后,評估小組更新產(chǎn)出物,并由評估師、評估小組全員參與已投票表決的方式進(jìn)行逐條打分。最后,提交最終版的產(chǎn)出物、以及項(xiàng)目級和組織級文檔給到評估師。
評估師會(huì)對其查證與訪談的結(jié)果來判斷企業(yè)的這一部分是否符合CMMI的對應(yīng)要求,這個(gè)結(jié)果最終會(huì)在審查的最后一天向全員公布。
第4天評估小組與企業(yè)相關(guān)人員召開初步發(fā)現(xiàn)會(huì)議,此會(huì)議企業(yè)發(fā)起人、相關(guān)人員可以就初步發(fā)現(xiàn)報(bào)告中的問題進(jìn)行補(bǔ)充說明,實(shí)質(zhì)類似于答辯會(huì)。這個(gè)初步發(fā)現(xiàn)會(huì)會(huì)分為兩次召開,第一次是面向相關(guān)員工的,第二次是面向管理人員的,時(shí)長都差不多在半小時(shí)左右。之后評估師與評估小組再次對初步發(fā)現(xiàn)報(bào)告進(jìn)行最終確認(rèn),還是以投票表決的形式對結(jié)果達(dá)成一致。
第5天就會(huì)公布最終的審查結(jié)果,最終結(jié)果由評估師形成最終報(bào)告。并與企業(yè)相關(guān)人員召開最終報(bào)告總結(jié)會(huì)議,同時(shí)宣布評審?fù)ㄟ^和不通過。最后,評估師會(huì)將最終發(fā)現(xiàn)報(bào)告留存給企業(yè)發(fā)起人。這個(gè)會(huì)需要全員參與并且現(xiàn)場拍合照存檔。
所有工作結(jié)束之后,評估師會(huì)整理好所有評估的工作輸出物,通過評估系統(tǒng)提交給官方審查。官方的質(zhì)量審查小組對全球每一場評估進(jìn)行審查,判斷評估是否滿足SCAMPI A評估流程規(guī)范的要求。
一般正式評估之后的1到2個(gè)月就可以在CMMI研究院官網(wǎng)上查看到公布的評審結(jié)果,另外審查結(jié)果也會(huì)以郵件的形式同步發(fā)送到企業(yè)發(fā)起人與評估師這邊。