在信息化建設(shè)當(dāng)中,軟件功能薄弱、漏洞眾多等問題頻頻出現(xiàn),軟件質(zhì)量理所當(dāng)然地成為了關(guān)注焦點(diǎn)。業(yè)界專家認(rèn)為,不成熟的軟件產(chǎn)品是國內(nèi)信息化項(xiàng)目失敗的一個重要原因,同時,產(chǎn)品質(zhì)量問題也將成為軟件企業(yè)能否繼續(xù)發(fā)展壯大的關(guān)鍵所在??v觀國內(nèi)和國外的軟件產(chǎn)業(yè),技術(shù)上的差距當(dāng)然是存在的,但更為明顯的也是致命的差距就在于產(chǎn)品質(zhì)量和過程當(dāng)中的質(zhì)量控制。
“什么叫成熟產(chǎn)品?只要有一個成功案例的產(chǎn)品就是成熟產(chǎn)品!”某國內(nèi)大型軟件公司CEO的這個經(jīng)典觀點(diǎn)廣為流傳,但其中的邏輯錯誤將風(fēng)險帶給了客戶也帶給了軟件企業(yè)本身。國內(nèi)一些軟件企業(yè)居然一夜間成了萬能公司,ERP?CRM?OA?WorkFlow?我們都行!然而這些企業(yè)對軟件測試的重要性大多認(rèn)識不足,重開發(fā)輕測試的現(xiàn)象過于嚴(yán)重,很多公司沒有專門的測試部門,測試工程師太少,開發(fā)人員兼作測試工作的現(xiàn)象十分普遍,在這種狀況下推出的缺少嚴(yán)格測試等環(huán)節(jié)的軟件產(chǎn)品只能給客戶帶來悲劇。
近年來,我國的軟件企業(yè)已越來越意識到軟件測試的重要性,逐漸加大軟件測試在整個軟件開發(fā)的系統(tǒng)工程中的比重。據(jù)調(diào)查統(tǒng)計,在成本上一般來說是“需求分析”和“規(guī)劃確定”各占3%,“設(shè)計”占5%,“編程”占7%,“測試”占15%,“投產(chǎn)和維護(hù)”占67%。近些年來,測試成本的比例更有上升趨勢。
不成熟軟件帶來的風(fēng)險
不成熟的軟件產(chǎn)品是把測試成本交給了用戶:企業(yè)往往是出于項(xiàng)目周期安排不當(dāng),或者根本沒有安排專門測試,匆匆完成編碼設(shè)計就將產(chǎn)品交付使用了。這樣的后果自然是用戶覺得產(chǎn)品漏洞百出,項(xiàng)目執(zhí)行過程也遙遙無期,最后,項(xiàng)目雙方都筋疲力盡,用戶覺得受騙,而軟件商則毀了聲譽(yù),追加了大量項(xiàng)目實(shí)施費(fèi)用,可謂是“賠了夫人又折兵”。
企業(yè)邏輯的軟件實(shí)現(xiàn)高于計算機(jī)技術(shù):很多軟件企業(yè)在沒有做透前期調(diào)研的前提下就匆匆開始建設(shè)自己想象中的“大廈”,結(jié)果可想而知。當(dāng)用戶建立起真正的企業(yè)應(yīng)用。才發(fā)現(xiàn)軟件違背了企業(yè)邏輯,不得不進(jìn)行修改。這樣閉門造車無疑會給“大廈”帶來致命傷害。
注重軟件產(chǎn)品的質(zhì)量和成熟度才會良性循環(huán):有人把不成熟的軟件產(chǎn)品比作是焦油坑中垂死掙扎的猛獸,布魯克斯《人月神話》展示的可怕一幕在軟件研發(fā)過程中屢見不鮮。很多軟件企業(yè)常常將軟件質(zhì)量視為一種奢侈,如果有必要的話,為了更多功能、更快速開發(fā)或者更低成本,測試就可以被犧牲掉。然而,在實(shí)踐中,如果軟件開發(fā)組織對質(zhì)量有一個堅定承諾,實(shí)際上可以加快開發(fā),減少成本,并更容易地增加新的特性。在“已完成”的產(chǎn)品缺陷修復(fù)上花費(fèi)的代價要比從一開始就修復(fù)高出很多倍。相反,一個從開始就加強(qiáng)產(chǎn)品質(zhì)量的組織,是有遠(yuǎn)見和創(chuàng)新精神的,市場中的高質(zhì)量軟件將更具競爭力。
找出測試管理中的誤區(qū)
筆者曾經(jīng)從事專業(yè)的軟件項(xiàng)目管理與實(shí)施,項(xiàng)目管理感受很深刻。有一些切身體會與讀者分享。
吸取“前輩”經(jīng)驗(yàn)。IBM在軟件自動化測試技術(shù)核心的三個最佳成功經(jīng)驗(yàn)是:盡早測試、連續(xù)測試、自動化測試,并在此基礎(chǔ)上提供了完整的軟件測試流程和一整套的軟件自動化測試工具,組建一個測試團(tuán)隊(duì),基于一套完整的軟件測試流程,使用一套完整的自動化軟件測試工具,完成全方位的軟件質(zhì)量驗(yàn)證。
別去“挖東墻補(bǔ)西墻”。由于項(xiàng)目研發(fā)期的“缺斤短兩”,使項(xiàng)目實(shí)施和投入運(yùn)行的初期漏洞百出,時間一長用戶會發(fā)瘋,項(xiàng)目實(shí)施者也會發(fā)瘋,國內(nèi)前幾年的眾多的ERP項(xiàng)目失敗的原因多出于此。項(xiàng)目實(shí)施的遙遙無期,將嚴(yán)重挫傷用戶的耐性和信心。
代碼與文檔哪個值錢?多數(shù)項(xiàng)目管理者忽視了文檔的重要性。對于大型軟件的研發(fā)項(xiàng)目,還需要專業(yè)的測試過程管理軟件來支撐大規(guī)模的信息交流和自動測試、代碼的更新和版本的提交。這些文檔和信息的價值從某種意義上甚至超出了程序代碼本身。
全程還是后期?軟件的設(shè)計階段往往沒有軟件測試人員的參與,事實(shí)上設(shè)計上的缺陷往往是耗用成本最高,也是最難在開發(fā)后期修復(fù)的缺陷。而一個軟件的質(zhì)量與它有多大的設(shè)計缺陷有著密不可分的聯(lián)系。而有經(jīng)驗(yàn)的測試人員的質(zhì)量意識,安全意識,對用戶需求的了解及分析能力,對于打造高品質(zhì)的軟件設(shè)計都有著不可忽視的作用。
專職還是兼職?在傳統(tǒng)的開發(fā)方式中,由于缺乏必要的配置管理和變更控制,測試工作根本無法提出具體的測試要求,加之開發(fā)人員的遮丑,測試工作往往是走走過場,測試結(jié)果既無法考核又無法量化,當(dāng)然就無法對以后的開發(fā)工作起指導(dǎo)作用。事實(shí)上,每個軟件項(xiàng)目都需要專業(yè)的測試人員進(jìn)行相對獨(dú)立的測試工作,從而保證軟件項(xiàng)目的質(zhì)量。
居安思危,控制風(fēng)險。需求變更給測試帶來的問題可能是災(zāi)難性的,客戶需求不是變動的唯一來源。有時團(tuán)隊(duì)自身也能引起范圍變動。團(tuán)隊(duì)的成員可能聽說或“假設(shè)”解決方案因客戶的實(shí)際要求而發(fā)生了變動。加強(qiáng)溝通和協(xié)作,隨時了解變更的狀態(tài)。
誰為產(chǎn)品質(zhì)量買單?質(zhì)量和質(zhì)量控制應(yīng)該是軟件項(xiàng)目的的一項(xiàng)重要內(nèi)容。但是,無論在消費(fèi)類軟件還是大型軟件的測試領(lǐng)域,國內(nèi)軟件產(chǎn)品的質(zhì)量掌控體系和標(biāo)準(zhǔn)都很模糊。質(zhì)量控制越來越依托于公司在產(chǎn)品交付用戶之前的測試工作的成敗。
沒有厚度就沒有重心。軟件測試過程的歷史數(shù)據(jù)缺失是大多數(shù)軟件項(xiàng)目失敗的關(guān)鍵所在,這樣的結(jié)論也許使很多人感到吃驚,但事實(shí)就是如此。因?yàn)檫@些歷史數(shù)據(jù)是反映軟件項(xiàng)目實(shí)施軌跡的第一手資料,是項(xiàng)目延續(xù)和反饋的基石。
省錢還是費(fèi)錢?事實(shí)上,作為軟件開發(fā)企業(yè)來說,投入人力,資金搞軟件測試的最終目的還是離不開經(jīng)濟(jì)效益。而對與測試項(xiàng)目的管理也不能離開這個大前提。軟件測試的經(jīng)濟(jì)效益主要來自以下兩個方面。一是滿足用戶需求,提高產(chǎn)品的競爭力,最終提高產(chǎn)品的銷售量。二是盡早發(fā)現(xiàn)缺陷,降低售后服務(wù)成本。而軟件測試的最終目的就是使它帶來的經(jīng)濟(jì)效益最大化。有一些專業(yè)的測試工具的購買、測試人員的配備和培訓(xùn)還需要一定的經(jīng)濟(jì)投入,項(xiàng)目決策者們可以選擇適合自己的配置,但決不能沒有這些方面的投入。
溝通還是對立?溝通是開發(fā)和測試人員必備的素質(zhì)。但傳統(tǒng)的思想認(rèn)為,測試人員是找麻煩,是開發(fā)的“克星”。其實(shí),項(xiàng)目管理者應(yīng)該清楚,為軟件的質(zhì)量和品質(zhì)努力的工作目標(biāo)是一致的。溝通和建立溝通渠道是項(xiàng)目管理者的重要工作。
如何提高軟件測試水平
要提高我國的軟件測試行業(yè)的發(fā)展水平,首當(dāng)其沖要解決軟件測試隊(duì)伍的問題。某著名國際軟件企業(yè)的軟件測試人員與軟件開發(fā)人員的比率達(dá)到了3:5左右,并且在實(shí)踐過程已經(jīng)證明了這種人員結(jié)構(gòu)的合理性。但國內(nèi)公司顯然一時很難達(dá)到,但更重要的是重視程度,在這個基礎(chǔ)上壯大軟件測試隊(duì)伍,提高測試人員的素質(zhì)。
其次是要學(xué)習(xí)借鑒國外完善的測試機(jī)制,包括豐富的軟件測試經(jīng)驗(yàn),強(qiáng)大的測試工具,優(yōu)秀的測試管理水平。真正解決測試手段落后、測試方法單一和測試工具欠缺的問題,在企業(yè)內(nèi)部形成一個嚴(yán)密有效的糾錯系統(tǒng),使國內(nèi)的測試工作流程、技術(shù)水平接近國外先進(jìn)水平,這樣才能提高國內(nèi)軟件開發(fā)與測試的整體管理水平,增加軟件產(chǎn)品的競爭力。
此外,要重視第三方的測試力量。第三方的專業(yè)測試企業(yè)是靠技術(shù)與服務(wù)來贏得客戶信任的,也因此更加注重測試方法與質(zhì)量。對于軟件企業(yè)來說,從無到有地去建立測試部門,并完善測試體系,需要較大投入,將研發(fā)出來的軟件產(chǎn)品交給實(shí)力強(qiáng)勁的第三方專業(yè)測試公司,在提高軟件產(chǎn)品的質(zhì)量問題同時,還節(jié)約了產(chǎn)品測試成本。
知識庫
專用測試軟件集錦
單元測試工具:IBM Rational PurifyPlus,適合要在短期內(nèi)快速提升單元測試能力和運(yùn)行分析能力的團(tuán)隊(duì)。
系統(tǒng)負(fù)荷測試工具:IBM Rational Performance Tester,適合測試和驗(yàn)證基于互聯(lián)網(wǎng)的應(yīng)用系統(tǒng);Mercury 公司的LoadRunner。
實(shí)時檢測工具: IBM Rational PurifyPlus ,完整的運(yùn)行時分析工具,提高應(yīng)用程序的可靠性和性能;IBM Rational Test RealTime,用于實(shí)時/嵌入式產(chǎn)品的全面測試和運(yùn)行時檢測工具。
軟件性能檢查與優(yōu)化:EcoScope,adview公司的WebLoad、Microsoft公司的WebStress, Numega中的truetime,Rational的Quantify,Mercury公司的LoadRunner
客戶端功能測試:Mercury公司的winrunner;compuware的qarun;IBM Rational的SQA robot等。
服務(wù)器端壓力性能測試: Mercury公司的winload;compuware的qaload;IBM Rational的SQA load
WEB系統(tǒng)測試工具:TEST;Workberch;Web Appication Stress Tool
嵌入式測試工具:Logiscope(靜態(tài)測試工具);CodeTest
測試管理工具:Mercury公司的TestDirector;IBM Rational公司的Test Manager、ClearQuest;Compureware公司的TrackRecord
溫馨提示:因考試政策、內(nèi)容不斷變化與調(diào)整,信管網(wǎng)網(wǎng)站提供的以上信息僅供參考,如有異議,請以權(quán)威部門公布的內(nèi)容為準(zhǔn)!
信管網(wǎng)致力于為廣大信管從業(yè)人員、愛好者、大學(xué)生提供專業(yè)、高質(zhì)量的課程和服務(wù),解決其考試證書、技能提升和就業(yè)的需求。
信管網(wǎng)軟考課程由信管網(wǎng)依托10年專業(yè)軟考教研傾力打造,官方教材參編作者和資深講師坐鎮(zhèn),通過深研歷年考試出題規(guī)律與考試大綱,深挖核心知識與高頻考點(diǎn),為學(xué)員考試保駕護(hù)航。面授、直播&錄播,多種班型靈活學(xué)習(xí),滿足不同學(xué)員考證需求,降低課程學(xué)習(xí)難度,使學(xué)習(xí)效果事半功倍。
發(fā)表評論 查看完整評論 | |