?。矍把裕海荨≤浖鳛橐环N純數(shù)字化商品,在沒有權(quán)威的第三方進(jìn)行監(jiān)督認(rèn)證的情況下,軟件供應(yīng)商和用戶在軟件產(chǎn)品是否達(dá)到目標(biāo)需求的問題上,往往各執(zhí)一詞。
關(guān)于軟件質(zhì)量標(biāo)準(zhǔn)和認(rèn)證,國內(nèi)雖然制定了有限的軟件技術(shù)標(biāo)準(zhǔn),但無法從根本上對軟件這種特殊商品實施有效的質(zhì)量監(jiān)督和認(rèn)證。在國際上通行的做法是,軟件的質(zhì)量標(biāo)準(zhǔn)和認(rèn)證工作,由獨立的軟件測試機構(gòu)來完成。這些測試機構(gòu)的行為是市場化的,但因為測試能力和權(quán)威性將直接關(guān)系到它們的市場影響力,所以他們的測試行為極其嚴(yán)格,力求將垃圾軟件扼殺在搖籃中。
值此, 對軟件測試以第三方的視角探討制約國內(nèi)軟件發(fā)展的瓶頸和如何拓寬與加強軟件測試等有關(guān)問題,作以下探討.
1、軟件測試勢在必行
從有關(guān)資料獲悉,金融和電信行業(yè),他們買的硬件設(shè)備都是頂級的,可惜軟件應(yīng)用這一塊跟不上,導(dǎo)致了硬件功能得不到充分的發(fā)揮。硬件設(shè)備低下的運行效率,造成了資源與資金的隱性浪費,實際上是國內(nèi)軟件在拖硬件的后腿。國內(nèi)的軟件開發(fā)普遍存在"重開發(fā),輕測試"的現(xiàn)象,常常是在項目開發(fā)完成之后,才發(fā)現(xiàn)軟件有嚴(yán)重缺陷問題,不得不全部推倒從頭再來。推倒重來則意味著前期人、財、物的投入全部浪費了,即大大增加了軟件的開發(fā)成本,又會因為超出了客戶的委托時間,付出的代價就更高了。
實踐經(jīng)驗證明,軟件測試是軟件開發(fā)過程中的一個重要步驟,或者說測試應(yīng)該貫穿在軟件開發(fā)過程的每一個階段。軟件測試所起到的作用就是:能夠確保在軟件開發(fā)的過程中,隨時發(fā)現(xiàn)問題,方便開發(fā)人員及時修改。
在國內(nèi)對于消費類軟件來說,經(jīng)常出現(xiàn)一些已經(jīng)推向市場的產(chǎn)品由于被發(fā)現(xiàn)有嚴(yán)重缺陷而導(dǎo)致大量退貨的局面。而對于定制的行業(yè)軟件來說,則是一再的返工、綿綿無絕期的修改和維護(hù),既拖死了軟件提供商,也耽誤了客戶的正常業(yè)務(wù)。這一系列現(xiàn)狀會導(dǎo)致使用戶對國內(nèi)軟件提供商失去信心,這對于正在成長的國內(nèi)軟件市場來說,無疑是當(dāng)頭一捧。
由于國外軟件的成熟度高,開發(fā)商對軟件質(zhì)量的控制力度很強,所以國外軟件測試外包的不是太多;不過在國外有些軟件需要比較專業(yè)的質(zhì)量認(rèn)證,例如軟件的本地化測試,就必須借助第三方機構(gòu)來完成了。如微軟公司,微軟的產(chǎn)品要翻譯成歐洲的6種文字,如果是自己來做這些本地化測試工作,成本就會很大,所以外包給別的公司來做就很合適;另外還有一種情況也會外包的,例如對一些大型軟件的測試,不一定每家開發(fā)商都有專業(yè)的測試隊伍和測試的工具。從成本上來說,某些軟件測試工作外包是經(jīng)濟(jì)的。相反,國內(nèi)軟件的成熟度比較低,軟件開發(fā)商基本沒有能力來做測試,這兒指的是專業(yè)的、職業(yè)的測試,所以從目前來說,國內(nèi)軟件測試的市場空間很大。"
出于對軟件測試行業(yè)的理解,意識到要解決國內(nèi)軟件應(yīng)用滯后于硬件的問題,就必須提高國內(nèi)軟件的質(zhì)量,而要提高軟件質(zhì)量,就必須加強軟件開發(fā)過程中的測試力量,而獨立的第三方測試機構(gòu)正是一個市場空白點,故專業(yè)從事軟件測試的機構(gòu)的產(chǎn)生是發(fā)展的必然。
2、 軟件測試現(xiàn)狀與提高
目前國內(nèi)做軟件測試的機構(gòu),還沒有發(fā)現(xiàn)完全商業(yè)化操作的機構(gòu),只是有某些政府部門下屬的機構(gòu)做一些軟件產(chǎn)品驗收工作;要末就是開發(fā)商臨時承接的一些軟件測試項目。應(yīng)該說實施軟件測試時遇到的最大障礙是: 一是客戶的意識,二是派出的項目實施人員的素質(zhì)問題。
實施軟件評測項目時,客戶要有接受管理軟件開發(fā)流程的意識。
客戶交給開發(fā)商一個項目,通過測試等質(zhì)量掌控流程,可以將產(chǎn)品的質(zhì)量保證在一個相對較高的水準(zhǔn),減少后續(xù)工作的成本。但是現(xiàn)在很多開發(fā)商和客戶很短視,覺得只要現(xiàn)在沒有出問題,就可以了,不愿意在軟件開發(fā)過程中,讓測試介入的程度不深,這導(dǎo)致測試不完全,埋下了隱患。
無論是對軟件開發(fā)商還是對客戶來說,忽視軟件測試,必將導(dǎo)致上的軟件開發(fā)項目越多,將來會被這些有問題的項目給拖死的概率越高。
而有獨立的軟件測試第三方的出現(xiàn),好處就是嚴(yán)格地掌控軟件質(zhì)量,減少維護(hù)成本,這不光對客戶有好處,對開發(fā)商也有好處。所以一個項目,在我們實施很長一段時間,大約是半年至兩年后,客戶才意識到這樣做是有用的。這很正常,因為軟件開發(fā)一定會有大大小小的問題,包括我們評測也有一些問題查不出來。"
特別需要說明的是對派出的項目實施人員的標(biāo)準(zhǔn)很高,要求既有綜合素質(zhì),又要有專業(yè)素質(zhì),目前國內(nèi)這種復(fù)合型的人才太少了,除引進(jìn)外可以自己培養(yǎng)。
但人才培訓(xùn)需要加大力度,因人才培養(yǎng)是要在資金和力量上投入最大的一塊。其中專業(yè)素質(zhì)的培訓(xùn)最難,因為需要實踐,這如同醫(yī)生需要臨床實踐一樣。項目實施管理者也一樣,既要有理論基礎(chǔ),更要有經(jīng)驗積累,而一個優(yōu)秀的項目實施管理者重要的素質(zhì)是,能在按流程做的基礎(chǔ)上,發(fā)揮個人的主觀能動性,這個要求就太高了,但這又是項目實施成否的關(guān)鍵。
國內(nèi)軟件業(yè)和國外相比,最大的差異就在:質(zhì)量和質(zhì)量控制應(yīng)該是最重要的一項內(nèi)容。但是,無論在消費類軟件還是大型軟件的測試領(lǐng)域,與國外相比,國內(nèi)軟件產(chǎn)品的質(zhì)量掌控體系和標(biāo)準(zhǔn)都是模糊的。國內(nèi)軟件提供商的質(zhì)量承諾,既沒有相應(yīng)機構(gòu)的監(jiān)督,質(zhì)量水平也沒有第三方來認(rèn)證,承諾顯得極其蒼白而無力。
可喜的是,軟件測試機構(gòu)在我國正逐漸成長起來,并且,它們在軟件市場上的影響力正逐步得到提升。因缺乏游戲規(guī)則導(dǎo)致整個軟件行業(yè)的市場行為不規(guī)范,并且嚴(yán)重制約軟件行業(yè)健康成長的局面,一定會有所改善。
3、軟件測試如何做
從事后測試,向質(zhì)量控制上轉(zhuǎn)型
起初往往是受客戶委托,測試已經(jīng)開發(fā)完畢的軟件,更多的是事后驗收工作;以后逐步介入軟件開發(fā)前的需求評審,以及開發(fā)時的文檔評審、代碼走查等等;最終發(fā)展方向就是做軟件監(jiān)理,但是不能不承認(rèn),目前我們與國際上通行的軟件監(jiān)理還有一定的距離。這樣實現(xiàn)了從事后測試,向質(zhì)量控制上轉(zhuǎn)型.
而美國實際是在軟件規(guī)模的擴大和結(jié)構(gòu)的不斷復(fù)雜的情況下,開始建立軟件測試制度和規(guī)矩的。美國在軟件開發(fā)的起步階段,也不會自己主動去做,是在現(xiàn)實的壓力下,才去實施這些流程規(guī)范的。國內(nèi)一定要有這種意識,意識到軟件開發(fā)過程中一定要引進(jìn)這些規(guī)章制度。另外,意識到了還不行,一定要實踐。
4、結(jié)束語
軟件評測只是用技術(shù)手段來監(jiān)控軟件產(chǎn)品的質(zhì)量,并不能從根本上提高我國軟件產(chǎn)品的水平。目前,國內(nèi)最缺的是軟件項目實施的高級管理人才和軟件結(jié)構(gòu)分析的專業(yè)人才。這種高級人才的培育制度才是最重要的,缺乏高級人才培養(yǎng)的后果,會影響國內(nèi)軟件的進(jìn)程。與培養(yǎng)軟件藍(lán)領(lǐng)相比,雖然高級人才培育的時間周期長,資金投入大,但是我們一定不能急功近利,要有這種憂患意識,去做這項有長遠(yuǎn)影響的工作。這種工作不是非得要誰去做,但是我們一定要有這種意識去投入去做。
日本在軟件開發(fā)中分得很細(xì),國內(nèi)接日本軟件外包的業(yè)務(wù)很多,但大部分只是負(fù)責(zé)一個模塊。軟件是個創(chuàng)造性的工作,變成流水線工業(yè)化生產(chǎn)也許有問題。在我們的軟件開發(fā)中,往往技術(shù)是不成問題的,但是管理是個大問題。我們的軟件企業(yè)中,各個員工意識不一樣,在不同的階段理解不一樣,管理人員的素質(zhì)也不一樣。軟件管理和測試是一個需要反復(fù)實踐的過程,要通過反復(fù)的實踐才能解決問題。這些問題根本不是培訓(xùn)大量的軟件藍(lán)領(lǐng)就能解決的。
現(xiàn)在關(guān)于軟件工程的培訓(xùn)很多,如果只是講課意義不大,這些課在學(xué)校都已經(jīng)講過了,現(xiàn)在要的是實踐。










