CMMI的全稱為Capability Maturity Model Integration,即能力成熟度模型集成。CMMI是CMM模型的最新版本。早期的CMMI(CMMI-SE/SW/IPPD),SEI在部分國(guó)家和地區(qū)開(kāi)始推廣和試用。隨著應(yīng)用的推廣與模型本身的發(fā)展,演繹成為一種被廣泛應(yīng)用的綜合性模型。
發(fā)展
編輯CMMI(Capability Maturity Model Integration For Software,軟件能力成熟度模型集成)是在
CMM(Capability Maturity Model For Software,
軟件能力成熟度模型)的基礎(chǔ)上發(fā)展而來(lái)的。CMMI是由美國(guó)卡耐基梅隆大學(xué)軟件工程研究所(Software Engineering Institute,
SEI)組織全世界的軟件過(guò)程改進(jìn)和軟件開(kāi)發(fā)管理方面的專家歷時(shí)四年而開(kāi)發(fā)出來(lái)的,并在全世界推廣實(shí)施的一種軟件能力成熟度評(píng)估標(biāo)準(zhǔn),主要用于指導(dǎo)軟件開(kāi)發(fā)過(guò)程的改進(jìn)和進(jìn)行軟件開(kāi)發(fā)能力的評(píng)估。
CMM模型自20世紀(jì)80年代末推出,并于20世紀(jì)90年代廣泛應(yīng)用于軟件過(guò)程的改進(jìn)以來(lái),極大地促進(jìn)了軟件生產(chǎn)率的提高和軟件質(zhì)量的提高,為
軟件產(chǎn)業(yè)的發(fā)展和壯大做出了巨大的貢獻(xiàn)。
然而,CMM模型主要用于軟件過(guò)程的改進(jìn),促進(jìn)軟件企業(yè)軟件能力成熟度的提高,但它對(duì)于系統(tǒng)工程、集成化產(chǎn)品和過(guò)程開(kāi)發(fā)、供應(yīng)商管理等領(lǐng)域的過(guò)程改進(jìn)都存在缺陷,因而人們不得不分別開(kāi)發(fā)軟件以外其他學(xué)科的類似模型。
自從引入基于模型的過(guò)程改進(jìn)之后,工程界至少在三個(gè)重要領(lǐng)域已經(jīng)有了變化。
首先,執(zhí)行工程的環(huán)境已經(jīng)變得更加復(fù)雜。工程量更大、需要更多的人員、需要跨越公司界限、發(fā)布范圍更寬更廣,而且必須繼續(xù)加快實(shí)現(xiàn)的進(jìn)度,以滿足客戶的需要。這樣導(dǎo)致各種協(xié)調(diào)工作的大量增加。
其次,執(zhí)行工程任務(wù)的方式已經(jīng)有了進(jìn)化。交叉學(xué)科群組、
并行工程、高度自動(dòng)化的過(guò)程以及多國(guó)標(biāo)準(zhǔn)等都影響到工程實(shí)踐。這樣一來(lái),一個(gè)工程項(xiàng)目可能要涉及到幾個(gè)
國(guó)際標(biāo)準(zhǔn)。
第三,軟件工程研究所的軟件能力成熟度模型(CMM)的成功,導(dǎo)致了各種模型的衍生,而每一種模型都探討了某一特定領(lǐng)域中的過(guò)程改進(jìn)問(wèn)題。各機(jī)構(gòu)也已采用多種改善模型分別處理各自的關(guān)鍵過(guò)程問(wèn)題。在工程組織中模型的繁衍導(dǎo)致了過(guò)程改進(jìn)目標(biāo)和技術(shù)的沖突,也導(dǎo)致了實(shí)踐人員在應(yīng)用各種不同的模型來(lái)實(shí)現(xiàn)特定的需求時(shí)容易產(chǎn)生混淆,這就要求培訓(xùn)工作也隨之增長(zhǎng)。
所有這些變化都表明,有必要將各種過(guò)程改進(jìn)工作集成起來(lái)。包含在當(dāng)代工程中各種各樣的學(xué)科和過(guò)程是密切交叉在一起的。在應(yīng)用不同模型時(shí),效率低下且容易混淆,常常要付出極其昂貴的代價(jià)。因而需要有一種單一的過(guò)程改進(jìn)框架而又能跨越多種學(xué)科的工具。軟件能力成熟度模型集成(CMMI)就是用來(lái)解決這三類問(wèn)題的。
[2]開(kāi)發(fā)和應(yīng)用CMMl的主要原因有三點(diǎn):一是軟件項(xiàng)目的復(fù)雜性的快速增長(zhǎng)使過(guò)程改進(jìn)的難度增大,二是軟件工程的并行與多學(xué)科組合,三是實(shí)現(xiàn)過(guò)程改進(jìn)的最佳效益。
(1)解決軟件項(xiàng)目的過(guò)程改進(jìn)難度增大問(wèn)題。CMM成功實(shí)施以后,極大地提高了軟件企業(yè)的開(kāi)發(fā)效率和軟件產(chǎn)品的質(zhì)量,從而也提高了軟件產(chǎn)品的可靠性和軟件產(chǎn)業(yè)的信譽(yù),這樣人們就對(duì)軟件寄予了更大的希望。人們希望軟件能夠完成更多、更大、更復(fù)雜的任務(wù)。
(2)實(shí)現(xiàn)軟件工程的并行與多學(xué)科組合。CMM模型的成功實(shí)踐,促進(jìn)了工程和產(chǎn)品開(kāi)發(fā)的組織發(fā)生了巨大的變革,變革的目標(biāo)主要是為了消除與分段開(kāi)發(fā)有關(guān)的低效。在分段開(kāi)發(fā)過(guò)程中,中間產(chǎn)品傳給下一階段的工作人員時(shí),有可能要進(jìn)行大量的返工,以糾正原先的理解錯(cuò)誤。并行工程、交叉學(xué)科群組、交又功能群組、集成化產(chǎn)品群組以及集成化產(chǎn)品和過(guò)程開(kāi)發(fā)等,都代表了在產(chǎn)品或服務(wù)的整個(gè)生命周期的合適時(shí)間內(nèi)處理這類問(wèn)題的不同方法。這種傾向意味著設(shè)計(jì)人員和客戶要與制造人員、測(cè)試人員和用戶共同工作,以支持開(kāi)發(fā)需求的制造組織。這種工作方式蘊(yùn)涵著所有關(guān)鍵的相關(guān)人員要支持產(chǎn)品或服務(wù)開(kāi)發(fā)的所有階段。
(3)實(shí)現(xiàn)過(guò)程改進(jìn)的最佳效益。盡管過(guò)程改進(jìn)存在復(fù)雜化的因素,但軟件管理專家們相信,其中的許多障礙可以通過(guò)一個(gè)集成過(guò)程改進(jìn)的公共模型來(lái)克服。這種信念反映了在集成方面所進(jìn)行的工作和CMMl項(xiàng)目的作者和評(píng)審人員的經(jīng)驗(yàn)。人們相信,正如通過(guò)CMM的過(guò)程改進(jìn)能夠產(chǎn)生顯著的效益一樣,集成過(guò)程改進(jìn)也能產(chǎn)生更大的效益。
從根本上來(lái)說(shuō),過(guò)程改進(jìn)集成主要影響四個(gè)領(lǐng)域:成本、側(cè)重點(diǎn)、過(guò)程集成和靈活性。其中某些變化可能比另一些變化容易量化,但所有這些都體現(xiàn)了過(guò)程改進(jìn)集成的真正優(yōu)勢(shì)。
[2]