徐文騏
摘 要 全球信息化推動我國軟件產業的蓬勃發展,隨著軟件工程學的深入研究,我國的軟件測試于“六五”期間逐步發展起來。但由于起步時間較晚,當前我國在軟件測試認識的正確性及全面性、軟件測試技術的先進性等方面與一些知名軟件產業強國之間還存在著不小的差距。隨著當前一些大型、超大型信息系統的投入使用,軟件質量正越來越被我國軟件企業所重視,軟件測試行業正迎來又一輪發展契機。本文通過對于當前國內軟件測試行業的現狀分析,指出當前存在的問題及其原因,并給出相關意見及建議,點明我國軟件測試行業發展的關鍵點及趨勢。
關鍵詞 軟件測試 軟件質量 軟件測試產業化
中圖分類號:TP311 文獻標識碼:A
當前我國的軟件行業正如雨后春筍般處于蓬勃發展階段,在短短二十幾年間,正不斷成長為我國經濟的又一支柱產業。但我國軟件行業仍處于發展的初級階段,大部分我國的軟件企業,仍然存在著重開發,輕測試,追求眼前功能的實現,對于性能及功能優化方面考慮甚少的問題,對于軟件質量的保證及軟件行業的發展帶來極大的風險和極為不利的影響。本文將對軟件測試的認識、測試技術、測試商業化等方面的當前現狀進行分析并對軟件測試行業的發展趨勢進行探討。
1國內軟件測試行業的現狀分析
1.1軟件測試行業的現狀及問題
首先,我們需要承認的是:我國軟件行業的發展仍處于較不成熟的階段,軟件測試行業的現狀令人較為擔憂。不得不說,當前,軟件測試在軟件行業中處于一個絕對的劣勢地位,無論是比重還是質量都與歐、美、日、印度等一些軟件強國存在著巨大的鴻溝。
數據顯示,中國軟件測試行業存在著巨大的人才缺口。據不完全統計,當前,我國軟件測試行業的人才缺口達到30—40萬人。2008年,國內最大的軟件測試網站51testing軟件測試網發起了中國首屆企業軟件測試現狀調查活動,并在此基礎上進行了全面、真實、有效的數據分析和整理,很好的體現了當前我國軟件測試的現狀。通過《2008年首屆企業軟件測試現狀調查報告》中的部分數據,可以清晰的看出當前軟件測試行業存在的問題與不足。
調研結果顯示,首先,我國當前沒有設立獨立測試部門的比例達到了51%;此外,從企業專職測試人員與開發人員的比例來看,企業測試人員與開發人員的比例集中在1:3—1:5左右.19%的企業該比例達到甚至超過1:7,這與國外軟件業1:1的比例相差甚遠。說明我國部分軟件企業測試人員嚴重匱乏,開發測試人員配置比例嚴重不均;再者,報告顯示:對于軟件測試重視程度在“很不規范”,“不規范”,“一般”的比例達到了49%,顯示我國“重開發、輕測試”的思想仍然比較嚴重。另外,目前我國測試行業測試技術仍然處于相對落后階段,對于測試人員的需求仍以手工測試人員為主,功能自動化測試工程師及性能測試工程師仍處于供不需求的嚴重缺乏狀態;同時,企業對于相關職業技能提升規劃并不重視,對于軟件測試人員的進一步培養缺乏有效機制,極大的遏制了軟件測試行業的進一步發展;此外,企業對于測試流程規范程度不夠,部分企業并未建立規范的評審流程,并且大部分企業對于性能測試及自動化測試重視不夠,都給最后的軟件交付時的質量帶來了更多的不確定性及風險。
1.2軟件測試行業現狀的原因剖析
(1)國內的軟件行業仍處于“溫飽”階段
雖然我國軟件行業處于蓬勃發展的階段,但當前大部分軟件企業都處于剛剛起步階段。企業規模不大,企業資金相對緊張,甚至部分企業“有價無市”,還處于“過緊日子”,向上擴張的初級階段。而搞好軟件測試恰恰正是由“溫飽”向“小康”的轉變。軟件質量也是在從量變到質變的過程,需要一定的投入才能有所產出,據測算,一個好的軟件花在測試上的時間基本占據整個開發成本的30%—40%,并且軟件缺陷查找過程遵循2-8定律,即后20%的缺陷需通過80%的測試成本,因而當前軟件產業的不發達導致軟件測試的窘境也就是順理成章的事。
(2)缺乏對于軟件測試的認識及重視程度
當前,我國很多軟件企業更多關注功能實現,以滿足功能需求為第一己任。有時為了趕項目進度,部分軟件企業甚至直接忽視軟件測試環節,僅通過程序員開發階段的單元測試,集成測試及功能驗證測試的通過就作為軟件上線的依據。部分軟件項目的失敗正式源于對于軟件測試重要性的認識不足所導致。然而,從軟件工程的角度來看,無論是經典的瀑布模型,全過程管理模型還是最新的敏捷過程模型scrum模型,開發驗證環節都是軟件開發活動中的一個重要組成部分,貫穿于軟件開發的全過程。部分企業認為,軟件測試是一個影響開發進度,浪費企業資源的吃力不討好的產物,熟不知,軟件測試是控制軟件產品質量的重要手段,是控制成本的關鍵。
(3)軟件企業的管理者質量意識淡薄
部分軟件企業的項目經理并沒有項目開發的經驗,并不能夠很好的組織相關軟件測試工作,還有部分管理者雖然提出了相關保證軟件產品質量的要求及口號,但是當需要在軟件測試投入大量人力物力財力之時,亦或是在軟件開發進度與軟件測試存在沖突之時,往往對軟件測試投入極少,以犧牲軟件測試為代價,換取軟件開發進度,對最后軟件質量的影響不言而喻。
(4)軟件企業缺乏全過程質量控制體系或相關體系不健全
目前,國內軟件企業能達到ISO:9001和CMMI(能力成熟度模型)3級以上的高級認證的相對較少,甚至部分申評成功的企業,只是將此作為營銷的籌碼。在日后的軟件開發過程中,因相關質量控制體系實行起來較為繁瑣,將會浪費許多時間及人力及財力,施行的企業寥寥無幾。目前,國內軟件產品質量監控體系和執行標準都是較為模糊的,軟件提供商的質量承諾,既沒有相應機構的監督,也沒有第三方來嚴格論證,給中國軟件產業提供了滋生不求質量的溫床,成為軟件產業快速發展的瓶頸。
(5)軟件從業人員的人數嚴重不足,技術落后
據測算,目前在國內120萬軟件從業人員中,真正能擔當軟件測試職位的不超過5萬,而目前高等教育中專業的軟件測試教育近于空白,獨立開設軟件測試課程的高校非常少,這就形成測試人才緊缺、需求不斷增大的現象。目前國內軟件測試的人才需求缺口超過20萬人。此外,當前我國軟件測試仍然以手工測試為主,屬于勞動密集型的手工測試增加了項目人力成本和溝通成本、低效率以及高差錯率。隨著目前軟件規模不斷擴大,用戶對軟件質量的要求越來越高,缺乏自動化測試及管理的能力,也是影響軟件產業發展的又一關鍵因素。
2軟件測試行業的未來發展趨勢
國內軟件測試尚處于起步階段,雖然與軟件發達國家相比存在著很大的差距,但不可否認的是,作為一個新興產業,軟件測試行業的發展已超出了同期軟件發達地區的水平,為了我國軟件測試行業更好的發展,我們需直面問題,解決問題。
(1)首先就是要加強對軟件測試的認識及重視程度。軟件開發過程是一個標準化的生產過程,不能只追求軟件產品的開發進度,一味求快,并且要認識到軟件測試是軟件交付前的一道重要工序,是保證軟件質量重要,也是最后的機會。為了避免已經推向市場的產品由于被發現有嚴重缺陷而導致大量退貨的現象,從而給軟件開發商及最終客戶帶來更多的損失,在軟件產品交付前,進行充足,全面的測試工作是每一個軟件企業必須完成的工作,企業的管理者需要正確認識軟件測試的重要性,對軟件測試足額保障測試時間、人力及財力。
(2)大力培養高素質軟件測試專業人才,提高軟件測試技術能力。政府、軟件企業、科研機構、高校等需共同努力,為我國的軟件測試行業培養高素質人才,高校應加大軟件測試專業的培養力度,國內各大高校可以與軟件測試培訓中心(甚至國外測試機構)強強聯手,學校在培養軟件測試人才的同時多引進測試實踐,軟件測試培訓中心可以把培訓班辦到校園內,在培訓在職測試人員時,多請高校的理論專家們來講課,取長補短,相互融合。軟件企業需加強對于軟件測試人員的重視程度,盡量做到開發、測試1:1的配置水平,并提高測試人員的薪酬及待遇,并且努力提高企業自動化測試能力與性能測試水平,從單一的功能化轉向全方面軟件質量把控。科研機構、高校還應致力于向國外先進的軟件發達地區學習,加大對軟件測試理論、測試技術、測試管理的創新和測試工具的開發并加大推廣力度,強化我國軟件測試行業的專業水準。
(3)將軟件測試從生命周期的后道測試向質量控制上轉移,使軟件測試不單單只是書面上的白盒及黑盒測試,應參照IS0-9001或者CMMI成熟度模型對軟件開發過程進行全過程的質量控制,逐步介入軟件開發前的需求評審,開發中的文檔資料評審、代碼走查等,最終發展為軟件監理。
(4)大力發展第三方的專業測試機構。重視利用第三方的測試力量進行測試,這也是重視軟件測試的一個表現。當然這樣的企業在國內尚處于鳳毛菱角,但這是一個趨勢。第三方軟件測試企業辦事效率與質量高,依靠技術與服務來征服客對于軟件企業而言,從頭去建立測試部門、引入相關人才、并完善測試體系,需要較大的資金投入。將研發出來的軟件產品交給已得到相關認證,實力強勁的第三方的專業測試企業,不僅僅能更好地提升軟件產品的質量,而且軟件企業還能節約產品測試成本。并且為專業測試人才提供了一個更好的發展平臺。
3結語
中國軟件產品質量已成為軟件產業發展的心病,軟件測試作為“朝陽產業”,正是其解決之道。經過幾十年的發展,我國的軟件測試和應用技術有了很大的進展。然而,當前我國的軟件測試行業與軟件發達地區相比還存在著諸多的不足及巨大的差距,很大程度上體現在軟件測試的意識、技術和規范上的缺失及落后。目前,我們要加強測試意識的培養,加強技術上的學習與研發,注重專業測試人才的培養、規范軟件開發和測試流程,相信不久的將來,我國的軟件測試將會迅速蓬勃發展開來。
參考文獻
[1] [美]Stephen H Kan .軟件質量工程——度量與模型(第二版)[M]. 北京:電子工業出版社,2004.
[2] [美]Cem Kaner等著.計算機軟件測試 (第二版) [M].北京:機械工業出版社,2004.
[3] [美]William E Perry著.軟件測試的有效方法 (第二版)[M]. 北京:機械工業出版社,2004.
[4] 51testing. 2008首屆企業軟件測試現狀調查報告[R]. 中國:51testing, 2008.