(三)CMM的內部結構
CMM為軟件過程能力的提高提供了一條改進的途徑。CMM由5個成熟度等級組成,每個成熟度等級有著各自的功能。除第一級外,CMM的每一級按完全相同的內部結構構成的。成熟度等級為頂層,不同的成熟度等級反映了軟件組織的軟件過程能力和該組織可能實現預期結果的程度。
在CMM中,每個成熟度等級(第一級除外)規定了不同的關鍵過程域,一個軟件組織如果希望達到某一個成熟度級別,就必須完全滿足關鍵過程域所規定的要求,即滿足關鍵古城域的目標。
(四)軟件過程評估和軟件能力評價
軟件過程評估所針對的是軟件組織自身內部軟件過程的改進問題,目的在于法子按缺陷,提出改進方向。評估組以CMM模型為指引調查、鑒別軟件過程中的問題,翻過來將這些問題與CMM關鍵實踐活動所提出的指導一起用于確定組織的軟件過程改進策略。
軟件能力評價是對接受評價者在一定條件下、規定時間內能否完成特定項目的能力考核,即承擔風險的系數大小。評價包括承包者是否有能力按計劃開發軟件產品,是否能按預算完成等。通過利用CMM模型確定評價結果后,就可以利用這些結果確定選擇某一承包商的風險。也可以用來判斷承包者的工作進程,推動他們愛進軟件過程。
CMM為評估和評價提供了一個參考框架,指出了在評估和評價中通常采用的佛農步驟。
具體來說,評估過程是:選擇一個工作組;完成問卷調查和取樣工作;結果分析;現場訪問;與CMM模型對照分析;依據關鍵過程域的基本情況列出評估提綱。以上步驟在軟件過程評估和軟件能力評價題勾勒很有
參考價值的方法,但在具體操作時以下這些特點也值得考慮:
①、在現場訪問和考察中,充分運用成熟度問卷和結果分析為依據。
②、以CMM模型作為現場調查的路線圖。
③、利用CMM中的關鍵過程
域定義軟件過程中的優點和缺陷,從中發現差異。
④、對關鍵過程域目標是否備滿足的實際情況出發,分析滿意程度,寫出書面報告。
盡管軟件過程評估和軟件能力評價有很多相似之處,但由于其目的和結果的不同,它們之間的差異也是必然存在的,如:
①、軟件過程評估和軟件能力評價在出發點和目標上的不同,使得會談目的、調查范圍、收集的信息和輸出的表示方式上有著本質的不同。尤其在一些細節規范方面,評估和評價的方法有很大差異。
②、軟件過程評估和軟件能力評價的結果和結果所起的作用不同。因為兩者的側重點不一樣,即使是對同一個應用項目,運用相同的方法,也不會得出相同的結果。
③、被評估和評價單位的態度對評估和評價活動的影響。評估在某種意義上被評估單位的態度較積極,而評價在某種意義上被評價單位的態度可能比較慎重。軟件過程評估是在一個開放的、互相協作的環境中進行的,而軟件能力評價往往是在有較大的阻力的環境中進行的。
(五)CMM的組織保證
當人們面對CMM實施時,首先想到的就是人員的構成和各種小組的劃分。它是實施CMM的組織保證,是一切活動的基礎。CMM在制定軟件過程實施中本著盡量不和具體的組織機構和組織形式相聯系的原則,為的是提供一個獨立于具體企業而又有廣泛指導意義的模型框架。但在實施各種軟件關鍵實踐中,不可避免地要涉及到角色和組織結構。所以為了使CMM能夠使用域各種級別和各種規模的企業,SEI提出了一個相對抽象的組織結構,它與組織、項目、人員(角色)相關聯,具有自己特定的術語,而且可能不同于其他組織所用的名詞。例如基本概念中提到的主要的軟件工作組的概念。
三、 正確的態度看待CMM
SEI的CMM并不是軟件開發的方法學,也不是產品模板,更不是過程法律。CMM是過程改進的途徑,是一套指南,幫助你通過持續的重復、測量和提煉,穩步創造與凈化開發環境。CMM的假定是:如果你實施一個不斷重復、測量和提煉的大綱,作為環境改進的副產物,質量便會自然的提高。不要把CMM設想為一套規則,而應將它理解為一個學科,做事的一般方法。在這套指南下運作,你會發現這里有著廣闊的空間,讓你剪裁和塑造自己的大綱,以適應組織的特定要求。
CMM不采用“用這種方法做這類事”的風格,它也不對由問題的IT組織提供快速的糾正方案。CMM是一個指南針,指導你如何逃離暴風雪。CMM是一個大綱,要求你對整個IT組織的有關部分,從高層領導到軟件生產的第一次線工作者,都做出堅定的、長期的實施承諾。成熟的過程不可能在已也之間實現。
在如何解釋CMM建議時,它允許極大的靈活性。CMM意識到,IT組織之間存在著很大的差別。他們的客戶不同,使用的工具不同,人員智力和專業背景不同,從事的項目屬于不同的類型,規模大小不同,要求也各不相同。因而,他們應當以自己的方式走向成熟。在一處活用的東西,在另一處未必適用。這一點非常重要,中國部分軟件公司的前車之鑒也從某種程度上給了我們建議和經驗教訓,那就是,要靈活應用CMM,不要幻想一夜就有成效。
文章來源于領測軟件測試網 http://www.kjueaiud.com/