· 高級管理人員的支持是關(guān)鍵;
· 軟件過程改進只能是持續(xù)的,如果它可以幫助企業(yè)達到目標(業(yè)務(wù)目標);
· 實施高成熟度過程中,沒有必要使每一位管理人員(如項目經(jīng)理)都成為統(tǒng)計方面的專家,但他們必須能夠理解并對統(tǒng)計的結(jié)果做出分析,便于做出更好的決策;
在本文中,講述了如何利用上述過程改進原則來幫助中小企業(yè)實現(xiàn)預(yù)期目標的過程。
該論文中,我們將突出成功的關(guān)鍵因素,相信這些“最佳”實踐和做法,可以幫助企業(yè)降低風險,以達到高成熟度。例如:
· 在啟動之前的觀察–高成熟度開始之前,進行徹底的初始準備檢查;
· 知識和技能–對人員的高成熟度的前期培訓使他們了解當前進程的強項和弱項,從而驅(qū)動軟件過程改進的實施;
· 定期評估 - 一個知識淵博的評估小組,大多是來自于組織內(nèi)部,也可以指導企業(yè)朝著正確的方向改進;
· 談話,溝通,交流–度量團隊和外部顧問應(yīng)定期與項目經(jīng)理溝通,以驗證度量結(jié)果; 項目經(jīng)理是解讀數(shù)據(jù)并分析結(jié)果的最合適人選;
過程改進不僅符合規(guī)程的一致性。績效改進是過程改進的關(guān)鍵。在CMMI模型中,高成熟度過程域明確說明了過程的績效改進。
還有很多關(guān)于高成熟度的說法和誤解,尤其是在執(zhí)行過程中存在問題,例如:公司如何實施改進,以滿足CMMI高成熟度的要求。
根據(jù)SEI的統(tǒng)計,2010年的CMMI評估中,有66%的企業(yè)規(guī)模少于100人。許多企業(yè)希望通過CMMI3級之后繼續(xù)實施高成熟度(成熟度4/ 5)。作為顧問,我們要準備好回答這些企業(yè)常會遇到的下列問題:
- 高成熟度的要求有哪些?
- 如何實現(xiàn)?時間表,實施步驟和方法?
- 需要哪些資源和工具?
- 有哪些風險和潛在的隱患?
在本文中,我們會盡量以深入淺出的故事,讓每個人都理解咨詢的方法論和步驟。
項目背景
上海百果公司是一家IT解決方案提供商,公司規(guī)模30人。公司業(yè)務(wù)重點是電子病歷系統(tǒng),該系統(tǒng)廣泛應(yīng)用于上海市兩個區(qū)以及農(nóng)村的鄉(xiāng)村的醫(yī)院部門。由于SEI會對高級別評估進行100%審計,我們對所有準備做高成熟度的項目(基于檢查單——一關(guān)鍵的檢查單項有:PPB, PPM基線和模型;Measurement度量;)都要進行初步檢查。咨詢師對公司進行現(xiàn)場了解后,對百果公司的印象如下:
- 核心團隊和高層管理者的知識- 對CMMI3級的深刻理解;
- 公司總經(jīng)理已有豐富的CMMI經(jīng)驗,并深刻明白CMMI過程改進如何幫助他更好的管理公司;
- 使用內(nèi)網(wǎng)系統(tǒng)組織過程共享;
- 利用各種簡單工具來跟蹤實際與計劃的工作量和進度,控制圖,項目管理等(有些是Excel宏);
- 對一些高成熟度的過程概念存在誤解 - 例如PPM;
在初次會議結(jié)束時,咨詢師在問到企業(yè)實施CMMIML4的原因時,總經(jīng)理解釋說,此類項目大多是政府/醫(yī)院項目的開發(fā),項目的時間要求很緊,客戶在項目的最后期限方面非常嚴格。質(zhì)量也是非常重要的,在這種系統(tǒng)中的錯誤可能會導致嚴重的問題。如果有任何系統(tǒng)問題,可能需要半天或一天的工程師抵達現(xiàn)場進行解決。支持和維護成本也會大大提高。
由于總經(jīng)理非常熟悉CMMI模型,他認為,CMMI的ML4可以幫助公司更快更好地達到上述目標。
從愿景到量化目標
我們要深刻理解基于業(yè)務(wù)目標的“質(zhì)量和過程性能目標”(QPPO)。最后,我們要推導原因和結(jié)果之間的關(guān)系,也就是X和Y的關(guān)系,從而知道什么是關(guān)鍵因素,將幫助我們得到想要的結(jié)果。下面的圖表一是關(guān)系圖。
對ML2/ 3的企業(yè),對所有目標的描述可以是點估計的描述- 例如,“要使整體生產(chǎn)率提高5%”。在高成熟度的企業(yè),因為數(shù)據(jù)的度量都是量化的,這些目標必須從數(shù)據(jù)分布的角度描述。百果公司的量化目標是:
1)公司將提高生產(chǎn)率(功能點/人時):
從現(xiàn)在的性能基線:
均值 = 0.26 標準差 =0.08
到新的性能基線:
均值= 0.28 標準差=0.06
保有95%的信心。
在不犧牲產(chǎn)品質(zhì)量的情況下:
2)到12/31/2010,提高我們公司的缺陷密度(缺陷數(shù)/功能點)
從現(xiàn)在的性能基線:
均值 = 0.46 標準差 =0.2
到新的性能基線:
均值= 0.43 標準差=0.18
信心指數(shù)為95%。
百果公司確信項目交付時間與員工生產(chǎn)率和缺陷數(shù)/返工(質(zhì)量)有密切的關(guān)系,如果生產(chǎn)率和質(zhì)量得到控制,那么交付也將得到控制。
過程改進方法
高成熟度過程改進的方法有哪些?與成熟度2級和3級有什么不同之處?
我們對此進行了相關(guān)的研究,下面是通用的方法-PDCA循環(huán)方法:
P(計劃):發(fā)現(xiàn)問題
D(實施):(根據(jù)發(fā)現(xiàn)的問題)收集數(shù)據(jù)
C(檢查):分析趨勢,根本原因分析
A(行動):通報結(jié)果,建議如何改進,識別新發(fā)現(xiàn)的問題
高成熟度的過程改進是不斷的PDCA循環(huán)過程。目前對高成熟度的量化數(shù)據(jù),有一個廣泛應(yīng)用的工具和技術(shù)進行根源分析。如:圖表二:
PDCA循環(huán)方法基于DMAIC路線圖,即六西格瑪?shù)腄MAIC-定義,測量,分析,改進,控制。對于每一個過程改進項目,我們首先要了解問題和目標,屬于“定義”階段。在“分析”和“改進”階段,我們使用點圖和控制圖來分析數(shù)據(jù)的狀態(tài)- 是否是“合理的數(shù)據(jù)”或“正確的數(shù)據(jù)”。然后,我們使用各種分析技術(shù),找出問題根源,或得出一個Y=X(因子)的關(guān)系。改進行動可能會導致業(yè)務(wù)目標的更新和變化。在百果項目中,使用的分析技術(shù)主要體現(xiàn)在以下圖表三:
例如,在“定義”過程中,我們用下面的過程流程圖(圖表四),更好地理解軟件開發(fā)過程中如何工作:
需要考慮的關(guān)鍵點:
1) 我們必須確保度量系統(tǒng)獲取的數(shù)據(jù)是正確的。導致錯誤的可能原因很多 - 例如模糊的度量定義使得數(shù)據(jù)收集者誤解,導致數(shù)據(jù)在讀取和記錄時發(fā)生錯誤,因此,在對收集到的數(shù)據(jù)進行分析之前,我們必須驗證數(shù)據(jù)(數(shù)據(jù)繪制)避免錯 誤的誤解。為減少誤差,明確每項措施的操作性定義也很重要。
2) 過程必須穩(wěn)定。如果數(shù)據(jù)點是隨機的,并沒有任何中心趨勢,一個詳細的數(shù)據(jù)定量分析,也不能幫助我們找出根源。[通過消除“不合理”的數(shù)據(jù)點,并使用計算機統(tǒng)計分析工具,我們希望得到X和Y的關(guān)系。我們需要提出問題:“是否具有意義?” ]。
評估準備中需要考慮的其他關(guān)鍵點:
1) 是否有分析數(shù)據(jù)的統(tǒng)計學專家(項目經(jīng)理,EPG應(yīng)具備解讀這些數(shù)據(jù)的能力)
2) 對于高成熟度的過程域,也應(yīng)該提供所有子實踐的證據(jù)
3) 利用問答形式對SP和GP來設(shè)定評估期望
你可能有所疑問:PDCA的每個典型改進過程需要多長時間?
改進過程的周期依賴很多因素:
- 項目周期
- 公司每年的項目數(shù)量
- 項目的度量數(shù)據(jù)的質(zhì)量
- 要花多長時間來進行推廣
在百果項目中,每個改進過程大概3個月。
度量與分析
MA是高成熟度的基礎(chǔ)。盡管MA是一個成熟度2級過程域,但它被認為是高成熟度實踐的“使能者”。我們將會指出MA在高成熟度這個階段的不同點,希望要通過分析和解釋數(shù)據(jù)來理解數(shù)據(jù),將在最后得到量化的結(jié)論。在數(shù)據(jù)分析中,挑戰(zhàn)是如何從噪音中分離出信號,分割是一個有效的方法。接下來的例子,來自百果公司的案例,說明了這個觀點(圖表五):
關(guān)系從數(shù)據(jù)看不明顯。因為開發(fā)的工作量由好幾個階段組成,我們分成各個子過程來看(比如:需求,設(shè)計,..)
Q2:在子過程級別工作量與規(guī)模有顯著的關(guān)系嗎?
我們執(zhí)行回歸分析,回歸測量預(yù)測變量和因變量之間的聯(lián)系強度。一個簡單的線性回歸關(guān)聯(lián)這x與y。到處一個Y=a + b*x的關(guān)系.在這個例子中,我們得到:
Y(design effort) =24.8+0.224*Size(FP)
Q3:與輸出相關(guān)的可控因素是什么?也就是:有沒有自變量,比如團隊經(jīng)驗,復(fù)用程度,需求變化?
以上例子說明了怎樣分割的數(shù)據(jù)能幫助我們分離噪音中的信號來發(fā)現(xiàn)x和y的關(guān)系.每個組織是不同的。沒有高招,在一些情況下,某一種分割方法不一定帶來任何結(jié)論。我們必須嘗試其它方法做分割分析。
組織過程性能(OPP)
OPP 是設(shè)定高成熟度基礎(chǔ)的組織級過程域.第一個實踐是建立質(zhì)量和過程性能目標(QPPO)。在OPP中,組織還要選擇子過程和度量項,GQM方法用來將這些聯(lián)結(jié)到一起。下面的表格是從我們使用來記錄這些實踐的模版中抽出來的。*
· 建立質(zhì)量和過程性能目標
百果公司從事醫(yī)療醫(yī)院產(chǎn)業(yè)開發(fā),它的IT系統(tǒng)是給病人記錄和醫(yī)療保險卡服務(wù),有時這些記錄會在鄉(xiāng)下區(qū)域使用,上市時間和質(zhì)量是關(guān)鍵性的,SMART目標被用來定義量化度量目標。
· 定義所有需要的度量項
度量項定義指南中記錄了定義,在這個指南中,有基本度量元的表格以及它們的單位,項目領(lǐng)導和成員均能確保每個度量都能很好的被理解。
選擇過程
歷史項目數(shù)據(jù),以階段的方式,被驗證來看它是否合理-使用散點圖,和描述性統(tǒng)計(均值,標準差)。相關(guān)性被用來查看哪些因素影響工作量.建立輸出與因素之間的回歸關(guān)系。通過分解的子過程重復(fù)這些步驟.[與描述獲得Y(設(shè)計工作量)=函數(shù)(團隊經(jīng)驗,規(guī)模)]的步驟相似。最終發(fā)現(xiàn)被用到項目中進行驗證,確保分析和模型有意義。
分段的缺陷分析
減少返工(缺陷)被識別為一個改進的機會。返工也和總體的生產(chǎn)率相關(guān)-也就是:減少返工和質(zhì)量成本,將會提高生產(chǎn)率。
缺陷數(shù)據(jù)從多樣的項目中收集,檢查缺陷來自生命周期的階段,缺陷被分為三個階段:
A =嚴重; B=一般; C =輕微
在測試規(guī)范中對缺陷的類型有著完整的定義。
每階段每種缺陷類別引起的返工總數(shù)匯總成帕累托圖。因為最顯著的缺陷來自于系統(tǒng)測試,我們盡量發(fā)掘這些缺陷的根本原因。