• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    CMM改善不了軟件的質量?

    發布: 2008-10-15 11:18 | 作者: 鄒大斌 | 來源: 計算機世界報 | 查看: 31次 | 進入軟件測試論壇討論

    領測軟件測試網

    Ivar Jacobson博士認為,如果采用不良的軟件過程,通過CMM/CMMI的成熟度級別越高,只會使軟件企業生產不合格軟件的過程更加有效率,而不是使企業開發出更好的軟件。

    軟件外包是時下的一個熱門話題,被我國不少軟件企業視為一座金礦,而CMM被人們認為是進入這個市場的敲門磚,為了拿到那張代表資格的CMM認證證書,不少企業甚至不惜投入數百萬之巨。事實上,拿到CMM認證在國外并不代表企業就能提供一個合格的軟件,著名的軟件專家、擁有組件技術、用例技術等多項發明、與Grady Booch、James Rumbaugh一起被稱為UML之父的Ivar Jacobson博士在近期訪華期間一再提醒中國的軟件企業,謹防掉入CMM陷阱。

    CMM/CMMI的缺點

    CMM/CMMI最早起源于美國國防部。為了改變在采購過程中頻繁地采購到大量不合格軟件的局面,美國國防部需要一種評估軟件質量的方法,這就是要求軟件企業進行CMM/CMMI認證。然而,CMM/CMMI真正解決這個問題了嗎?

    CMM/CMMI被認為是一種最成熟、最有效地提高軟件工程化水平的方法和標準,用來評估和改進過程,它是一個描述在軟件開發過程中有待改進的關鍵因素的框架,描述了一個能用漸進方式進行改進的途徑。它為軟件過程改進提供一個基礎,將軟件開發從一個相對來說隨意、不成熟的過程變成非常成熟的、有規律的、可管理的過程。

    然而,CMM/CMMI也有一些與身俱來的缺點不容忽視。比如,CMM/CMMI的評估耗資不菲,一個CMM2級評估就可能達到數百萬之巨,而且耗時很長,過程十分復雜,常常導致效果不太理想。不少企業的認證流于形式,評估完成后就只留下一大堆文檔,而真正的軟件開發過程卻依然故我。而且,CMM/CMMI只告訴我們應該怎么做,而沒有具體地告訴如何做。比如說,它要求必須改進需求管理,那么到底該如何做需求管理?CMM/CMMI沒有提供答案。

    還有最重要的一點是,不少軟件企業陷入了一個誤區,以為單單通過CMM/CMMI評估就可以解決軟件質量不高的問題,而忽略了軟件過程這一真正改善軟件質量的環節。事實上,完全有可能出現這樣的情況: 軟件成熟度為CMM 1級或2級的企業開發出的軟件是真正好用的,而有的企業即使通過了CMM 5級認證,也無法保證它交付好的軟件。最糟糕的情形是,如果采用不好的軟件過程,通過CMM/CMMI的成熟度級別越高,只會使軟件企業生產差勁軟件的過程變得更加有效率,而不是使企業開發出更好的軟件。

    Ivar Jacobson認為,好的軟件過程首先一定是基于組件的,在此基礎之上,還要符合迭代開發、用例驅動開發和以架構為中心的這三個最佳實踐。

    合理的軟件過程是軟件質量的基礎

    為什么會是這樣呢,Ivar Jacobson舉了一個非常形象的例子。這是一個農夫和他的奶牛的故事。在奶牛喝水的途中(稱為“牛路”)有一片莊稼地,牛會吃掉很多莊稼。農夫看到這種情況后,意識到必須對奶牛喝水的過程進行改進,所以他就在這條道路上鋪上了瀝青。結果,農夫得到了一個好的“牛路”,牛走得更快了,但是并沒有真正解決牛吃莊稼的問題。它應該有更好的方式,就是為牛喝水尋找一條全新的道路。

    軟件企業利用CMM框架進行軟件質量控制的過程,就像是這個農夫為牛路鋪瀝青。對于軟件企業來說,如果從一個錯誤的軟件過程開始,即使你在這個上面再改進,得到的永遠只是“牛路”。這里更應該考慮的是要選擇一條更好的路,也就是從一開始時,就采用能夠開發出好的軟件的過程。然后在這個軟件過程的基礎上,對這個軟件進行度量,改進這個軟件的過程,也就是進行CMM/CMMI要求的改進。

    Ivar Jacobson博士
    他被認為是影響或改變了整個軟件工業開發模式的幾位世界級大師之一,是軟件方法論的一面“旗幟”。他是組件和組件架構、用例、現代業務工程、Rational統一過程等業界主流方法或技術的創始人。

    Ivar Jacobson博士認為,從一個不良的軟件過程出發,在此基礎上進行改進,實際上會把軟件開發變得更糟糕,因為你把軟件開發過程固化了,使日后再想對它進行改造,變得更加困難。正確的方法是,先要有一個好的軟件過程,這是不容易的,但是值得做的事情。Ivar Jacobson 說,“把一個好的軟件過程變得可度量非常容易,但是把一個可度量的軟件過程變成一個好的軟件過程卻很難”。也就是說,只有把一個好的軟件過程,即能夠開發出好的軟件的過程變得可度量才是有益的。而把一個已經經過CMMI改進的、可度量的過程變成一個真正的能夠開發出好軟件的過程,這是幾乎不可能的事情。

    那么什么是一個好的軟件過程?Ivar Jacobson建議從以下幾個方面進行辨別: 第一,壞的過程關注文檔上,而好的過程關注在可執行的程序或者系統上; 第二,壞的過程延誤了揭露風險的時間,而好的過程一開始就把自己暴露在風險之下,并及時解決它; 第三,壞的過程在項目的最后才能夠驗證這個項目的質量,而好的過程其質量是每時每刻都能夠得到驗證的;第四,壞的過程有一個非常復雜的跟蹤關系矩陣,從需求到代碼需要一個非常復雜的矩陣,而好的過程,卻是一個無縫鏈接; 第五,在面對變更時,壞的軟件很脆弱,好的軟件會很健壯。

    Ivar Jacobson提醒軟件開發人員要做聰明的農夫,首先得到一個正確的軟件過程; 然后,再考慮去度量它、定義它。因為軟件項目管理的本質不是能否描述并度量軟件過程以及過程到底怎么樣,而是首先關注軟件,你是否能很好地開發出合格軟件。重點是得到結果,通過軟件過程得到這個結果,也就是交付的軟件產品。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    TAG: cmm CMM 改善 軟件 質量

    21/212>

    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>