CMM是能力成熟度模型(Capability Maturity Model)的縮寫,是由CMU/SEI(美國卡內基梅隆大學軟件工程研究所)1987年開發成功的,現在普遍使用的是V1.1版本。CMM模型從1~5分為不同的等級,按照軟件過程能力將一個組織定位于不同的成熟度等級。其一個重要思想是幫助一個組織通過基于模型的軟件過程改進而達到使其軟件過程向更高的能力成熟度等級邁進的目標。在這個過程中一個組織必須建立自己的軟件過程,并依據CMM模型要求對此過程進行評估,針對評估結果來進一步改進自己的軟件過程,再次評估自己的軟件過程以期達到更高的成熟度等級或防止自己的過程能力退化。如此循環最終使一個組織的軟件過程能力趨于高度的成熟。這樣客戶在選擇其項目的承包商時可以依據一個組織達到CMM的某個等級來判斷該組織的軟件過程能力以及其是否有能力達到自己對于此項目的時間進度,資金控制,質量標準等方面對承包商的要求,從而決定是否會放心的將自己的項目交給某一個組織去做。也就是說,通過CMM認證的級別越高,其越容易獲得用戶的信任,在國內、國際市場上的競爭力也就越強。
CMM在中國的發展
CMM在中國的發展可以用一句話來形容:忽如一夜春風來。事實上,CMM最初是1999年7月通過一家通過CMM2級評估的合資企業悄然進入中國的,當時國內對CMM的研究與使用寥若晨星。CMM真正火爆起來還是由于2000年6月國務院頒發了《鼓勵軟件產業和集成電路產業發展的若干政策》(業內人士稱之為“18號文件”),該文件的第五章第十七條明確提出“鼓勵軟件出口型企業通過GB/T19000-ISO9000系列質量保證體系認證和CMM(能力成熟度模型)認證。其認證費用通過中央外貿發展基金適當予以支持!奔由2001年初聯想軟件率先通過CMM2認證并得到北京市科委的30萬獎金,各軟件企業圍繞CMM的研究、討論、躍躍欲試、實施等活動緊鑼密鼓,開始進入蜜月期。
2 中國需要CMM么?引入CMM認證對國家的好處
據了解,目前中國大陸的軟件企業經CMM評估達到三級的只有2家,達到二級的有5家。而在軟件出口居于世界首位的印度,達CMM四級、五級的軟件企業已占世界總量的50%至60%。同時,據IDC統計在全球軟件市場中,美國占據了2/3。美國和印度軟件業為何如此發達?很重要的一個原因就是:無論規模大小,絕大多數企業都按照規范化的方法管理軟件研發過程,始終把客戶放在首位,把通過某種標準的評估認證放在很重要的位置上。 實際上,對于我國軟件企業而言,長期以來存在的“小、散、軟”的缺陷一直沒有得到根本解決。不少軟件企業的老總本人就是程序員出身,能夠寫出漂亮的程序,但是往往個人英雄主義嚴重,企業整體則缺乏團隊精神。與國外相比,中國軟件企業的規模偏小,開發能力不足,資金缺乏,人才流失嚴重對企業造成的影響很大。事實上根據CMM模型的思想,軟件產品的質量是靠人才、技術、軟件研發過程3個方面共同保障的,其中人才和技術對中國的軟件企業來講往往不是什么大問題,而短板恰恰總是出現在軟件研發過程上。這一切都極大地影響了中國軟件企業的國際競爭能力。
隨著中國加入WTO,中國軟件行業將面臨更加激烈的競爭。入世后的中國軟件企業要想走出國門,在世界軟件業占有一席之地,就必須積極建立完善而標準的研發過程規范并同國際接軌。CMM認證對中國軟件企業而言,已經不僅僅是獲得一種證書,而成為關系到軟件企業能否從此上正規化發展道路、提高國際形象和競爭力、走出國門去國外接單的關鍵。
同時,隨著國民經濟的發展,隨著國家各行業信息化工作的推進,尤其是國家重點行業對于軟件企業能否按時、保質的提供符合其需求的軟件產品和解決方案越來越重視。中國軟件企業的研發過程能力的迅速提高,迅速規;、國際化也是國家能否健康發展,保持長治久安,有效保證國家信息安全的關鍵。
引入CMM認證能給企業帶來什么?
中國軟件企業一個普遍存在的現象是一個技術骨干一走,技術往往就被帶走了(尤其是對小企業而言,影響更為明顯)。小至項目無法延續,大至企業從此垮臺。因此研發過程的規范化、文檔化管理成了首要問題。
實施了CMM是否能夠規避此類風險呢?回答是肯定的。CMM的實施將保證一個組織的項目軟件研發真正能夠做到鐵打的營盤流水的兵。同時CMM的實施還有其他妙處。印度的一家軟件企業的老總說,在實施CMM后其軟件的可靠性提高了20%,成本降低了20%。聯想軟件在談實施完CMM2時的收獲是講:收益頗豐。首先是產品質量得到了提高,千行代碼錯誤率減少了,返工次數減少了,研發管理流程得到了梳理和優化,項目管理力度得以加強,軟件項目的可視性提高了,預算得到了控制,中高層經理獲得了對項目進展情況的更好的了解;客戶感受最深的是交貨期明顯縮短,合作日漸愉快。聯想軟件面對企業的效益至少增加20%-30%的回報,最終有種找到真正適合軟件企業的管理模式的欣喜。
某著名企業CTO就認為:CMM的意義不僅僅是對軟件開發的過程進程管理,最關鍵的它還是一種高效的管理方法,有助于企業最大程度的降低成本,提高質量和用戶滿意度,而這正是中國軟件業與美國、印度軟件業最大的差距之處。
總之,實施CMM模型(尤其是CMM3級以上的企業)的一般意義為1、軟件研發過程文檔化,軟件工作產品保證了一致性和可追溯性;2、企業內部過程改進制度化,產品開發周期控制能力,質量、成本控制能力,風險控制能力能力,生產效率等明顯提高;3、市場競爭透明化、簡單化,規范了市場競爭;4、企業國際化能力得到質的提升;
CMM認證實施的難度,同時給實踐者會帶來什么好處?
任何過程的實施都離不開人的因素,CMM的實施、認證也一樣。絕大多數企業在實施規范化研發過程管理的過程中都會遇到來自員工的強大阻力,大多中途夭折。其實這對于中國那些習慣了自己為中心、不愿文檔化、缺乏團隊協作精神的軟件行業文化來講是很自然的現象?磥砥髽I文化的特點對CMM的實施的影響還真不容忽視。
CMM的引入恰如一陣春風,從另一方面來看它對于團隊協作精神的強調隱含在模型的字里行間。好的企業文化將使CMM實施事半功倍,而希望塑造團隊協作企業文化的企業,CMM的實施將會起到強有力的推動作用。
CMM模型對于做事能力的重視不亞于具體的工程實施,無論項目經理還是項目成員各角色,完成其角色工作的進入準則之一就是ability。在實施基于CMM模型的過程改進過程中,將提供給員工定制的眾多的培訓課程,有的是針對性很強的專業課,有的是需要了解的基礎課,在此過程中員工的軟件工程素質得到了極大的提升,軟件工程意識的提升作用于其技術上的積累將產生出更高質的軟件精品,這樣的企業研發出的產品將給整個團隊帶來極大的成就感,而個人素質、精神面貌與自信也將不斷改善。實施CMM的過程也正是將研發人員點石成金的過程。無疑有過基于CMM的研發規范實踐經驗的員工將成為組織的骨干,在未來無疑將最受軟件企業的青睞。
結束語
看來不可否認CMM是個好東西,CMM在世界軟件行業研發過程標準中也享有很高的評價,而中國在這方面做的還遠遠不夠。尤其在加入WTO全球經濟一體化的趨勢下,采用CMM標準認證工作作的好壞大有關系到中國軟件企業在國際競爭中生死存亡的架勢(當然我們在強調認證的同時不會忘記強調實施這個前提)。拿到高等級CMM證書的企業將毋庸置疑會在國際競爭中占據有利地位,這就象給企業的長遠發展插上了不折的翅膀。而在此過程中一定要注意員工“人”的作用,加強和致力建設良好的企業文化也是很重要的,同時也需要向員工宣傳實施CMM對其個人的益處,化阻力為動力。這樣看來 CMM的實施和認證是一件多贏的事情,無論從國家、企業還是個人的角度,都是關系到更好生存和長遠發展的大計。
文章來源于領測軟件測試網 http://www.kjueaiud.com/