01.為什么要做DevOps能力成熟度評估?
當一家公司開始嘗試通過DevOps方法論來提升IT部門的研發(fā)效能一段時間后,作為公司的決策者,可能會希望了解自己公司當前的研發(fā)效能改進情況,以及在同行業(yè)中的水平;同時,也想知道未來一段時間內(nèi)可能達到的狀態(tài),以及如何衡量整個研發(fā)團隊的產(chǎn)出和質(zhì)量等。
為了解決這些問題,決策者期望能有一個通用的、行業(yè)認可度高的能力成熟度模型,來評估企業(yè)的DevOps成熟度。這樣,企業(yè)可以明確自己當前的建設(shè)水平,對于表現(xiàn)好的方面,持續(xù)保持并力求穩(wěn)中有進;對于表現(xiàn)不佳的方面,積極尋找解決方案,持續(xù)改進和提升。
02.成熟度標準模型如何選擇?
目前,整個業(yè)界存在多種成熟度模型,常見的有:
中國信息通信研究院(以下簡稱“信通院”)的DevOps標準是國內(nèi)較早推出的DevOps領(lǐng)域標準,對相關(guān)規(guī)范和工藝細節(jié)要求嚴格,已有較多企業(yè)和案例通過認證,具有一定的市場影響力。該標準劃分的能力域較多,與軟件研發(fā)、交付領(lǐng)域緊密相關(guān),且企業(yè)普遍選擇通過的是其中的“持續(xù)交付”能力域(即標準3)。
接下來,我們就基于信通院的DevOps標準進行相關(guān)的介紹。
03.如何進行評估?
不管是哪個成熟度模型,大致都是從團隊組織管理的成熟度(軟的方面)和工程技術(shù)的成熟度(硬的方面)兩個大的維度來設(shè)計和評估的。
信通院的DevOps標準,將成熟度劃分為5個等級,呈現(xiàn)遞進的方式,高級別內(nèi)容亦包含低級別內(nèi)容,無需重復(fù)引用,如下表所示。
在信通院DevOps成熟度模型中的標準3-持續(xù)交付,其分級技術(shù)要求包括:配置管理、構(gòu)建與持續(xù)集成、測試管理、部署與發(fā)布管理、環(huán)境管理、數(shù)據(jù)管理、度量與反饋等7大能力子域(其下又包含14個能力項和49個能力子項),如下圖所示。
下面針對其7個能力子域,展開說明一下其評估要點:
1)配置管理
分為版本控制和變更管理兩個能力項。在版本控制方面,主要考察版本控制系統(tǒng)和分支管理的使用情況,以評估研發(fā)團隊的開發(fā)成熟度和代碼管理規(guī)范的遵循程度。同時,制品管理和單一可信源則強調(diào)代碼庫、制品庫等數(shù)據(jù)的安全性和一致性,以及相應(yīng)的管理規(guī)范的執(zhí)行。在變更管理方面,主要評估需求/缺陷與代碼、制品等配置項的信息關(guān)聯(lián)與雙向可追溯性,以及自動化回滾等相關(guān)操作的實現(xiàn)情況。
2)構(gòu)建與持續(xù)集成
分為構(gòu)建實踐和持續(xù)集成兩個能力項。構(gòu)建計劃、構(gòu)建職責(zé)、集成頻率、反饋周期等方面的評估,側(cè)重于考察團隊在持續(xù)集成層面的能力成熟度,以及相關(guān)管理規(guī)范的完善程度和執(zhí)行情況。而構(gòu)建方式、構(gòu)建環(huán)境、集成服務(wù)、集成方式等能力子項,則更多地依賴于工具/平臺的技術(shù)支撐能力。
3)測試管理
分為測試分層策略、代碼質(zhì)量管理和自動化測試三個能力項。測試分層策略要求涵蓋代碼層面的單元測試、接口/服務(wù)層面的接口測試、功能層面的UI測試以及非功能性測試,并設(shè)定相應(yīng)比例和管理規(guī)范要求。代碼質(zhì)量管理方面,強調(diào)要有組織級質(zhì)量規(guī)約,并能自動化執(zhí)行(需自動化工具支持),同時要求及時處理和反饋問題。自動化測試則依賴于自動化工具,完成自動化測試的開發(fā)、執(zhí)行和分析。
4)部署與發(fā)布管理
分為部署與發(fā)布模式、部署流水線等兩個能力項。部署與發(fā)布模式,強調(diào)的是部署相關(guān)一些管理規(guī)范要求、部署策略、應(yīng)用配置分離策略、容器化等。部署流水線,主要考察的是相關(guān)流水線工具的技術(shù)能力。
5)環(huán)境管理
這個能力子域主要考察研發(fā)環(huán)境是否有統(tǒng)一標準規(guī)范要求,環(huán)境構(gòu)建是否有平臺自動化、自服務(wù)能力,環(huán)境的依賴和配置是否可實現(xiàn)基礎(chǔ)設(shè)施即代碼的能力等。整理來看,也是比較偏向于工具/平臺的技術(shù)硬實力。
6)數(shù)據(jù)管理
分為測試數(shù)據(jù)管理和數(shù)據(jù)變更管理兩個能力項。測試數(shù)據(jù)管理,重點考察測試數(shù)據(jù)來源、數(shù)據(jù)覆蓋場景、數(shù)據(jù)的獨立性等能力。數(shù)據(jù)變更管理,則主要關(guān)注流水線能力,以及數(shù)據(jù)庫備份、回滾、監(jiān)控等能力。
7)度量與反饋
分為度量指標與數(shù)據(jù)管理、度量驅(qū)動改進兩個能力項。度量指標與數(shù)據(jù)管理主要考察指標定義、指標收集規(guī)則以及指標的更新機制。度量驅(qū)動改進方面,則對度量工具和持續(xù)改進機制都有較高的要求。
04.成熟度評估的價值
那么成熟度評估對企業(yè)能帶來哪些價值呢?可以從以下三個層面來說明:
05.評估方式及成熟度標準建設(shè)建議
成熟度評估的方式有兩種:一種是企業(yè)內(nèi)部自評,通過自評可以了解自身的強項與弱項,從而進行有針對性的補強和優(yōu)化;另一種是邀請信通院專家進行官方評估,以獲得認證證書,進而提升企業(yè)的社會認可度和知名度。具體選擇哪種評估方式,應(yīng)根據(jù)企業(yè)自身的實際情況來決定。
關(guān)于如何選擇評估方式,這里有一些建議。例如,可以先選擇1-2個項目參與信通院官方的認證。這一過程中,企業(yè)不僅能深入理解和認知成熟度標準,還能積累通過評估的經(jīng)驗,并最終獲得官方認證證書。
在獲得官方認證后,企業(yè)可以在信通院標準的基礎(chǔ)上,進行調(diào)整和優(yōu)化(取其精華,去其糟粕),從而構(gòu)建并制定符合本企業(yè)特色的DevOps成熟度標準。這樣的標準不僅有助于企業(yè)進行內(nèi)部評估與推廣,還可能實現(xiàn)成本更優(yōu)、效果更佳的評估效果。
CMDB治理:CMDB數(shù)據(jù)消費與應(yīng)用指南
查看詳細
1分鐘解鎖開箱即用價值流:研發(fā)效率飆升實戰(zhàn)指南
查看詳細
CCI持續(xù)集成平臺:高效集成K8s集群,流水線容器構(gòu)建集群上線
查看詳細
嘉為藍鯨CCI持續(xù)集成平臺:Matrix Job 帶你開啟流水線編排 2.0 時代
查看詳細
告警管理:如何從零散事件中挖出關(guān)鍵信息
查看詳細
嘉為藍鯨CPack制品庫:全新ML模型管理功能,助力AI交付與企業(yè)級DevOps實踐無縫結(jié)合
查看詳細
申請演示