- 相關推薦
軟件質量保證模型探析
【摘要】本論文針對軟件質量體系及保證模型中的相關問題進行一些有益的探索,力圖通過對相關模型的比較研究,尋求到能夠全面反映和保證軟件質量的保證模型。在軟件組織中,可以將ISO和CMM結合起來應用,即:把ISO作為軟件質量管理的指導性框架,把CMM作為具體實施層的應用,這樣就可以充分利用二者的優勢來共同完成對軟件開發過程的質量控制,從而達到既提高軟件開發效率又保證所開發的軟件具有較高的質量。 【關鍵詞】能力成熟度模型;軟件生命周期;軟件質量保證 目前,軟件企業面臨的最大的問題是顧客對產品不滿意,究其原因,軟件質量保證技術的不完善是主要原因之一。就整體而言,我國的軟件質量管理和質量保證工作仍處于創建階段,國外的軟件質量管理和質量保證工作也不盡完善,現有的軟件質量保證是在軟件開發過程中的每一步都進行“保護性活動”。主要內容包括對方法和工具應用的規程、技術復審、測試策略、保證與標準符合的規程,以及度量和報告機制。在技術上的主要手段是測試和復審,在管理上的主要手段是ISO9001的認證[1]。ISO9001是一種“靜態”的質量保證標準,只規范了質量體系的最低可接受水平,并不描述一個組織如何實現這些系統質量要素來滿足顧客的需求;CMM是一個致力于組織過程改進的框架,問題是并未提供有關實現關鍵過程域所需要的具體知識和技能[2],在一定程度上造成了開發過程的僵化,對于當前軟件業來說也是很難實現的。 一、ISO9001與CMM的聯系 CMM和ISO9001都涉及質量管理和過程管理,并且都受到類似的利害關系驅動,兩者之間的相似之處總結為以下四點: (1)它們的精神一致,都有一個基本思想:“言所行,行所言”; (2)二者都強調管理、過程、規范化和文檔化; (3)ISO9001與CMM的出發點都是通過對生產過程進行管理來確保產品的質量; (4)都源自以戴明為首的管理專家的制度管理思想。 首先,不管是CMM還是ISO9001都強調對產生應用軟件之過程的管理,提高軟件產品的生產效率和軟件的質量,同時,軟件工程理論的廣泛運用也推動了軟件產業由小規模生產到集成自動化生產邁進。這也充分說明,軟件產品的質量不僅表現在最終產品的質量,還應該包含軟件產生過程的質量,只有這樣,才能使軟件組織連續不斷地生產出高質量的軟件產品。 此外,CMM和ISO9001并不是孤立或彼此矛盾的。它們的核心思想都來源于埃華茨·丹明和約瑟夫·佐蘭提出的全面質量管理思想,這種質量管理思想強調預防,而不是檢修缺陷與錯誤改正。因此,它們之間的結合在理論上是可能的。ISO9001的每一個質量要素都可以對應到CMM2—3級中關鍵過程區域的特征上。而CMM在生產過程中的管理重點,又彌補了ISO9001在微觀管理上的不足。另外ISO9001:2000版中增加的度量正好是CMM第四級強調的重點。 二、ISO9001與CMM的區別 (一)保證質量的方式不同 ISO9001作為質量保證標準,只論述了質量體系的最小需求,即合格質量體系的最低可接受水平。它是一種“靜態”標準,企業只要符合它要求的條件并通過權威機構的審核,就可以通過認證,證明企業的內部管理已經達到一定水平,符合該標準規范的要求。而CMM則強調過程控制、過程管理、持續的過程改進。CMM不僅僅是對產品質量的認證,更是一種改善軟件過程的模型,它以一種結構化的成熟度框架描述了軟件管理和工程實踐,指出了軟件過程不斷改進的科學途徑[3]。它所定義的5個級別就像5個臺階,企業必須一步一步地“攀登”。每一個成熟度級別,既是企業發展的階段性目標,又是評價企業能力水平的一個標準。當通過某一級CMM評估后,企業還必須持續不斷地改進過程,其目標是要達到可持續發展、可優化的程度,以此來實現高質量、高效率、低成本的生產軟件。因此,可以認為CMM是一個“動態”模型。 需要強調的是,ISO9001著重于考核產品的質量和產品過程的受控狀態,給企業提供一種PASS/FAIL的檢查體系,即企業的過程能力只有兩種狀態,雖然在缺陷預防和內審管理中涉及到了過程改進,但是并沒有對改進的目標和方法進行指導和控制。CMM則重點考核軟件組織的工程能力,而且突出不斷改進、升級的要求。顯然過程不斷的改進、能力不斷的增強,新技術的應用就會收到更好與更快的成效,產品的質量就會不斷的得到提高和保障。 (二)認證審核過程不同 ISO的認證過程分為兩個情況——機構或者通過了ISO認證,或者沒有。如果機構通過了ISO認證,其過程已滿足ISO9000的標準要求。與此不同的是,CMM給出的是過程改進的體系。CMM將軟件過程劃分成5個成熟度級別——從原始級(第一級)到優化級(第五級)。軟件機構可處在其中的任何一個級別,它的每一級對所要實現的關鍵過程域都有詳細的要求,并且強制企業能自我更新和持續改進,以實現缺陷預防[4]。這對于提高軟件企業自身質量管理素質是非常有利的。 但CMM畢竟是一個在學術報告基礎上建立起來的一套評估體系,它的認證結果是由SEI授權的首席評估員寄一封帶有本人簽名的信給被評估者,并在SEI備案,沒有任何證書,終生受用,中間不再審查。而通過ISO9000認證的企業,要在中國技術監督局備案,并且發證給企業,并要求每年審查,所有參加多邊認可協議的國家必須認可,適用性強。 (三)適用范圍不同 ISO9001標準是一個適用于提供各種產品/服務企業的通用型的企業標準,而且主要是針對制造業制定的[5]。正是由于ISO9001的通用性,使得它無法滿足軟件企業更深層次的專業化管理需求。而CMM是專門針對軟件開發企業設計的,可以幫助軟件企業有效地管理軟件過程。 ISO是通用的,并且是從客戶和外部審計者的角度來寫的,它提出的是最基本的要求,所以不是十分具體。而CMM是面向軟件的,即面向軟件開發人員的,它提供了機構內部過程改進的指南,而且CMM對每個級別的關鍵過程域都有很詳細的說明,光CMM的關鍵實現的說明就有500頁之多。 (四)管理層次不同 從管理層次上看,ISO要比CMM所處的級別高,ISO只是提出了一個質量管理框架,是屬于指導性的框架,而CMM提出的框架是一個操作性很強的框架,其KPA過程非常明確地提出了過程目標和過程注意事項。 三、相關建議 在軟件組織中,可以將ISO和CMM結合起來應用,即:把ISO作為軟件質量管理的指導性框架,把CMM作為具體實施層的應用,這樣就可以充分利用二者的優勢來共同完成對軟件開發過程的質量控制,從而達到既提高軟件開發效率又保證所開發的軟件具有較高的質量。我國中小軟件企業在建立軟件質量保證模型時,應該考慮以下幾個方面的因素: (1)某種程度上市場目標決定質量目標,只有能滿足客戶需求的軟件才可以稱為好的軟件。 (2)在考慮最終軟件成品的同時,要考慮軟件過程的質量保證。 (3)全面質量管理及CMM思想的集成,要關注軟件過程控制能力以及過程持續改進能力。 參考文獻 [1]李娟.基于QFD的軟件質量保證模型研究[D].西北工業大學,2006. [2]李娟.CMM實施過程模型及實例化方法研究[D].中國科學院軟件研究所,2005. [3]葉俊勇,汪同慶等.軟件開發的質量保證體系[J].計算機與現代化,2002,6:27-32.
【軟件質量保證模型探析】相關文章:
槲皮素微孔板抗氧化微量模型探析05-02
探析我國仿真人體模型中的仿生技術05-02
計算機軟件專業畢業設計探析04-28
河流污染帶特征參數預測模型及其軟件化研究04-27
航天中心軟件的一個領域工程方法和模型04-30
新型智能仿生模型-蟻群模型04-27
飛機模型04-30
多級評分模型中的分部評分模型04-26