軟件質量保證的成功之路 軟件質量保證
關鍵字:質量保證
1 概述
在軟件開發團隊中,由于質量被視為軟件產品的生命,而始終被人們所高度關注;然而在現實生活中,許多軟件產品卻時常陷入質量低下的旋渦,總是不盡人意。究其根源,在于這些軟件產品對其質量內涵的把握,僅僅停留在減少軟件運行錯誤、加強軟件測試、避免軟件缺陷的一般性層面,而對整個軟件開發生命周期的全過程質量管理,缺乏總體架構。因此,在大型軟件產品的開發與設計中,始終體現全過程質量管理思想的Rational Unified Process?(簡稱RUP)和提供全生命周期支持的軟件開發平臺,則展現出強大的生命力和獨特魅力。
2 全過程質量保證
2.1 質量定義
在RUP中,質量定義如下:
滿足或超出認定的一組需求,并使用經過認可的評測方法和標準來評估,還使用認定的流程來生產。
由此可見,質量不僅是我們孜孜以求的結果,它更體現在軟件開發的整個過程。
2.2 過程質量
在過程質量方面,經常舉的一個例子就是汽車生產過程。讓我們一起來想象一個場景:在上個世紀初的一家汽車銷售公司里,汽車銷售員正在為作為準客戶的您推銷兩款汽車,其中一款是由某公司引入當時世界上最先進的生產線和工藝流程生產的產品,而另一款是由廠家技術精湛的師傅花了一個多月的時間用車床加大錘手工精制而成。排除其它汽車購買因素,在汽車的質量方面,您會作何感想呢?精明的你一定會作個簡單分析,第一輛車的質量是由汽車生產線和生產工藝本身決定的,每一輛同型號車的質量完全相同,它是由汽車生產的過程質量決定的;而第二輛車的質量在很大程度上則依賴于生產汽車的師傅水平,不同的師傅生產出的汽車質量可能相差很大。因此通過了解市場上同型號車的質量狀況,你可以輕松做到對第一輛車心中有數;但對第二輛,你則需要花一番功夫弄清楚師傅的資質背景,從而判斷汽車的質量。由此可見,你對第一輛車的信任,來自于過程質量,而汽車作為日常消費商品被大規模生產和銷售的基礎也是過程質量,是它使汽車生產的規模經濟成為可能。
軟件開發過程質量就是指為了生成工件而對可接受流程(包括質量評測和質量標準)的實施和遵守程度。軟件生產的過程質量與汽車類似,體現在三個層次:一是產品本身和用來生產、組裝軟件產品的零部件質量,包括用來進行軟件開發或在軟件開發過程中產生的代碼、文檔、模型和可執行系統等工件;二是軟件開發活動本身對標準化軟件開發過程的遵守程度,主要體現在軟件開發過程的標準化、流程化、自動化程度和團隊基本協作平臺的效率;三是用來對整個軟件產品進行驗收的評測手段,它應該是被業界廣泛認可和接受的方法。
一個軟件生產企業的過程質量一般可以用它的軟件過程成熟度等級(例如CMM/CMMI的級別)來決定,這也正是印度的軟件公司能夠獲取很多外包項目的重要原因。但我們應該更清醒的看到:真正保證軟件質量的不是CMM/CMMI的一紙評估報告,而是軟件生產過程本身的成熟度,包括我們賴以達到成熟等級的方法、工具和軟件開發平臺?上驳氖菄鴥仍絹碓蕉嗟钠髽I已認識到這一點,把更多的功夫花在使用合適的方法、采用恰當的工具和平臺,切實提高軟件生產過程的成熟度。
文章來源于領測軟件測試網 http://www.kjueaiud.com/