軟件產品的質量與軟件、文檔、成本控制等多方面相關。國內的軟件企業一般都有獨立的產品測試部門,但很少有獨立的質量保證部門,殊不知,測試產品通常是在產品開發的某一階段完成之后才進行,而質量保證應該貫穿于產品開發、測試、維護的整個過程。實施CMM,最重要的步驟之一是要建立獨立的質量管理部門,實行獨立的報告機制。質量管理人員經過良好的培訓,參與到項目的開發過程中去,而且即使質量管理人員的資力較淺,但經過一兩年的培訓,完全可能向資深的設計人員挑戰。同時由于質量管理部門具有相對的獨立性,因此質量管理人員盡管資力不深,但仍然有權利在發現質量問題時要求整個項目暫停,使問題得到及時的解決。
李啟煊:注重實效,避免表面文章
創智已經通過了ISO 9000認證。ISO 9000固然有其優點,但國內企業在通過ISO 9000認證時存在一個普遍問題:比較注重表面化和文件化,對實際效果關注不夠。另外,我們太注重專家和權威的意見,專家說可以做,我們就做;權威說不可以做,我們就不敢做。在這一點上,美國企業與中國企業完全不同,它們更注重實際的需求。
注重表面效果還帶來了另一方面的問題,就是實施計劃不周密,常常是只想到一部分就開始實施,缺乏全面的思考。一旦出現問題,整個計劃都需要修改,就像蓋房子,蓋了拆、拆了蓋,不斷返工,總也做不好。
在具體實施時,國內企業最需要突破的難點是“同級復審(Peer Review)”。中國的傳統文化講究“面子”,開發人員不好意思去挑別人的錯誤。殊不知這樣一來,軟件中的錯誤就不能及時地被發現,提高軟件質量也就無從談起,更談不到客觀、嚴謹和公平。
李。毫炕芾
軟件企業不僅在產品開發中要有計劃,在改善軟件過程中也要有計劃,同時還要有量化的數據。從理論上講,量化數據對整個過程的改善將起到重要的作用,F在很多企業在進行軟件過程改善時面臨著一個很大的困難:很難控制整個流程。因為沒有量化,就缺乏可操作性,看不出改善的結果。
其次,每完成一個項目,都要進行分析,了解量化和過程改善措施到底取得了什么成果?這其中有三個指標可以衡量改善的結果:第一是偏移度,考察整個項目中的時間計劃、資源計劃和人力投入計劃,看看其偏移度是多少?5%以內是可以接受的;第二是“返工率(Rework)”,軟件過程改善是否成功,“返工率”是一個很重要的指標,如果軟件過程的改善使“返工率”降低了1%或2%,就說明效果很好;第三是“失控率”,任何一個軟件項目都有很多控制措施,國內現在通常的模式是由負責人簽字,例如,需求計劃必須經過幾個人簽字才能生效。
何曉源:建立適當的獎勵機制
我們在開展“同級復審(Peer Review)”活動時曾遇到這樣的問題:項目組成員相互“留面子”,總覺得檢查出別人的程序錯誤是一件不好的事情。如此一來,程序錯誤不能及時被發現,同時,CMM要求的“同級復審“也失去了意義。為了改變這種狀況,我們建立了一套獎勵機制,在“同級復審”時,如果檢查的一方能夠提出一些關鍵性的問題,公司將給予適當的獎勵。通過這種方式,使“同級復審”能夠得到很好的貫徹執行。
王家欣(CA(中國)公司高級技術顧問) :小企業要重實施,輕評審
對小企業來說,實施CMM的目的是解決自身的質量問題、改善過程管理,沒有必要搞耗時、耗力、耗錢的評審。我個人的看法是,如果企業面向國際競爭,或者為了與同行競爭,通過CMM評估能夠促進其業務的發展,那么當然要花力氣去做。反過來,如果通過評估獲得證書對企業來說并不是最需要的,提高軟件質量才是企業急需解決的問題,那么可以采用實用主義的方法,以CMM模型為指導,注重實施的效果。實際上,的確有一些企業并沒有通過規范的SEI認證,也沒有去做很多評估,但是依然取得了很好的軟件質量管理效果,這些企業應該是中小企業的榜樣。
延伸閱讀
文章來源于領測軟件測試網 http://www.kjueaiud.com/