摘 要: 在軟件產(chǎn)業(yè)急速發(fā)展的帶動下,軟件測試人才的需求量劇增,而目前軟件測試課程教學(xué)模式的人才培養(yǎng)已無法滿足市場的需要。為此,根據(jù)軟件測試課程教學(xué)模式的現(xiàn)狀,對現(xiàn)有的教學(xué)模式進(jìn)行了改革,提出了“211階段與拋錨式教學(xué)”相結(jié)合的新的教學(xué)模式,教學(xué)實踐表明效果良好。
關(guān)鍵詞: 軟件測試; 教學(xué)模式; 改革; 探索
中圖分類號:G642 文獻(xiàn)標(biāo)志碼:A 文章編號:1006-8228(2013)11-52-02
0 引言
近年來,在經(jīng)濟(jì)全球化和信息技術(shù)飛速發(fā)展的帶動下,軟件產(chǎn)業(yè)已成為國家經(jīng)濟(jì)發(fā)展的重要支柱之一。在軟件開發(fā)的整個生命周期中,軟件測試是不可缺少的重要環(huán)節(jié),其成效直接決定了軟件產(chǎn)品的質(zhì)量。軟件測試行業(yè)日趨規(guī)模化和規(guī)范化,用人單位對軟件測試人才的需求量也不斷增長。因此,軟件測試人才的培養(yǎng)成為眾多高校計算機專業(yè)培養(yǎng)的新熱點[1]。然而,很多高校開設(shè)的軟件測試課程不能滿足市場對軟件測試人才的需求。學(xué)生只是學(xué)會了書本上條條框框的理論知識,而在實踐中遇到各種不同類型、不同功能的軟件時,仍然不懂活學(xué)活用。因此軟件測試課程也應(yīng)與時俱進(jìn),引入先進(jìn)的教學(xué)管理理念和教學(xué)模式以適應(yīng)市場發(fā)展的需要。
1 軟件測試課程教學(xué)模式的現(xiàn)狀
1.1 軟件測試課程簡介
軟件測試是一門迅速發(fā)展的新興學(xué)科,是計算機軟件專業(yè)、計算機應(yīng)用專業(yè)、計算機信息管理等專業(yè)的一門重要課程,是計算機軟件開發(fā)與測試、軟件測試專業(yè)高年級學(xué)生的必修課。軟件測試課程是實踐性、應(yīng)用性很強的課程,其主要目的是使學(xué)生在學(xué)習(xí)程序設(shè)計語言、軟件工程等課程的基礎(chǔ)上,熟悉軟件測試崗位的工作職責(zé),了解軟件測試的方法、原則、規(guī)范和管理,掌握軟件測試工作流程、測試技能,培養(yǎng)學(xué)生的實際動手操作能力和專業(yè)實踐能力,為就業(yè)打下堅實的基礎(chǔ)。
1.2 軟件測試教學(xué)存在的問題
軟件測試課程教學(xué)模式是指:軟件課程教學(xué)的總體設(shè)計。它是一個完整的功能體系,包括教學(xué)目標(biāo)的確立,教學(xué)計劃、進(jìn)度的制定,教學(xué)方法、手段的選擇和實施,課程考核的方法和手段等等[2]。本部分將對傳統(tǒng)教學(xué)模式包含的各部分進(jìn)行討論,分析目前該課程教學(xué)模式所存在的問題。
1.2.1 教學(xué)計劃及進(jìn)度
目前大部分高校的計算機相關(guān)專業(yè)都是在大三下學(xué)期開設(shè)軟件測試課程。學(xué)習(xí)的內(nèi)容主要包括軟件測試的基本概念、黑盒/白盒測試用例的設(shè)計技術(shù)和測試自動化工具的使用。由于該課程學(xué)習(xí)過程過于短促,加上學(xué)習(xí)內(nèi)容拘泥于書本化,所以在課程學(xué)習(xí)結(jié)束后,大部分學(xué)生對該課程的印象如過眼云煙,沒有留下多少記憶。即使是學(xué)習(xí)特別用心的學(xué)生,所學(xué)到的也僅是書面的內(nèi)容,掌握的也只有軟件測試的基礎(chǔ)理論知識,極度缺乏實踐環(huán)節(jié)的經(jīng)驗,當(dāng)進(jìn)入企業(yè)后,仍然無法圓滿完成一個軟件項目測試的實際工作。
1.2.2 教學(xué)方法及手段
目前高校開設(shè)的軟件測試課程所采用的教學(xué)方法及手段與其他課程一樣,即課堂講授和實驗室實踐相結(jié)合。這種教學(xué)方法屬于填鴨式的教學(xué)方法。首先,學(xué)生在學(xué)習(xí)的時候完全屬于一種被動式的學(xué)習(xí),學(xué)習(xí)效果不好;再有,實驗室實踐環(huán)節(jié)只是設(shè)計簡單案例的測試用例,與公司/企業(yè)需要測試的大型軟件相差甚遠(yuǎn),在測試方法、測試過程和測試文檔要求上都有很大的區(qū)別。因此,這種傳統(tǒng)的教學(xué)方法及手段無法適應(yīng)市場的需求[2,4]。
1.2.3 考核的方法及手段
傳統(tǒng)的軟件測試課程的考核方法及手段仍然是采用試卷命題閉卷考核的方式。而軟件測試課程是一門實踐性和應(yīng)用性很強的一門課程,這種考核方法只能考核學(xué)生對理論知識掌握的程度,并不能考核出學(xué)生對軟件測試技術(shù)掌握的情況。另外,學(xué)生在學(xué)習(xí)過程中的表現(xiàn)遠(yuǎn)遠(yuǎn)比一次考試的最終結(jié)果更能體現(xiàn)出學(xué)生真正的水平,所以這門課程的最終成績也不能由最后一次的筆試結(jié)果來決定。
2 軟件測試教學(xué)模式的改革
根據(jù)企業(yè)對軟件測試人員技能的實際要求,我們對教學(xué)計劃、課程設(shè)計、教學(xué)方式的實施及考核方式進(jìn)行了調(diào)整。
2.1 教學(xué)計劃調(diào)整
教學(xué)計劃一改以往一學(xué)期學(xué)完軟件測試所有內(nèi)容的傳統(tǒng)做法,分階段完成對該課程的教學(xué)。這樣一方面使學(xué)生以循序漸進(jìn)地過程學(xué)習(xí)該課程,印象更為深刻;另一方面,學(xué)習(xí)的內(nèi)容除了書本上的基礎(chǔ)理論之外,還包括了豐富的實踐內(nèi)容。
在學(xué)生學(xué)習(xí)完程序設(shè)計語言課程后,第二學(xué)年的第一學(xué)期開設(shè)軟件測試概論這門課,讓學(xué)生對軟件測試的基礎(chǔ)理論知識有一定的理解;第二學(xué)年的第二學(xué)期通過拋錨式教學(xué)法開設(shè)綜合測試課程,讓學(xué)生掌握有關(guān)自動化測試工具的使用并培養(yǎng)學(xué)生團(tuán)隊合作意識。
第三學(xué)年開設(shè)一門完全是以實訓(xùn)為主的課程,讓學(xué)生能夠掌握不同環(huán)境平臺下的測試方法,并根據(jù)對需求規(guī)格說明書的分析,自動生成測試用例,這將是軟件測試的一種趨勢。
第四學(xué)年讓學(xué)生到跟我院合作的企業(yè)去實習(xí),真正掌握軟件測試的實踐技能,以適應(yīng)市場發(fā)展的真正需求。
2.2 教學(xué)方式采用“拋錨式”教學(xué)法
傳統(tǒng)的做法是介紹軟件測試的理論,以簡單的案例進(jìn)行說明。由于內(nèi)容本身抽象,缺乏足夠的實踐,使得學(xué)生感覺枯燥乏味,且不會活學(xué)活用。為了激發(fā)學(xué)生的學(xué)習(xí)興趣,并根據(jù)學(xué)習(xí)內(nèi)容的變化,我們采用了案例拋錨和項目拋錨兩種教學(xué)方法。
第一,采用案例拋錨教學(xué)。這種教學(xué)方法主要應(yīng)用在教學(xué)計劃的第一階段,即軟件測試概論和綜合測試階段。選擇好的案例對幫助學(xué)生理解軟件測試技術(shù)起到至關(guān)重要的作用。我們根據(jù)案例的難易程度,將案例和軟件測試?yán)碚撆c技術(shù)相結(jié)合,把案例分成基礎(chǔ)案例和綜合案例兩種[3]。例如在學(xué)習(xí)《軟件測試概論》中白盒測試、黑盒測試技術(shù)時,應(yīng)盡量選擇簡單的基礎(chǔ)案例,讓學(xué)生把更多的注意力集中在測試的方法上而不是案例本身上,這樣更有利于學(xué)生理解測試技術(shù)的原理。在學(xué)習(xí)綜合測試的時候,我們提供給學(xué)生的是一些比較復(fù)雜的綜合案例,對學(xué)生進(jìn)行分組,以小組為單位來解決較為復(fù)雜的測試問題。通過團(tuán)隊進(jìn)行的整個測試過程既可以讓學(xué)生感受到一個綜合案例測試的工作流程、實施細(xì)節(jié)及注意事項,又可以促進(jìn)學(xué)生溝通與協(xié)作的能力。在綜合測試的整個過程中,還需要應(yīng)用到各種自動化測試工具, 包括WinRunner功能測試工具、LoadRunner性能測試工具、TestDirector測試管理工具等,為學(xué)生畢業(yè)后從事真正的測試工作打下堅實的基礎(chǔ)。
第二,采用項目拋錨教學(xué)。這種教學(xué)方法主要應(yīng)用在教學(xué)計劃的第二階段,即在軟件測試實訓(xùn)過程中使用。在學(xué)生掌握了軟件測試的相關(guān)測試技術(shù)之后,需要將所學(xué)的知識靈活運用到實際環(huán)境下的軟件測試中。因此,該階段的學(xué)習(xí)內(nèi)容主要以對項目的測試為主,選擇的項目必須有不同的軟件和硬件要求以及特定的配置環(huán)境,這可以讓學(xué)生提前適應(yīng)實際測試工作的流程,進(jìn)一步提升學(xué)生對所學(xué)的軟件測試?yán)碚撝R和測試技術(shù)綜合應(yīng)用的能力。針對每個具體的項目,按照軟件測試的三個主要階段(測試計劃、測試用例獲取、測試有效性度量),充分將軟件測試?yán)碚撆c實踐結(jié)合起來,通過對不同環(huán)境下項目的測試,找出軟件測試技術(shù)各階段之間的相互聯(lián)系,從而達(dá)到軟件測試的教學(xué)目的和培養(yǎng)目標(biāo)。
2.3 校企合作
為避免學(xué)校培養(yǎng)出來的學(xué)生與社會需求脫節(jié),應(yīng)使學(xué)生盡可能早地了解市場的行情,以掌握市場所需要的各項測試技能。因此,非常有必要讓學(xué)校與企業(yè)進(jìn)行合作,合作的方式可以有以下幾種。
第一,請企業(yè)的專家給教師、學(xué)生進(jìn)行技術(shù)講座或市場信息的宣傳,讓教師和學(xué)生充分了解市場的需求以及學(xué)生需要掌握哪些技能[3],使得老師的教和學(xué)生的學(xué)真正做到有的放矢。
第二,與企業(yè)建立學(xué)生實習(xí)合作。爭取有一定數(shù)量的學(xué)生參與企業(yè)軟件測試實習(xí)并獲得就業(yè)指導(dǎo)。
第三,與企業(yè)合作進(jìn)行外包測試。
2.4 課程考核方式
考核分?jǐn)?shù)由兩部分組成:平時成績占50%,期末考核成績占50%。而期末考核由試卷命題閉卷考核的方式改為獨立完成一個實際軟件項目的綜合測試,以此更能考核學(xué)生對軟件測試的綜合能力。
3 結(jié)束語
本文對“軟件測試”課程的教學(xué)模式改革進(jìn)行了探索,通過調(diào)整教學(xué)計劃并采用“拋錨式”教學(xué)法,取得了較好的教學(xué)效果。新的教學(xué)模式以培養(yǎng)多層次、應(yīng)用型、復(fù)合型軟件測試人才為目標(biāo),全面加強素質(zhì)教育,重點培養(yǎng)學(xué)生的團(tuán)隊精神、創(chuàng)新能力和實踐能力,能夠真正實現(xiàn)人才培養(yǎng)與市場需求的一致。
參考文獻(xiàn):
[1] 周元哲.“軟件測試”教學(xué)改革的探索和實踐[J].計算機教育,2008.22:16-17
[2] 聶靜,吳琳.探索軟件測試課程教學(xué)改革方案[J].中國校外教育(理論),2011.z2.
[3] 李紅霞,陳再新.基于市場需求的軟件測試專業(yè)的教學(xué)改革[J].科技信息,2010.5:613
[4] 趙楊群.精品課程優(yōu)質(zhì)教學(xué)資源建設(shè)研究[J].教育與職業(yè),2010.24:130-132