首頁 考試吧論壇 Exam8視線 考試商城 網絡課程 模擬考試 考友錄 實用文檔 求職招聘 論文下載 | ||
![]() |
2011中考 | 2011高考 | 2012考研 | 考研培訓 | 在職研 | 自學考試 | 成人高考 | 法律碩士 | MBA考試 MPA考試 | 中科院 |
|
![]() |
四六級 | 職稱英語 | 商務英語 | 公共英語 | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT 新概念英語 | 成人英語三級 | 申碩英語 | 攻碩英語 | 職稱日語 | 日語學習 | 法語 | 德語 | 韓語 |
|
![]() |
計算機等級考試 | 軟件水平考試 | 職稱計算機 | 微軟認證 | 思科認證 | Oracle認證 | Linux認證 華為認證 | Java認證 |
|
![]() |
公務員 | 報關員 | 銀行從業資格 | 證券從業資格 | 期貨從業資格 | 司法考試 | 法律顧問 | 導游資格 報檢員 | 教師資格 | 社會工作者 | 外銷員 | 國際商務師 | 跟單員 | 單證員 | 物流師 | 價格鑒證師 人力資源 | 管理咨詢師考試 | 秘書資格 | 心理咨詢師考試 | 出版專業資格 | 廣告師職業水平 駕駛員 | 網絡編輯 |
|
![]() |
衛生資格 | 執業醫師 | 執業藥師 | 執業護士 | |
![]() |
會計從業資格考試(會計證) | 經濟師 | 會計職稱 | 注冊會計師 | 審計師 | 注冊稅務師 注冊資產評估師 | 高級會計師 | ACCA | 統計師 | 精算師 | 理財規劃師 | 國際內審師 |
|
![]() |
一級建造師 | 二級建造師 | 造價工程師 | 造價員 | 咨詢工程師 | 監理工程師 | 安全工程師 質量工程師 | 物業管理師 | 招標師 | 結構工程師 | 建筑師 | 房地產估價師 | 土地估價師 | 巖土師 設備監理師 | 房地產經紀人 | 投資項目管理師 | 土地登記代理人 | 環境影響評價師 | 環保工程師 城市規劃師 | 公路監理師 | 公路造價師 | 安全評價師 | 電氣工程師 | 注冊測繪師 | 注冊計量師 |
|
![]() |
繽紛校園 | 實用文檔 | 英語學習 | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲 |
引子:CMM理論和知識是最近幾年的熱點,在最近兩年的系統分析員上午試卷中都有一題考察CMM知識的,一般有3-5分的樣子。估計未來的系統分析員考試還會有這方面的考題。即使不考,我們的系統分析員也應該掌握這方面的知識,因為將來從事的系統分析與設計的工作也離不開CMM理論和知識,因為即使我們所在的公司不去進行CMM評估,CMM理論知識對于我們不斷的進行公司的軟件過程改進有一定的借鑒意義,從而有助于軟件質量的提高,進而提升公司產品的市場競爭力。
摘要:本文是根據這兩年試題中涉及CMM知識而特為廣大考友搜集整理的關于CMM的基礎知識的文章。主要內容是有關CMM的基本概念、CMM的基本框架和對CMM的正確態度等。希望這篇文章對你有所幫助,謝謝。
CMM(Capability Marurity Model,軟件能力成熟度模型)是于1984年美國國會與美國主要的公司和研究中心合作創立的一個由聯邦資助的非盈利組織——軟件工程研究所(Software Engineering Institute,SEI)的一個早期研究成果。該模型提供了軟件工程成果和管理方法的框架,自90年代提出以來,已在北美、歐洲和日本成功地應用。現在該模型已成為事實上的軟件過程改進的工業標準。下面我們來一起學習有關CMM的一些基礎知識。
一、 CMM基本概念
過程(Process):為實現既定目標的一系列操作步驟[IEEE-STD-610].
軟件過程(Software Process):指人們用于開發和維護軟件及其相關產品的一系列活動、方法、時間和革新。其中相關產品是指項目計劃、設計文檔、編碼、測試和用戶手冊。當一個企業逐步走向成熟,軟件過程的定義也會日趨完善,其企業內部的過程實施將更具有一致性。
軟件過程能力(Software Process Capability):描述了在遵循一個軟件過程后能夠得到的預期結果的界限范圍。該指標是對能力的一種衡量,用它可以預測一個組織(企業)在承接下一個軟件項目時,所能期望得到的最可能的結果。
軟件過程性能(Software Process Performance):表示遵循一個軟件過程后所得到的實際結果。(與軟件過程能力有區別,軟件過程能力關注的是實際得到的結果,而軟件過程性能關注的是期望得到的結果。由于項目要求和客觀環境的差異,軟件過程性能不可能充分反應軟件過程整體能力,即軟件過程能立受限于它的環境。)
軟件過程成熟度(Software Process Maturity):是指一個具體的軟件過程被明確地定義、管理、評價、控制和產生實效的程度。所謂成熟度包含著能力的一種增長潛力,同時也表明了組織(企業)實施軟件過程的實際水平。隨著組織軟件過程成熟度能力的不斷提高,組織內部通過對過程的規范化和對成員的技術培訓,軟件過程也將會被他的使用者關注和不斷修改完善。從而使軟件的質量、生產率和生產周期的到改善。
CMM是軟件過程能力成熟度模型(Capacity Maturity Model)的簡稱,是卡內基-梅隆大學軟件工程研究院為了滿足美國聯邦政府評估軟件供應商能力的要求,于1986年開始研究的模型,并于1991年正式推出了CMM 1.0 版。CMM自問世以來備受關注,在一些發達國家和地區得到了廣泛應用,成為衡量軟件公司軟件開發管理水平的重要參考因素和軟件過程改進事實上的工業標準。
CMMI(Capability Maturity Model Integration)即能力成熟度模型集成,這也是美國國防部的一個設想,他們想把現在所有的以及將被發展出來的各種能力成熟度模型,集成到一個框架中去。這個框架有兩個功能,第一,軟件獲取方法的改革;第二,建立一種從集成產品與過程發展的角度出發、包含健全的系統開發原則的過程改進。
關鍵過程(區)域(Key Process Area)是指一系列相互關聯的操作活動,這些活動反映了一個軟件組織改進軟件過程時所必須滿足的條件。也就是說,關鍵過程域標識了達到某個成熟程度級別時所必須滿足的條件。在CMM中一共有18個關鍵過程域,分布在第二至五級中。
關鍵實踐(Key Practices):是指關鍵過程域種的一些主要實踐活動。每個關鍵過程域最終由關鍵實踐所組成,通過實現這些關鍵實踐達到關鍵過程域的目標。一般情況下,關鍵實踐描述了該“做什么”,但沒有規定“如何”去達到這些目標。
軟件過程評估(Software Process Assessment)是用來判斷一個組織當前所涉及的軟件過程的能力狀態,判斷下一個組織所面向得更高層次上的與軟件過程相關的課題,以及利用組織的鼎力支持來對該組織的軟件過程進行有效的改進。
軟件能力評價是(Software Capability Appraisal)用來判斷有意承擔某個軟件項目的軟件組織的軟件過程能力,或是判斷已進行的軟件過程所處的狀態是否正確或是否正常。
軟件工程組(Software Engineering Group):負責一個項目的軟件開發和維護活動的團體。活動包括需求分析、設計、編碼和測試等。
軟件相關組(Software Related Groups):代表一種軟件工程科目的團體,它支持但不直接負責軟件開發或維護工作,如軟件質量保證組、軟件配置管理組合軟件工程過程組等等。在CMM的關鍵實踐中,軟件相關組通常應該根據關鍵過程域和組織的上下文來理解。
軟件工程過程組(Software Engineering Process Group):是由專家組成的組,他們推進組織采用的軟件過程的定義、維護和改進工作。在關鍵實踐中,這個組織通常指“負責組織軟件過程活動的組”。
系統工程組(System Engineering Group):是負責下列工作的個人的團體:分析系統需求;將系統需求分配給硬件、軟件和其他成分;規定硬件、軟件和其他成分的界面;監控這些成分的設計和開發以保證它們符合其規格說明。
系統測試組(System Test Group):是一些負責策劃和完成獨立的軟件系統測試的團體,測試的目的是為了確定軟件產品是否滿足對它的需求。
軟件質量保證組(Software Quality Assurance Group):是一些計劃和實施項目的質量保證的團體,其工作目的是保證軟件過程的步驟和標準是否得到遵守。
軟件配置管理組(Software Configuration Management Group):是一些負責策劃、協調和實施軟件項目的正式配置活動的團體。
培訓組(Training Group):是一些負責協調和安排組織培訓活動的團體。通常這個組織負責準備和講授大多數培訓課程并協調其他培訓方式的使用。
二、 CMM 的基本框架
任何一個軟件的開發、維護和軟件組織的發展離不開軟件過程,而軟件過程經歷了不成熟到成熟、不完善到完善的發展過程。它不是一朝一夕就能成功的,需要持續不斷的對軟件過程進行改進,才能取得最終的成效。CMM就是根據這一指導思想設計出來的。該模型為了正確和有序地引導軟件過程活動的開展,建立一個能夠有效地描述和表示的軟件過程的改進框架,使其能夠對各階段軟件過程的任務和管理起指導作用。該模型一產品質量的概念和軟件工程的經驗教訓為基礎,指導企業如何控制開發、維護軟件的生產過程和如何制定一套與之相適應的軟件過程及管理體系。
(一)、分級標準
CMM模型描述和分析了軟件過程能力的發展程度,確立了一個軟件過程成熟程度的分級標準,如圖1示。一方面軟件組織利用它可以評估自己當前的過程成熟度,并以此提出嚴格的軟件質量標準和過程改進的方法和策略,通過不斷的努力去達到更高的成熟程度。另一方面,該標準也可以作為用戶對軟件組織的一種評價標準,使之在選擇軟件開發商時不再是盲目的和無把握的。
CMM的分級結構可以描述為:
①、初始級:軟件過程的特點是無秩序的,有時甚至是混亂的。軟件過程定義幾乎處于無章法和步驟可循的狀態,軟件產品所取得的成功往往依賴于極個別人的努力和機遇。
②、可重復級:已建立了基本的項目管理過程,可用于對成本、進度和功能特性進行跟蹤。對類似的應用項目,有章可循并能重復以往所取得的成功。
③、已定義級:用于管理的和工程的軟件過程均已文檔化、標準化,并形成了整個軟件組織的標準軟件過程。全部項目均采用與實際情況相吻合的、適當修改后的標準軟件過程來進行操作。
④、以管理級:軟件過程和產品質量有詳細的度量標準。軟件過程和產品質量得到了定量的認識和控制。
⑤、優化級:通過對來自過程、新概念和新技術等方面的各種有用信息的定量分析,能夠不斷地、持續地對促進過程進行改進。
除第一級外,每一級都設定了一組目標,如果達到了這組目標,則表明達到了這個成熟級別,自然可以向下一級別邁進。CMM體系不主張跨級別的進化。因為從第二級開始,每一個低級別的實現均是高級別實現的基礎。
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |