時間:2023-03-08 14:51:29
序論:好文章的創(chuàng)作是一個不斷探索和完善的過程,我們?yōu)槟扑]十篇軟件測試實訓(xùn)總結(jié)范例,希望它們能助您一臂之力,提升您的閱讀品質(zhì),帶來更深刻的閱讀感受。
中圖分類號:G420 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2012)30-7258-02
近幾年來,計算機(jī)信息技術(shù)發(fā)展迅速,我國的IT行業(yè)開始向國際化、規(guī)范化邁進(jìn)。以往只重視軟件開發(fā)而忽視軟件測試的情況正在改變,軟件測試行業(yè)開始迅速發(fā)展。
國外小一些的軟件企業(yè),軟件開發(fā)與測試人員之比基本上是1:1,微軟公司更是達(dá)到了1:2,軟測試人員規(guī)模遠(yuǎn)超過開發(fā)人員的規(guī)模[1]。盡管一些國內(nèi)大型軟件企業(yè)開始重視軟件人才的合理配置,但有的企業(yè)其比例也就只有10:1。軟件測試工程師鬧人才荒[2],中高級測試員緊缺的現(xiàn)象已十分明顯。
據(jù)統(tǒng)計,國內(nèi)軟件測試工程師的缺口為20萬人左右,這一點從51JOB的招聘信息中可見一斑。近兩年,軟件測試工程師的需求和待遇都達(dá)到了歷史新高。
然而與當(dāng)前軟件測試行業(yè)如火如荼的現(xiàn)狀極不協(xié)調(diào)的是當(dāng)前軟件測試培訓(xùn)領(lǐng)域的現(xiàn)狀[3],從事軟件測試工程師培訓(xùn)的專業(yè)機(jī)構(gòu)寥寥無幾,而且價格昂貴。大學(xué)里幾乎沒有軟件測試專業(yè),部分院校開設(shè)《軟件測試》這門課程面臨三方面的問題,一是軟件測試教材知識片面。二是內(nèi)容枯燥,學(xué)生不感興趣。三是教師教學(xué)經(jīng)驗嚴(yán)重不足。面對軟件測試人才的社會需求緊迫性,人才培養(yǎng)單位應(yīng)該擴(kuò)大軟件測試人才培養(yǎng)規(guī)模,總結(jié)軟件測試知識點,改革教學(xué)方法,培養(yǎng)學(xué)生興趣,提高培養(yǎng)質(zhì)量。
1 軟件測試課程教學(xué)方法探討
針對以上問題,在教學(xué)中應(yīng)采取以下解決方法:
1.1 融合軟件測試知識點,分階段教學(xué)
目前,國內(nèi)的軟件測試教材只涉及了部分基本理論知識,不夠全面,介紹的軟件測試工具也相對落后一些。針對這種情況,任課教師首先要融合多本軟件測試書籍內(nèi)容,總結(jié)出軟件測試所涵蓋的知識點,更新軟件測試發(fā)展情況。
其次,根據(jù)學(xué)生學(xué)習(xí)過程分階段教學(xué)[4]。第一階段是基礎(chǔ)階段,讓學(xué)生掌握軟件測試基礎(chǔ)理論知識和軟件測試核心技術(shù),以及常用測試工具的操作。第二階段是項目綜合實訓(xùn)提高階段,在掌握基礎(chǔ)理論的前提下,加強(qiáng)綜合測試技術(shù)在項目實訓(xùn)中的運用,針對不同的開發(fā)階段,撰寫各開發(fā)階段相應(yīng)的文檔,并制定相應(yīng)的測試計劃,設(shè)計典型測試用例,使用不同的軟件測試技術(shù)和測試工具,完成不同的測試目標(biāo)。最后是培養(yǎng)學(xué)生自主學(xué)習(xí)階段,介紹軟件測試最新的技術(shù)與發(fā)展方向,引導(dǎo)學(xué)生對基本技術(shù)向縱深方向思考。同時向?qū)W生提供軟件測試方面重要的會議、雜志、論壇、網(wǎng)站,引導(dǎo)學(xué)生課下查閱學(xué)習(xí)資料,鼓勵學(xué)生自我學(xué)習(xí)。
1.2 改革教學(xué)方法,采用案例驅(qū)動教學(xué)
大部分高職院校學(xué)生基礎(chǔ)差、學(xué)習(xí)積極性主動性不強(qiáng)、自制力不高。在課堂教學(xué)活動中,如果繼續(xù)采用傳統(tǒng)教學(xué)方法,很難激發(fā)學(xué)生學(xué)習(xí)興趣。應(yīng)該采用案例教學(xué)方法[5],將《手機(jī)信息管理系統(tǒng)》、《學(xué)生圖書借閱系統(tǒng)》、《學(xué)生信息管理系統(tǒng)》等案例資料發(fā)給學(xué)生,學(xué)生拿到案例后,在教師的引導(dǎo)下,課下先要進(jìn)行消化,然后查閱各種他認(rèn)為必要的理論知識,理解知識并思考提出解決問題的方法。課上教師答復(fù)學(xué)生的問題,并引導(dǎo)學(xué)生更深層次的思考。通過這種方法充分調(diào)動學(xué)生的學(xué)習(xí)積極性,提高其學(xué)習(xí)興趣,使學(xué)生既學(xué)會理論知識分析又學(xué)會用理論知識解決實際工程的問題。
1.3 采用軟件測試項目綜合實訓(xùn)的實驗教學(xué)模式
開設(shè)綜合性的軟件測試課程實驗,按軟件企業(yè)項目管理和開發(fā)模式,進(jìn)行軟件測試項目實訓(xùn)[6],培養(yǎng)學(xué)生的創(chuàng)新意識與實踐能力。將班內(nèi)學(xué)生分成若干個測試小組,每小組成員不超過7人,每組分配不同的軟件項目,如工資管理系統(tǒng)、圖書管理系統(tǒng)、學(xué)生信息管理系統(tǒng)、酒店預(yù)訂系統(tǒng)等。小組成員模擬與體驗軟件測試工程全過程工作職位和角色,使學(xué)生全過程適應(yīng)工作職位的要求。
各項目小組在測試項目過程中,針對不同的開發(fā)階段,撰寫各開發(fā)階段相應(yīng)的文檔,并制定相應(yīng)的測試計劃,設(shè)計典型測試用例,使用不同的軟件測試技術(shù)和測試工具,完成不同的測試目標(biāo),并進(jìn)行回歸測試,以實現(xiàn)軟件測試各單項專業(yè)知識與技能整合運用的目標(biāo)。在整個測試過程可以體現(xiàn)“學(xué)以致用”的思想,實現(xiàn)理論與實踐相結(jié)合。
各項目小組通過演練項目開發(fā),不僅讓同學(xué)們切身體會到軟件開發(fā)的整個過程,還讓同學(xué)們對軟件開發(fā)中各個角色有充分的了解,同時也更深刻的體會到團(tuán)隊合作的重要性。
1.4 加強(qiáng)校企合作
堅持“走出去,引進(jìn)來”的思想,經(jīng)常邀請企事業(yè)、軟件公司里一線軟件測試人員或軟件測試組長和項目經(jīng)理,來學(xué)校為學(xué)生做定期講座,或定期對教師進(jìn)行培訓(xùn)。也可以利用假期或其他時間,安排教師學(xué)生進(jìn)軟件公司,一起跟進(jìn)項目開發(fā)測試。目前本校已經(jīng)連續(xù)兩年安排教師學(xué)生去齊魯軟件園,進(jìn)公司一起進(jìn)行項目開發(fā)測試工作。效果不錯,參加實訓(xùn)的軟件項目綜合實訓(xùn)的教師軟件開發(fā)測試能力有較大提高,并且學(xué)到一些最新最實用的軟件開發(fā)測試技術(shù)。
1.5 改革課程考核方法
軟件測試這門課程兼具理論與操作,目前大部分院校考核方式與理論考試為主,這種考核方式會促使部分學(xué)生考前抱佛腳,考前死記硬背,降低學(xué)生學(xué)習(xí)的積極性。除了理論考核之外,還應(yīng)注重學(xué)生綜合知識和應(yīng)用能力方面的考核。建議課程考核應(yīng)該包含平時作業(yè)、課堂表現(xiàn)(發(fā)言與討論)、實驗、綜合實訓(xùn)、理論考試這幾部分。采用這種考核方式,促使學(xué)生加強(qiáng)對知識的理解和運用,課堂踴躍發(fā)言,提高學(xué)習(xí)的主動性和創(chuàng)造性,以及動手操作能力。
1.6 適當(dāng)加入一些最新的游戲測試
高職院校學(xué)生大部分的課余時間都是泡在網(wǎng)吧里玩游戲,有很多同學(xué)一有時間就玩手機(jī)游戲。學(xué)生對最新的游戲內(nèi)容比較感興趣,游戲測試也是軟件測試的一方面,教師可以在課堂教學(xué)中加入一些游戲測試內(nèi)容,提高學(xué)生的學(xué)習(xí)興趣。
1.7 采取雙證教育
實行“雙證教育”模式[7],將學(xué)歷教育與技能學(xué)習(xí)無縫對接,學(xué)生畢業(yè)后不僅能獲得國家勞動部高級職業(yè)技能認(rèn)證證書、擁有扎實的操作技能,同時還將獲得國家承認(rèn)大學(xué)學(xué)歷證書。雙證教育使學(xué)生專業(yè)能力更強(qiáng)、職業(yè)素養(yǎng)更高、綜合素質(zhì)更好、更符合企業(yè)用人標(biāo)準(zhǔn)。
測試工程師有高級測試工程師、中級測試工程師、初級測試工程師。根據(jù)高職學(xué)生的能力特點,應(yīng)該把高職學(xué)生定位在初級和準(zhǔn)中級測試工程師,具有一定的設(shè)計方案的編寫能力,能利用測試工具完成一定的測試任務(wù),并能夠執(zhí)行功能測試。
2 總結(jié)
通過在本校近五六年的軟件測試教學(xué)實踐,發(fā)現(xiàn)軟件測試教學(xué)方法需要不斷改進(jìn),融合軟件測試知識點分階段教學(xué),采用案例驅(qū)動和雙證教育模式,加強(qiáng)校企合作和教學(xué)實踐這些措施能較好地提高學(xué)生學(xué)習(xí)興趣和動手操作能力,教學(xué)質(zhì)量也有較大提高。軟件測試人才培養(yǎng)剛剛起步,很多工作處于摸索階段,需要學(xué)校、教師和學(xué)生的共同努力,為社會培養(yǎng)出大批合格的軟件測試人才。
參考文獻(xiàn):
[1]程茂,溫靜,吳玉潔.《軟件測試》課程的教學(xué)研究[J].河北師范大學(xué)學(xué)報/教育科學(xué)版,2010(4):117-120.
[2] .
[3]趙斌.軟件測試技術(shù)經(jīng)典教程[M].北京:科學(xué)出版社,2011(3).
[4]葛漢強(qiáng).高職《軟件測試》課程分層教學(xué)之實踐[J].職業(yè)教育研究,2011(8):105-107.
軟件測試是伴隨IT產(chǎn)業(yè)的發(fā)展而出現(xiàn)的新興工作崗位。不論目前還是將來,人才市場對軟件測試人才都有很大的需求量。《軟件測試》課程是高職計算機(jī)軟件專業(yè)的一門新課程。這門課程的實踐性很強(qiáng),如果沒有實驗、實訓(xùn)環(huán)節(jié)的支持,用傳統(tǒng)的灌輸式教學(xué)方式枯燥地講解測試?yán)碚摵蜏y試方法,會使學(xué)生產(chǎn)生抵觸和厭學(xué)情緒。《軟件測試》課程使用的工具和測試的對象都是看不見、摸不著的軟件產(chǎn)品,實驗與實訓(xùn)課程的組織和實施有較大的難度,容易造成實驗的隨意性。我院在開設(shè)這門課程之初,按照學(xué)院確立的“針對市場設(shè)專業(yè)、針對企業(yè)定課程、針對崗位練技能”的辦學(xué)思路,在辦學(xué)模式、課程內(nèi)容和教學(xué)方法上做出了一系列的改革,取得了良好的教學(xué)效果。
教學(xué)改革的措施
(一)與軟件公司合作辦學(xué)
經(jīng)過調(diào)研發(fā)現(xiàn),IBM軟件學(xué)院推出的高校軟件人才教育伙伴計劃,旨在利用IBM公司在軟件技術(shù)和開發(fā)工具上的優(yōu)勢與中國高校合作,培養(yǎng)軟件人才。該計劃中的《軟件測試》課程是與高職院校合作,培養(yǎng)軟件測試人才。經(jīng)過溝通和協(xié)商,我們決定同IBM軟件學(xué)院合作。我院通過選拔的方式對軟件專業(yè)的學(xué)生組建軟件測試班,IBM軟件學(xué)院為我院提供師資培訓(xùn)、測試工具軟件、課件和技術(shù)支持。通過這種合作,我們可以利用IBM公司在業(yè)界的領(lǐng)先地位,引進(jìn)最先進(jìn)、最實用的測試?yán)碚摵头椒ǎ褂米盍餍械臏y試工具軟件。軟件測試班的學(xué)生除了系統(tǒng)地學(xué)習(xí)學(xué)校規(guī)定的公共基礎(chǔ)課以及專業(yè)基礎(chǔ)課和專業(yè)課,掌握軟件開發(fā)的技能以外,還要學(xué)習(xí)軟件測試?yán)碚摵蛯嵺`課程,掌握軟件測試的崗位技能。學(xué)習(xí)結(jié)束之后參加IBM公司測試工程師的認(rèn)證考試。這樣,不僅拓寬了學(xué)生的專業(yè)口徑,還可以使學(xué)生在畢業(yè)的同時獲得學(xué)校的畢業(yè)證書和IBM公司頒發(fā)的測試工程師證書。
(二)改革教學(xué)內(nèi)容,強(qiáng)化實踐教學(xué)
在課程內(nèi)容的安排上,我們擺脫了傳統(tǒng)的重理論,輕實踐的做法,將《軟件測試》課程劃分為四個模塊分別組織教學(xué)。《測試?yán)碚摗氛n程是理論模塊,占64個學(xué)時,《功能測試》、《性能測試》和《測試管理》等課程是實踐模塊,各占32個學(xué)時。
其中,《測試?yán)碚摗氛n程系統(tǒng)地講解軟件測試的理論和方法。為了驗證理論,加深對理論的理解和掌握,安排了需求分析和軟件設(shè)計的UML建模、白盒測試、黑盒測試、系統(tǒng)集成測試等五個實驗。理論課以一個軟件項目的開發(fā)和測試實踐為主線進(jìn)行講解,實驗課選取了開發(fā)和測試該軟件項目中的關(guān)鍵實踐部分展開,幫助學(xué)生從軟件開發(fā)和測試的實踐中理解和掌握理論。這種安排使所有的測試?yán)碚摵头椒ǘ寄苷业綄嵺`的依據(jù)。理論指導(dǎo)實驗,實驗驗證理論和方法,實驗與理論在同一個軟件項目中融為一體。《功能測試》、《性能測試》和《測試管理》等課程分別要求掌握IBM公司的功能測試軟件(Rational Functional Tester)、性能測試軟件(Rational Performance Tester)和測試管理軟件(TestManager)三個軟件測試工具的使用方法。這三種測試工具對應(yīng)軟件測試工作的三種重要崗位。通過學(xué)習(xí)和實訓(xùn),學(xué)生將掌握如何錄制、回放腳本,如何執(zhí)行自動化測試和回歸測試,如何設(shè)置和使用驗證點,如何使用數(shù)據(jù)驅(qū)動,如何分析性能測試報告,如何設(shè)計測試用例以及如何管理測試過程等基本的軟件測試崗位技能。
經(jīng)過這種劃分,理論模塊集中講解理論知識,為實踐模塊提供理論基礎(chǔ)和依據(jù);實踐模塊培養(yǎng)學(xué)生的崗位技能,是教學(xué)的主要目的;實踐模塊的課時超過了理論模塊的課時,反映了“實踐為重”的思路。
(三)建立軟件測試實訓(xùn)基地,實驗和實訓(xùn)課采用項目教學(xué)法
為了確保實驗課和實踐模塊的教學(xué)效果,在IBM公司的幫助下,我院建立了軟件測試實訓(xùn)基地。IBM公司為我院提供了UML建模軟件(Rational Rose)、功能測試軟件(Rational Functional Tester)、性能測試軟件(Rational Performance Tester)、測試軟件(Rational Robot)和測試管理軟件(TestManager)等。我院安排了專用機(jī)房,所有計算機(jī)的內(nèi)存升級到1G以上。實驗課的教學(xué)和實踐模塊的教學(xué)實訓(xùn)全部安排在專用機(jī)房進(jìn)行。除了建立完善的軟、硬件環(huán)境之外,我院還組織專業(yè)教師按照項目教學(xué)法的要求編寫了實驗、實訓(xùn)指導(dǎo)教材。
為了確保項目教學(xué)法的效果,我們開發(fā)出一個簡化的學(xué)生選課管理系統(tǒng)。作為貫穿理論和實踐教學(xué)的實踐項目,系統(tǒng)采用J2EE(Java 2 Enterprise Edition)標(biāo)準(zhǔn)技術(shù),通過Web訪問。按照軟件工程的要求,我們編寫、整理出開發(fā)過程的所有文檔,包括用例圖、用例描述文本、時序圖、類圖、源代碼以及單元測試和系統(tǒng)測試的測試計劃和測試用例等。由于學(xué)生熟悉選課管理系統(tǒng)的應(yīng)用背景和業(yè)務(wù)流程,以該項目貫穿《軟件測試》課程的教學(xué)過程,不僅指導(dǎo)、促進(jìn)了理論和實踐的教學(xué),而且激發(fā)了學(xué)生的學(xué)習(xí)興趣。轉(zhuǎn)貼于
《測試?yán)碚摗氛n程包括理論教學(xué)和實驗兩部分。理論教學(xué)以選課管理系統(tǒng)的項目開發(fā)和測試實踐為主線。理論教學(xué)開始時安排兩個關(guān)鍵的實驗,指導(dǎo)學(xué)生對選課管理系統(tǒng)做出需求分析和軟件設(shè)計的UML建模。學(xué)生通過這種開發(fā)實踐,可分析、評估在開發(fā)模型過程中的錯誤,可以認(rèn)識到軟件測試在整個軟件開發(fā)中的重要地位,從而避免對測試?yán)碚摦a(chǎn)生枯燥、反感和厭煩情緒。白盒測試、黑盒測試和系統(tǒng)集成測試實驗都是針對選課管理系統(tǒng)或其中的子項目設(shè)計并執(zhí)行測試用例。由于理論和實驗在同一個項目中貫穿始終,理論和實驗的教學(xué)自然得以統(tǒng)一。實踐模塊的教學(xué)目的是培養(yǎng)學(xué)生的崗位操作技能。我們安排選課管理系統(tǒng)作為《功能測試》和《性能測試》課程實訓(xùn)的測試對象,《測試管理》課程也以該軟件系統(tǒng)作為實訓(xùn)項目。采用同一個軟件項目貫穿理論和實踐的教學(xué),有利于學(xué)生靈活地應(yīng)用理論知識分析和解決實際問題。
(四)建立校外實訓(xùn)基地,通過企業(yè)實習(xí)提高學(xué)生的崗位技能
學(xué)生企業(yè)實習(xí)是我院確立的BPMM(Basic Platform and Model Menu,即基礎(chǔ)平臺+模塊化菜單)人才培養(yǎng)模式的重要組成部分。我院學(xué)生完成全部的文化基礎(chǔ)課、專業(yè)課和校內(nèi)技能訓(xùn)練之后,根據(jù)學(xué)生本人自愿,學(xué)校推薦,用人單位審查的原則,經(jīng)三方認(rèn)可后簽訂聯(lián)合培養(yǎng)協(xié)議書,學(xué)生參加企業(yè)的工作實習(xí),按照企業(yè)選定的模塊或企業(yè)修正后的模塊進(jìn)行學(xué)習(xí),培養(yǎng)崗位技能,實現(xiàn)人才的職業(yè)能力與企業(yè)工作崗位的“零距離”。在此期間,學(xué)生還要完成畢業(yè)設(shè)計任務(wù)。
我院先后與常州、蘇州、南京、上海等地的軟件園、中科院軟件所、北京和佳軟件技術(shù)有限公司、南京聯(lián)創(chuàng)科技有限公司、常州富深協(xié)通軟件技術(shù)有限公司、OKI沖電氣(江蘇)軟件技術(shù)有限公司等企事業(yè)單位簽訂了合作辦學(xué)協(xié)議,建立了學(xué)生實習(xí)基地。校外實訓(xùn)基地的建設(shè)為學(xué)生的企業(yè)實習(xí)提供了良好的實習(xí)環(huán)境。到目前為止,我院軟件測試班2004級學(xué)生已經(jīng)全部安排到軟件公司實習(xí)。
教學(xué)改革的效果
充分發(fā)揮了項目教學(xué)法的優(yōu)勢,實現(xiàn)了理論和實踐教學(xué)的統(tǒng)一選擇合適的項目是實施項目教學(xué)法的關(guān)鍵。我們之所以選擇選課管理系統(tǒng)是因為該項目來自學(xué)生的選課實踐且具有較強(qiáng)的啟發(fā)性,有足夠的空間引導(dǎo)學(xué)生自主設(shè)計和運行測試用例,能夠培養(yǎng)學(xué)生分析和解決實際問題的能力。在《測試?yán)碚摗返慕虒W(xué)中,以該項目的開發(fā)和測試過程為主線,一步步引導(dǎo)學(xué)生思索,探究軟件開發(fā)和測試實踐,在實踐中理解并掌握知識。在《實踐模塊》的教學(xué)中,通過使用軟件測試工具對該項目的軟件進(jìn)行測試,使學(xué)生掌握崗位操作技能。理論和實踐教學(xué)在同一個項目上實現(xiàn)了統(tǒng)一,有利于學(xué)生自覺地應(yīng)用理論知識解決實際問題,突出學(xué)生在教學(xué)過程中的主體地位。
強(qiáng)化了實踐教學(xué),調(diào)動了學(xué)生的學(xué)習(xí)積極性在課程改革以后,實驗實訓(xùn)等實踐課的課時超過了理論課的課時,理論課的教學(xué)過程也貫穿了軟件開發(fā)和測試實踐等內(nèi)容,體現(xiàn)了“理論夠用,實踐為重”的原則。學(xué)生在學(xué)習(xí)理論的過程中,經(jīng)歷了軟件系統(tǒng)從無到有的開發(fā)過程,領(lǐng)悟到軟件測試在這個過程中的地位和作用。他們對這門課的理論和方法不再感到枯燥乏味,而是主動地思索、探究和應(yīng)用這些理論和方法。三個實踐模塊的實訓(xùn)使用的是軟件測試行業(yè)應(yīng)用最廣泛的測試工具,熟練使用這些工具可以大大增加就業(yè)的優(yōu)勢。學(xué)生通過認(rèn)證考試之后,將獲得IBM公司頒發(fā)的測試工程師證書。這些措施激發(fā)了學(xué)生的學(xué)習(xí)積極性和求知欲,使學(xué)生由“要我學(xué)”變?yōu)椤拔乙獙W(xué)”。
培養(yǎng)了學(xué)生的崗位技能,實現(xiàn)了就業(yè)崗位“零距離”實行分模塊教學(xué),凸現(xiàn)了培養(yǎng)學(xué)生崗位技能的重要性。理論模塊只講解測試實踐中實用的理論和方法,為實踐模塊提供了理論基礎(chǔ)。而實踐模塊使用軟件測試行業(yè)的主流測試工具,可使學(xué)生熟知的項目軟件執(zhí)行測試并使用測試管理軟件對測試過程進(jìn)行管理。這種實訓(xùn)是對真實軟件測試工作的模擬,有利于學(xué)生全面掌握這三種測試工具的用法,也有利于培養(yǎng)學(xué)生的動手能力和解決實際問題的能力。到企業(yè)實訓(xùn)時,學(xué)生進(jìn)入軟件公司參加生產(chǎn)實習(xí),在軟件開發(fā)隊伍中從事真正的軟件測試工作。經(jīng)過理論教學(xué)、實踐教學(xué)、企業(yè)實習(xí)等一系列過程,可以幫助學(xué)生畢業(yè)之后不需要培訓(xùn)就能直接上崗。
深化了教學(xué)改革,為高職其他專業(yè)和課程的教學(xué)改革提供了經(jīng)驗通過與IBM軟件學(xué)院的合作,我們在短時間內(nèi)跟蹤到了最先進(jìn)的軟件開發(fā)和軟件測試技術(shù),掌握了主流的軟件測試工具的使用方法,并順利地應(yīng)用于教學(xué)實踐中。成功地使用了項目教學(xué)法,在教學(xué)過程中把加強(qiáng)實踐、培養(yǎng)學(xué)生的動手能力及崗位技能放在首位,取得了良好的教學(xué)效果。同學(xué)校周邊的軟件公司合作,建立了眾多的校外實訓(xùn)基地,實現(xiàn)了學(xué)生的職業(yè)能力與企業(yè)工作崗位的“零距離”,密切加強(qiáng)了學(xué)校與企業(yè)的關(guān)系。這些改革措施為軟件專業(yè)其他課程的教學(xué)改革提供了經(jīng)驗,對其他專業(yè)的教學(xué)改革也有一定的借鑒作用。
參考文獻(xiàn)
中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2013)36-8332-02
1 背景
工信部近日印發(fā)《軟件和信息技術(shù)服務(wù)業(yè)“十二五”發(fā)展規(guī)劃》,規(guī)劃明確了“十二五”的發(fā)展思路和發(fā)展目標(biāo),確定了10項發(fā)展重點和8項重大工程。而據(jù)業(yè)界預(yù)計,到2015年,我國軟件行業(yè)收入將突破4萬億元,年均增長25%以上,出口突破600億美元。
2 項目實施的必要性和可行性分析
外包人才的缺口從結(jié)構(gòu)層次來看,不是局部的人才短缺,而是全方位的供應(yīng)不足。正規(guī)院校培養(yǎng)出來的學(xué)生能掌握基本的軟件開發(fā)技術(shù),但缺乏軟件開發(fā)工作經(jīng)驗、項目交流和團(tuán)隊合作鍛煉,需要經(jīng)過相當(dāng)?shù)捻椖恐R與技能培訓(xùn)。超過60%的高校開設(shè)了計算機(jī)專業(yè)。但是,適應(yīng)外包企業(yè)需要的大學(xué)畢業(yè)生很少,大學(xué)畢業(yè)生常常需要企業(yè)花大力氣培養(yǎng),而企業(yè)希望招來就用,不愿自己培養(yǎng)人才增加成本。本軟件開發(fā)、測試實訓(xùn)室應(yīng)此目的設(shè)置,目標(biāo)培養(yǎng)中低端軟件人才。
3 建設(shè)實訓(xùn)中心項目的可行性
職業(yè)教育與普通教育相比有四個特點:一是教育性質(zhì)和目標(biāo)不同。重在對準(zhǔn)備就業(yè)的學(xué)生傳授職業(yè)知識,培養(yǎng)職業(yè)技能,陶冶職業(yè)道德,提高職業(yè)能力和勞動素質(zhì)教育。二是教育內(nèi)容與要求不同。以提高學(xué)生的專業(yè)知識與技術(shù)能力為主,重在讓學(xué)生懂得做什么、怎么做,使學(xué)生學(xué)有專長,畢業(yè)后投身于社會經(jīng)濟(jì)建設(shè)的實踐活動。目前盡管有部分學(xué)生升學(xué),但就總體看,其教育內(nèi)容與要求未變。三是課程模式與結(jié)構(gòu)不同。其課程模式注重實踐教學(xué)環(huán)節(jié),課程結(jié)構(gòu)注重強(qiáng)化學(xué)生技能的應(yīng)用性、針對性和職業(yè)性。四是學(xué)校功能與任務(wù)不同。要求實施職業(yè)教育的學(xué)校必須具有實訓(xùn)實操的條件,否則職業(yè)教育很難獲得應(yīng)有的效果。
4 軟件開發(fā)和測試實訓(xùn)室建設(shè)目標(biāo)
軟件開發(fā)技術(shù)實訓(xùn)可以包含四類實訓(xùn)課程:
軟件開發(fā)實訓(xùn):包括完整的生命周期的軟件開發(fā)過程
軟件階段實訓(xùn):選取軟件生命周期其中某個階段獨立工作(例如編碼工作)的實訓(xùn);
軟件測試實訓(xùn):包括軟件開發(fā)過程隨行測試和獨立的軟件測試技術(shù)實訓(xùn);
軟件項目管理:這是關(guān)于軟件技術(shù)高級培訓(xùn)。
實訓(xùn)裝備:
硬件設(shè)備:5組服務(wù)器;50臺工位電腦;網(wǎng)絡(luò)和交換設(shè)備;5組光盤刻錄、掃描儀和打印機(jī)等輔助設(shè)備;1套投影和無線擴(kuò)音設(shè)備;互聯(lián)網(wǎng)接入;軟件平臺:Windows 和Linux服務(wù)器平臺,mySQl、SQL Server數(shù)據(jù)庫系統(tǒng)、J2EE和.net開發(fā)平臺和課程相關(guān)的軟件工具;LoadRunner 、WinRunner等常用測試工具;項目管理工具M(jìn)S Project;辦公系統(tǒng) Ms Office 管理軟件:實訓(xùn)管理軟件
實訓(xùn)方法:采用模擬企業(yè)運營方式將教練和學(xué)員混編成項目組方式完成軟件開發(fā)和測試實訓(xùn);打破學(xué)科界線和知識體系,以項目目標(biāo)驅(qū)動安排教學(xué)內(nèi)容,編制教材和教學(xué)課件,教學(xué)內(nèi)容來源于合作企業(yè)以往的實際項目,由企業(yè)和學(xué)校共同對原項目分解、重組、封裝形成教學(xué)課件,以實際項目文檔為基礎(chǔ)編制實訓(xùn)文檔。
實訓(xùn)課程:本實訓(xùn)室分設(shè)以下類型實訓(xùn)課程
素質(zhì)教育類課程:敬業(yè)精神、團(tuán)隊合作
企業(yè)標(biāo)準(zhǔn)類課程:ISO9000和CMM認(rèn)證,企業(yè)化管理制度
項目管理類課程:項目管理方法和項目管理系統(tǒng)使用;
軟件開發(fā)、測試類課程:包括軟件生命周期理論、文檔編制和理解、軟件工具、編碼和測試方法、系統(tǒng)部署、和版本管理等;
實訓(xùn)過程:
先期培訓(xùn):素質(zhì)類、企業(yè)標(biāo)準(zhǔn)、項目管理、背景知識等
基礎(chǔ)培訓(xùn):由教師教授課題涉及的基本方法、工具和規(guī)范;
開題培訓(xùn):由專業(yè)項目管理人員做課題報告,解釋項目要點;
5 實訓(xùn)課題:軟件開發(fā)實訓(xùn)
本實訓(xùn)室培訓(xùn)軟件開發(fā)人員和軟件測試人員,實訓(xùn)方法可以將學(xué)員分組,在同一項目中分別承擔(dān)軟件開發(fā)和軟件測試工作,也可以獨立執(zhí)行軟件開發(fā)和軟件測試實訓(xùn)課程
軟件開發(fā)實訓(xùn)包括一下實訓(xùn)模塊:
1)背景和基礎(chǔ)知識:包括軟件開發(fā)規(guī)范,軟件企業(yè)ISO9000和CMM認(rèn)證,學(xué)校軟件工具等;
2)搭建開發(fā)環(huán)境:能夠配置自己的軟件開發(fā)環(huán)境,包括安裝操作系統(tǒng)和開發(fā)工具包;能夠配置自己與別人的協(xié)同開發(fā)環(huán)境,包括網(wǎng)絡(luò)配置,文件共享,安裝遠(yuǎn)程打印機(jī)等;
編寫代碼:使學(xué)員能夠讀懂詳細(xì)設(shè)計,掌握開發(fā)工具的配置與使用,掌握開發(fā)語言的基本知識和數(shù)據(jù)結(jié)構(gòu),了解簡單的算法,會設(shè)計簡單的界面,并應(yīng)用常見控件,具有數(shù)據(jù)庫編程的初步能力;
圖1
3)測試:使學(xué)員除了掌握測試的理論知識外,還應(yīng)該學(xué)會編寫單元測試案例,編寫單元測試文檔,在執(zhí)行單元測試的時候,記錄測試結(jié)果,并分析錯誤原因,以利于下一步的調(diào)試。
學(xué)員應(yīng)掌握以下具體技術(shù)、平臺和工具,Windows系列和Linux操作系統(tǒng);Visual Studio工具;Borland 公司工具,SQLServer,Oracle ;Apache+tomcat,Web Logic 等;TCP/IP,創(chuàng)建網(wǎng)絡(luò)連接,網(wǎng)絡(luò)打印;基于UML的詳細(xì)設(shè)計文檔,面向?qū)ο蠓治龊驮O(shè)計;單元測試,黑盒測試,白盒測試,設(shè)計測試案例等;執(zhí)行測試并調(diào)試錯誤,系統(tǒng)和配置技術(shù);
軟件測試實訓(xùn)包括以下實訓(xùn)模塊:
計算機(jī)及常見操作系統(tǒng)、軟件設(shè)計語言基礎(chǔ)、 數(shù)據(jù)庫基礎(chǔ)、軟件工程基礎(chǔ)、軟件測試基礎(chǔ)、自動化測試:包括OSI模型、TCP/IP模型及常見網(wǎng)絡(luò)協(xié)議,常用軟件平臺、工具使用LoadRunner 、WinRunner測試工具使用,各種測試規(guī)范
6 總結(jié)
在當(dāng)今社會信息化的進(jìn)程中,綜合應(yīng)用各種新技術(shù)的系統(tǒng)軟件功不可沒的,軟件開發(fā)和測試使全社會的信息管理、信息檢索、信息分析達(dá)到了新的水平,因此,學(xué)習(xí)軟件開發(fā)、測試的相關(guān)基礎(chǔ)知識,對于信息時代的每一個成員都是十分必要的。
參考文獻(xiàn):
[1] 楊文宏,李心輝.面向?qū)ο蟮能浖y試[M].北京:中信出版社,2002.
中圖分類號:TP393 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2014)03-0670-03
1 概述
軟件測試技術(shù)是高職軟件技術(shù)專業(yè)的一門必修的專業(yè)核心課程。該課程是針對軟件測試員/程序員崗位的任職要求所設(shè)置的具有綜合性質(zhì)的課程,主要任務(wù)是通過對軟件測試基礎(chǔ)理論、技術(shù)方法、流程管理和使用自動化工具實施項目測試的學(xué)習(xí),使學(xué)生了解完整的軟件測試的工作過程,能對完整的項目進(jìn)行測試的實施工作,從而實現(xiàn)與測試技能要求的無縫對接。但是筆者通過幾年的教學(xué)發(fā)現(xiàn),很多同學(xué)學(xué)完這門課程后只是了解了軟件測試方面的相關(guān)知識,根本就不能夠綜合運用這些知識進(jìn)行實際項目的測試工作。筆者通過分析總結(jié)認(rèn)為最主要的原因是我們教學(xué)的過程中沒有采用工程的思想,使得學(xué)生不能有效地把這些知識碎片整合到一起,當(dāng)然就不能談不上實際應(yīng)用能力。
CDIO模式作為近年來國際工程教育改革的最新成果,它是“做中學(xué)”和“基于項目教育和學(xué)習(xí)”的集中概括和抽象表達(dá),它以工程項目從研發(fā)到運行的生命周期為載體,讓學(xué)生以主動的、實踐的、課程之間有機(jī)聯(lián)系的方式學(xué)習(xí)工程[1-2]。無錫商業(yè)職業(yè)技術(shù)學(xué)院軟件技術(shù)專業(yè)結(jié)合自身的實際情況,對基于CDIO模式的高職軟件技術(shù)人才培養(yǎng)方案進(jìn)行了初步探索。軟件測試技術(shù)作為軟件技術(shù)專業(yè)的專業(yè)核心課程之一,在CDIO工程教育模式的指導(dǎo)下進(jìn)行一系列的教學(xué)實踐應(yīng)用,取得了很好的效果。
2 傳統(tǒng)教學(xué)模式存在的問題
現(xiàn)代IT企業(yè)需要具有較高專業(yè)技能、職業(yè)素質(zhì)和團(tuán)隊協(xié)作能力的實用復(fù)合型人才[3],但
高職院校軟件專業(yè)培養(yǎng)出來的人才普遍只是掌握了相關(guān)的知識,而不能有效的利用這些知識進(jìn)行實踐應(yīng)用。為了解決這個問題,各個院校的軟件技術(shù)專業(yè)都一直在嘗試探索更好的人才培養(yǎng)方案[4],主要的專業(yè)課程也在進(jìn)行各種各樣的教學(xué)改革[5]。因此,幾年來,“實踐教學(xué)”、“案例教學(xué)”、“情景教學(xué)法”等等教學(xué)模式進(jìn)行了進(jìn)一步的應(yīng)用,但是在這些傳統(tǒng)的教學(xué)模式下,還是存在一些問題。軟件測試技術(shù)課程也是如此,存在的問題主要有以下幾個方面:
(1) 實踐教學(xué)死板化。各個院校的軟件技術(shù)專業(yè)在人才培養(yǎng)方案的制定中,都明確規(guī)定了課程的實踐教學(xué)環(huán)節(jié),體現(xiàn)了對實踐教學(xué)的重視。以作者所在專業(yè)為例,規(guī)定專業(yè)課程的實踐課時比例至少達(dá)到50%。但是在實際教學(xué)中,實踐教學(xué)一般都是教師通過案例先講解演示,學(xué)生再模仿訓(xùn)練,總體還是采用填鴨式的教學(xué)方式,因此造成學(xué)生一開始還表現(xiàn)強(qiáng)烈的新奇感,對課程學(xué)習(xí)充滿著動力和信心,但是由于無法真正調(diào)動學(xué)生的主觀能動性,隨著教學(xué)的推進(jìn),學(xué)生逐漸失去學(xué)習(xí)興趣,后面的實踐訓(xùn)練只能是敷衍了事。并且,由于課堂教學(xué)課時的限制,實訓(xùn)機(jī)制死板、不健全,使得學(xué)生的真正動手機(jī)會還是很少。
(2) 項目教學(xué)虛擬化。教學(xué)過程中,案例教學(xué)法得到了普遍的應(yīng)用。以軟件測試技術(shù)課程為例,包括一些具有軟件測試精品課程的院校,無非都是采用了比如三角形測試、NextDate案例測試、飛機(jī)票訂票系統(tǒng)等作為教學(xué)案例,雖然使學(xué)生對相關(guān)知識和技術(shù)有了更深入地認(rèn)識,但是這些項目大多都是虛擬項目,這些虛擬項目主要存在兩方面的弊端:一是功能過于單一,內(nèi)容陳舊,只能起到說明相關(guān)測試技術(shù)的作用,卻與實際應(yīng)用脫節(jié),缺乏實戰(zhàn)性,使得學(xué)生在真正面對一個綜合項目的時候卻感覺無從下手。二是由于每個項目功能單一,不能把一個完整的項目貫穿于整個課程的教學(xué),通過這些虛擬項目,不利于培養(yǎng)學(xué)生形成從測試計劃、測試執(zhí)行、測試用例設(shè)計到測試報告的整個測試過程的工程思想,也不利于發(fā)掘?qū)W生自身的潛能。
(3) 知識內(nèi)容缺乏系統(tǒng)化。教學(xué)過程中,授課教師只關(guān)注學(xué)生知識點的掌握,而忽略了知
識點之間的系統(tǒng)聯(lián)系和實際應(yīng)用,使得學(xué)生一知半解,不知道學(xué)習(xí)這些知識點的用處,也不知道如何把所學(xué)內(nèi)容運用到實際項目當(dāng)中。在這種情況下,學(xué)生的工程管理、項目規(guī)范、項目文檔編制、團(tuán)隊協(xié)作和溝通能力沒有得到有效提升,因此難以滿足企業(yè)對綜合素質(zhì)人才的要求。
3 CDIO模式在軟件測試技術(shù)課程中的應(yīng)用
在CDIO模式指導(dǎo)下,我院軟件技術(shù)專業(yè)課程體系圍繞軟件產(chǎn)品開發(fā)為主線,以每位同學(xué)都要參與幾個項目開發(fā)為目的進(jìn)行課程安排。在整個課程體系中,將CDIO項目按規(guī)模和范圍劃分為三級,一級為包含軟件專業(yè)主要核心課程和能力要求的項目。我們選取了與企業(yè)合作開發(fā)的實際案例:洗衣管理系統(tǒng)和校外實訓(xùn)系統(tǒng);二級為包含一組相關(guān)核心課程、能力要求的項目。主要是階段實訓(xùn)和綜合項目實訓(xùn)項目;三級為單門課程內(nèi)為增強(qiáng)該門課程能力與理解而設(shè)的項目,其中三級項目的設(shè)立與否及形式由各門課程大綱根據(jù)需要確定。
在軟件測試技術(shù)課程中,我們把CDIO模式貫穿于教學(xué)過程的每個環(huán)節(jié),從如下幾個方面對課程進(jìn)行了教學(xué)改革和實踐應(yīng)用:
3.1 教學(xué)目標(biāo)和內(nèi)容
在CDIO模式下,軟件測試技術(shù)的教學(xué)目標(biāo)為“掌握軟件測試的理論知識,掌握主流的測試技術(shù)和方法;具備測試計劃的制定能力、測試用例的設(shè)計能力、測試代碼及文檔的編寫能力;具有良好的分析問題和解決問題的能力以及溝通和團(tuán)隊協(xié)作能力;具備自主學(xué)習(xí)和可持續(xù)發(fā)展能力”。
在課程內(nèi)容方面,我們基于CDIO的構(gòu)思、設(shè)計、實現(xiàn)、運作的思想,貫穿“做中學(xué)”和“基于項目教育和學(xué)習(xí)”的方式,以工程項目從研發(fā)到運行的生命周期為載體,把軟件測試技術(shù)課程的內(nèi)容分成五個項目任務(wù)。并且在課程中,選取校外實訓(xùn)系統(tǒng)和洗衣管理系統(tǒng)的測試作為貫穿于整個課程的任務(wù)。在這兩個項目的引領(lǐng)下,實施課程教學(xué)。課程的五個項目任務(wù)如下表所示:
3.2 教學(xué)組織
在CDIO模式下,為了使學(xué)生由接受者轉(zhuǎn)變?yōu)橹鲃訁⑴c者和積極探索者,在發(fā)揮教師主導(dǎo)作用的同時,充分發(fā)揮學(xué)生的主體作用。在教學(xué)組織方面,我們采用行動導(dǎo)向的教學(xué)模式,以小組模式為基礎(chǔ)組織教學(xué)。在具體教學(xué)過程中,我們對學(xué)生進(jìn)行分組,讓每個學(xué)生充當(dāng)企業(yè)中的真實角色,以一個職業(yè)人的身份,在真實的工作環(huán)境中,模擬軟件企業(yè)工作模式,每位同學(xué)承擔(dān)工作崗位相應(yīng)的責(zé)任和任務(wù)[6]。課堂教學(xué)也不再采用“教師演示講解、學(xué)生模仿練習(xí)”的模式,每一次課堂教學(xué),教師先演示項目,提出任務(wù)需求,進(jìn)行必要的知識講解,然后教師為學(xué)生發(fā)放項目任務(wù)書,再由組長帶領(lǐng)小組成員分析項目任務(wù),探討實施方案,撰寫任務(wù)計劃,完成項目任務(wù),并提交相關(guān)文檔。在整個任務(wù)完成過程中,授課教師不斷和學(xué)生交流,對于學(xué)生在完全任務(wù)過程中存在的問題,指導(dǎo)學(xué)生解決。這樣,不僅能夠調(diào)用學(xué)生的主觀能動性,引導(dǎo)學(xué)生思考問題,解決問題,并在解決問題的過程中研究新的實現(xiàn)方法,而且突破了傳統(tǒng)的以學(xué)校和課堂為中心的封閉式教學(xué)組織形式,將實際生產(chǎn)與學(xué)習(xí)真正融合為一體,在掌握業(yè)務(wù)知識、培養(yǎng)技能的同時,培養(yǎng)敬業(yè)精神、團(tuán)隊意識和職業(yè)道德等綜合素質(zhì),使師生在職業(yè)崗位中學(xué)習(xí),在學(xué)習(xí)環(huán)境中工作。
3.3 教學(xué)手段
在教學(xué)手段應(yīng)用上,充分利用現(xiàn)代教育技術(shù),采取密切的產(chǎn)學(xué)結(jié)合方式,聘請企業(yè)兼職教師進(jìn)行實踐指導(dǎo),并充分利用網(wǎng)絡(luò)平臺和網(wǎng)絡(luò)教學(xué)資源。授課教師在課堂上通過多媒體教學(xué)的方式講解重點難點問題,相關(guān)的項目任務(wù)探討和知識擴(kuò)展通過網(wǎng)絡(luò)化平臺進(jìn)行。對于網(wǎng)絡(luò)化平臺,我們主要采用兩種方式:一是建立課程QQ群,為學(xué)生提供一個資料共享和課程討論和交流的平臺,二是要求學(xué)生訪問中國測試網(wǎng),通過論壇和專業(yè)測試人員和其他測試學(xué)習(xí)者進(jìn)行溝通交流。在網(wǎng)絡(luò)教學(xué)資源方面,要求每一位同學(xué)使用高等職業(yè)教育軟件教學(xué)資源庫網(wǎng)站,訪問網(wǎng)站的課程資源和培訓(xùn)資源,其中軟件測試的課程資源包括:學(xué)習(xí)指南、授課錄像、實訓(xùn)指導(dǎo)、課程案例、參考和素材資源等方面。通過這樣的方式,能夠解決課堂教學(xué)課時的限制,使得課程的教學(xué)從課堂延伸到課后,對學(xué)生可持續(xù)學(xué)習(xí)的能力具有很大的促進(jìn)作用。此外,利用與江蘇微軟技術(shù)中心的合作優(yōu)勢,邀請他們在期末來校進(jìn)行項目實訓(xùn)指導(dǎo)。
3.4 考核方式
根據(jù)CDIO培養(yǎng)大綱,將學(xué)生的能力分為工程基礎(chǔ)知識、個人能力、人際團(tuán)隊能力和工程系統(tǒng)能力四個層面[7],再使用傳統(tǒng)的考核方式已經(jīng)不能滿足要求。軟件測試技術(shù)課程打破了單一的考核方式,從學(xué)生的專業(yè)能力、社會能力培養(yǎng)的要求出發(fā),建立基于教學(xué)全過程、以學(xué)生能力提升為導(dǎo)向的學(xué)習(xí)評價體系。具體包括過程性考核、綜合素質(zhì)評價和終結(jié)性考核。其中過程性考核占30%,綜合素質(zhì)評價占20%,終結(jié)性考核占50% 。
過程性考核:對學(xué)生完成實踐類項目的情況進(jìn)行綜合評定,考查項目包括課堂學(xué)習(xí)、小組學(xué)習(xí)、創(chuàng)新能力、課堂實踐和實踐報告等方面,每一個項目的考核都制定嚴(yán)格的評分標(biāo)準(zhǔn)。
綜合素質(zhì)評價:對學(xué)生在平時學(xué)習(xí)和實踐中表現(xiàn)出來的職業(yè)素養(yǎng)進(jìn)行綜合評定,主要包括團(tuán)隊協(xié)作能力、溝通交流能力、分析和解決問題的能力、自學(xué)能力、工作態(tài)度等方面,并對這些方面制定出嚴(yán)格的評分標(biāo)準(zhǔn)。
終結(jié)性考核:建立試題庫,實施考教分,在期末對學(xué)生進(jìn)行包括筆試和上機(jī)考試的綜合測試。其中筆試考查學(xué)生軟件測試的基礎(chǔ)理論知識以及對測試?yán)碚摰膽?yīng)用能力,該部分占終結(jié)性考核的60%;上機(jī)考試通過對實際測試項目的工作過程進(jìn)行檢查和考核,對任務(wù)完成情況進(jìn)行考核,還包括對測試工具運用的考核,該部分占終結(jié)性考核的40%。
4 結(jié)束語
通過在CDIO模式指導(dǎo)下進(jìn)行軟件測試技術(shù)課程的教學(xué),解決了傳統(tǒng)教學(xué)模式存在的主要問題,為達(dá)到學(xué)生的知識能力與測試技能要求之間的無縫對接奠定了良好的基礎(chǔ)。下一步的工作是進(jìn)一步完善CDIO模式在軟件測試技術(shù)課程中的應(yīng)用,并把這些經(jīng)驗總結(jié)應(yīng)用到軟件專業(yè)其它課程的教學(xué)過程當(dāng)中。
參考文獻(xiàn):
[1] 顧配華.以設(shè)計為導(dǎo)向的EIP-CDIO創(chuàng)新型工程人才培養(yǎng)模式[J].中國高等教育,2009(3).
[2] 查建中.論“做中學(xué)”戰(zhàn)略下的CDIO模式[J].高等工程教育研究,2008(3).
[3] 單光磊,韋良福.高職教育教學(xué)改革借鑒CDIO模式解析[J].山東水利職業(yè)學(xué)院院刊,2011(1).
[4] 唐寶燕,馮娜.CDIO模式在高職軟件技術(shù)專業(yè)教學(xué)改革中的應(yīng)用[J].電腦知識與技術(shù),2012(2).
0 引言
《軟件測試技術(shù)》是軟件工程本科專業(yè)的一門實踐性很強(qiáng)的課程,適合采用講練結(jié)合的方式開展相關(guān)教學(xué),即讓學(xué)生多上機(jī)操作,逐漸提高軟件測試用例設(shè)計、開發(fā)能力以及軟件測試的整體管理能力。然而在實際實踐教學(xué)過程中,教師普遍感覺有不少不盡人意的地方,主要表現(xiàn)在理論與應(yīng)用脫節(jié),所學(xué)知識與社會需求差距較大,學(xué)生積極性不高等。
1 軟件測試行業(yè)現(xiàn)狀和學(xué)生認(rèn)知水平
媒體報道,國內(nèi)開發(fā)人員與測試人員的比例是8∶1,而國際公認(rèn)的行業(yè)標(biāo)準(zhǔn)實際上是1∶1,這一點上國內(nèi)測試行業(yè)與國外的差距比較大。隨著軟件行業(yè)的蓬勃發(fā)展,用戶對軟件的質(zhì)量要求越來越高,導(dǎo)致軟件開發(fā)企業(yè)軟件測試的工作量也越來越大,因此自動化軟件測試已經(jīng)成為項目測試的一大趨勢[3]。并受到原來越多的重視。
軟件測試課程一般到大三才開設(shè),而大學(xué)高年級學(xué)生往往偏重于對技術(shù)的學(xué)習(xí),因為技術(shù)往往是可以現(xiàn)學(xué)現(xiàn)用的,對于理論性較強(qiáng)的軟件工程知識反而不太感興趣了。實際教學(xué)過程中關(guān)于軟件測試流程、團(tuán)隊等工程化內(nèi)容的描述往往讓學(xué)生覺得比較抽象且教條化,然而這些工程化知識又是學(xué)生畢業(yè)后適應(yīng)當(dāng)下的軟件行業(yè)需求所必要掌握的。
2 現(xiàn)有軟件測試課程體系存在的問題
現(xiàn)有軟件測試技術(shù)課程重點講授的是理論基礎(chǔ)知識,含離散數(shù)學(xué)、圖論和測試基礎(chǔ)知識以及測試用例,開發(fā)各階段的具體應(yīng)用往往被忽視,使用自動化測試工具方面的內(nèi)容尤其缺乏。高校對實踐課程的重視程度普遍不夠,軟件測試實踐課開展不足且不規(guī)范。教師大量精力放在講授測試用例設(shè)計方法上,實踐中的使用這些測試用例卻較少。實驗案例通常有NextDate問題、三角形問題等,都是一些課本上常見的,設(shè)計也較單一,缺乏真實性,難以提升學(xué)生的技能,學(xué)生往往覺得枯燥乏味。畢業(yè)后學(xué)生普遍反映,軟件測試工程理論知識教的很全,但就是不知道怎樣靈活應(yīng)用;相反,在企業(yè)經(jīng)過一段時間的測試工作實踐后發(fā)現(xiàn),工作中真正需要的知識并未掌握。
目前,相關(guān)配套的軟件測試實驗教材比較缺乏,實驗內(nèi)容基本是由任課教師自行設(shè)計。這對于教學(xué)經(jīng)驗豐富的教師問題不是很大,但對于沒有實際項目開發(fā)經(jīng)驗作為支撐的年輕教師,就無法把握如何采用恰當(dāng)?shù)挠美齺眚炞C相關(guān)理論知識,也難以設(shè)計出實用的實驗內(nèi)容,學(xué)非所用,導(dǎo)致學(xué)生無法掌握今后實際工作所需的基本技能。即使是教學(xué)經(jīng)驗豐富的教師也大多缺乏實戰(zhàn),盡管能很好的教授理論知識,但由于缺乏合適的實踐教材,加上實驗條件等各種因素制約,也難以的對學(xué)生進(jìn)行系統(tǒng)全面的實踐培訓(xùn),導(dǎo)致高校重理論輕實踐成為普遍現(xiàn)象。因此,軟件測試課程的教學(xué)順應(yīng)社會需求顯得格外迫切,必須面向企業(yè),了解崗位要求,而不是“閉門造車”。讓學(xué)生能學(xué)到適合企業(yè)所需的技能,畢業(yè)后可以以一個“經(jīng)驗者”的身份進(jìn)入人才市場。
3 《軟件測試技術(shù)》實踐課程體系研究
3.1 課程構(gòu)建原則
高校應(yīng)以軟件測試所需的知識、技能為先導(dǎo)構(gòu)建相應(yīng)的課程體系,充分調(diào)研軟件測試工作的具體內(nèi)涵,仔細(xì)研究對應(yīng)的知識、技能以及素質(zhì)要求,課程內(nèi)容也應(yīng)強(qiáng)調(diào)當(dāng)前以及未來就業(yè)所需掌握的基本知識、技能,體現(xiàn)知識、技能和素質(zhì)三者的結(jié)合[6]。
根據(jù)該專業(yè)人才培養(yǎng)的定位以及行業(yè)內(nèi)需求,在建設(shè)具有特色的軟件測試課程時建立實驗、實訓(xùn)和實習(xí)等不同層次的實踐課,通過多項目的練習(xí),提高學(xué)生專業(yè)技能及分析、解決問題的能力。
3.2 實踐課程教學(xué)探究
在軟件測試技術(shù)實踐課程環(huán)節(jié),引入具有企業(yè)背景項目的實訓(xùn)。通過這些真實測試案例的引入,結(jié)合人才市場的需求,充分體現(xiàn)出工學(xué)結(jié)合的特點。通過對實際項目的操作,使用相關(guān)測試工具,完成對各目標(biāo)的測試,提升學(xué)生的測試能力同時積累相關(guān)工作經(jīng)驗。
我們可以在教學(xué)過程中引入一個貫穿整個教學(xué)過程的具體測試案例的教學(xué)法。首先,組織學(xué)生進(jìn)行隨機(jī)分組,每個小組5~6個人,給每個組起一個名稱。要求每個小組在課程實施前完成同一個模擬軟件“小區(qū)物業(yè)管理系統(tǒng)”的開發(fā)。模擬軟件開發(fā)完成后,由各個小組交叉測試其它小組開發(fā)的軟件。在測試課程中,要求學(xué)生對軟件系統(tǒng)進(jìn)行單元測試、功能測試、集成測試和系統(tǒng)測試,找出問題并解決問題。
該教學(xué)方法主要有以下明顯的優(yōu)點:
1)軟件測試前期的課程有《基于Web的Java開發(fā)設(shè)計》,同步開設(shè)的課程有《J2EE企業(yè)級應(yīng)用開發(fā)》,所以在實踐環(huán)節(jié)我們選擇“小區(qū)物業(yè)管理系統(tǒng)”作為測試對象,能讓學(xué)生快速具備軟件開發(fā)的能力,以及掌握軟件系統(tǒng)測試所需的技術(shù)。
2)每個人都喜歡挑別人的錯誤,相互測試對方所開發(fā)的系統(tǒng),可以形成競賽,有利于發(fā)現(xiàn)問題,能發(fā)揮學(xué)生的積極性,提高效率。同時也便于組織課堂討論以及對各小組實踐結(jié)果的評價。
3)學(xué)生通過一整套測試課程的參與,能夠了解一個具體項目的完整測試過程是個什么樣子,真實展現(xiàn)了實際工作中軟件測試的方法和要求。
但由于學(xué)時和學(xué)生能力的制約,在本實驗課程中,主要針對還只是初、中級測試人員,主要是為了幫助畢業(yè)生在踏上崗位后可以順利從事不太復(fù)雜的測試工作打下堅實的基礎(chǔ)。對于高級別測試以及測試管理之類的工作,比如制定測試計劃、各種設(shè)計的論證、測試結(jié)果的評估和總結(jié),恐怕還需要經(jīng)相當(dāng)長時間的實戰(zhàn),累積足夠的經(jīng)驗才能勝任。這些工作經(jīng)歷,仍然不是課堂所能提供的,我們的目標(biāo)就要是培養(yǎng)出具備從事這項工作潛能的新手。有關(guān)這方面的內(nèi)容,我們也只能夠在理論教學(xué)中予以概述,不在實踐課中安排具體實驗。
為了適應(yīng)實踐課程需要,我們設(shè)計了8項實驗內(nèi)容,該設(shè)計旨在讓學(xué)員通過實訓(xùn),將來以一個“經(jīng)驗者”的身份進(jìn)入人才市場。該項目模擬“企業(yè)項目管理者”培養(yǎng)“新人”的模式來安排實驗進(jìn)度和內(nèi)容。雖然現(xiàn)實中軟件測試是始終貫穿于軟件生命周期中的,但對于未參加過工作的大學(xué)生來說,從培養(yǎng)人才的角度出發(fā),模擬“企業(yè)項目管理者”通常還是按如下流程培養(yǎng)人才:單純性測試的實施、測試環(huán)境建立、測試設(shè)計等等,按照單元測試集成測試系統(tǒng)測試的順序逐步深入實踐,并在提供的測試案例中人為的加入一些缺陷,以便學(xué)員在測試時去發(fā)現(xiàn)、分析、修改這些缺陷[7]。因此,我們專門設(shè)計了表1所示的實驗內(nèi)容。
通過以上8個實驗內(nèi)容的實踐,可以讓學(xué)員掌握單元測試以及集成測試的具體實現(xiàn)方法,熟悉各種測試工具的運用,了解系統(tǒng)測試的實施。經(jīng)過這些實際訓(xùn)練,學(xué)生將來以初級測試工程師的身份投入到測試工作中。
4 總結(jié)分析
實踐證明,軟件測試技術(shù)實踐課程體系研究針對軟件測試行業(yè)及人才的特點要求,把行業(yè)、企業(yè)對人才的要求轉(zhuǎn)化為教學(xué)中的具體目標(biāo)。從知識、能力、素質(zhì)多方面全方位提升學(xué)生的就業(yè)競爭力,設(shè)置合適的實踐教學(xué)內(nèi)容和方法,一定程度上改變了教師的教學(xué)狀態(tài)和學(xué)生的學(xué)習(xí)狀態(tài),達(dá)到了預(yù)期目標(biāo)。
參考文獻(xiàn)
[1]2007首屆中國軟件測試從業(yè)人員調(diào)查報告[DB/0L],2007
[2] 鐘素芬, 葉明芷. 軟件測試應(yīng)用性人才培養(yǎng)模式的探索與實踐[J]. 北京聯(lián)合大學(xué)學(xué)報(自然科學(xué)版),2007(9).
[3] 鐘元生. 軟件測試實踐教學(xué)特色的構(gòu)建實踐[J]. 電化教育研究,2006(10):62-65.
[4] 胡宏銀. 軟件測試課程教學(xué)方法探討與實踐[J]. 計算機(jī)教育,2007(6):11-12.
DOIDOI:10.11907/rjdk.162329
中圖分類號:G434
文獻(xiàn)標(biāo)識碼:A文章編號:1672-7800(2016)012-0197-03
0 引言
隨著軟件技術(shù)在社會各領(lǐng)域的廣泛應(yīng)用,人們開始越來越關(guān)注軟件產(chǎn)品質(zhì)量,軟件測試作為軟件質(zhì)量保證的重要途徑也因此受到行業(yè)領(lǐng)域的關(guān)注與重視,軟件測試崗位的就業(yè)前景也變得越來越好。在《國務(wù)院關(guān)于加快發(fā)展現(xiàn)代職業(yè)教育的決定》中,提出“深化產(chǎn)教融合、校企合作”[1]。隨著技術(shù)的發(fā)展、產(chǎn)業(yè)結(jié)構(gòu)調(diào)整的不斷加快,持久深入的校企合作已經(jīng)逐漸成為高職院校課程開發(fā)質(zhì)量的關(guān)鍵要素之一。
《軟件測試基礎(chǔ)》課程大多在高職院校的計算機(jī)類專業(yè)中開設(shè),但是普遍存在著課程內(nèi)容更新慢,教學(xué)方法、手段陳舊,課程評價考核單一的問題,導(dǎo)致學(xué)生學(xué)習(xí)興趣不大,學(xué)習(xí)效果不佳。該課程在蘇州健雄職業(yè)技術(shù)學(xué)院是軟件技術(shù)專業(yè)的一門專業(yè)基礎(chǔ)課,該院與上海博為峰軟件技術(shù)股份有限公司、上海澤眾軟件科技有限公司等從事軟件測試的IT企業(yè)緊密合作,對課程進(jìn)行了一系列建設(shè)和改革,培養(yǎng)了一大批軟件測試人才,受到企業(yè)的一致認(rèn)可。
1 以工作過程為導(dǎo)向的課程設(shè)計
課程組成員結(jié)合計算機(jī)等級考試、計算機(jī)軟件專業(yè)技術(shù)資格考試和國際軟件測試資質(zhì)認(rèn)證(ISTQB)的考試大綱,以及行業(yè)、企業(yè)對軟件測試員的人才需求,與企業(yè)專家共同確定本課程的目標(biāo)為:使學(xué)生了解軟件測試的發(fā)展前景,掌握測試的基礎(chǔ)知識,了解測試用例的概念、意義;能夠搭建測試環(huán)境,掌握常用的黑盒、白盒用例設(shè)計方法,能夠進(jìn)行簡單的手動功能測試并撰寫測試報告與缺陷報告;了解常用的自動化測試工具、性能測試工具,理解測試工具的原理,了解測試管理的概念與流程等。
本課程以軟件測試工程師的工作過程為導(dǎo)向,按照軟件技術(shù)專業(yè)培養(yǎng)目標(biāo)與高職學(xué)生的特點,將測試基礎(chǔ)知識、相關(guān)技術(shù)方法、測試管理貫穿在整個測試流程中,從而構(gòu)建測試各階段所需的知識與技能。在課程中以“虛擬公司”作為組織形式,在運作過程中充分體現(xiàn)職業(yè)教育行為導(dǎo)向和職業(yè)性原則。行為導(dǎo)向,即創(chuàng)造師生互動的仿真情境,使學(xué)生通過自主協(xié)作式學(xué)習(xí)方式,反復(fù)操練,從而形成符合企業(yè)要求的行為方式和職業(yè)能力。職業(yè)性原則,即要求實訓(xùn)目標(biāo)和就業(yè)目標(biāo)高度一致[2]。學(xué)院與企業(yè)共建實訓(xùn)平臺,通過具體工程項目及案例素材,使用測試管理工具從測試需求建起,測試模塊劃分、測試用例設(shè)計、測試用例執(zhí)行、缺陷管理,加強(qiáng)學(xué)生對測試管理工具的使用。
2 以工作項目為載體的學(xué)習(xí)情境創(chuàng)設(shè)
《軟件測試基礎(chǔ)》課程最好在第三學(xué)期開設(shè),因為這時學(xué)生對軟件行業(yè)已有一定了解,并已具備初步的編程經(jīng)驗,課程共計64學(xué)時。依據(jù)軟件測試的工作過程可以將課程劃分為6個學(xué)習(xí)情境,共15個工作任務(wù),具體如表 1所示。
學(xué)習(xí)情境1中主要讓學(xué)生認(rèn)識缺陷并知道缺陷產(chǎn)生的原因,掌握軟件測試的定義、目的、分類和原則,熟悉V模型、W模型、H模型等軟件測試的常見模型;熟練掌握軟件質(zhì)量模型的分類和各個評價指標(biāo),并明確軟件質(zhì)量與軟件測試之間的關(guān)系;會查詢互聯(lián)網(wǎng)中的招聘信息,分析軟件測試工程師的崗位職責(zé)及發(fā)展路徑,并盡早做好職業(yè)生涯規(guī)劃。
學(xué)習(xí)情境2中讓學(xué)生能夠明確軟件測試的依據(jù),并閱讀需求規(guī)格說明書,理解測試需求的概念,會對測試需求進(jìn)行挖掘;能夠理解測試計劃的重要性,知道測試計劃的一般組成要素。
學(xué)習(xí)情境3中讓學(xué)生能夠理解黑盒測試、白盒測試、灰盒測試的基本概念及它們之間的區(qū)別與聯(lián)系;能夠靈活地運用黑盒測試的常用方法,如等價類劃分、邊界值、決策表、因果圖、場景法、正交表等來設(shè)計測試用例;能夠靈活地運用白盒測試的常用方法,如邏輯覆蓋法、基本路徑法等設(shè)計測試用例。
學(xué)習(xí)情境4中讓學(xué)生學(xué)會測試環(huán)境的搭建,如在虛擬機(jī)中部署PHP、JSP、.NET等應(yīng)用程序;理解單元測試、集成測試、系統(tǒng)測試、驗收測試的概念及基本流程,熟悉集成測試的策略,能夠使用JUnit 等工具來開展單元測試;能夠掌握缺陷的概念,會正確記錄缺陷,掌握缺陷報告的基本格式與內(nèi)容。
學(xué)習(xí)情境5中要讓學(xué)生理解測試總結(jié)的意義和重要性,并了解測試總結(jié)報告的格式與內(nèi)容。
學(xué)習(xí)情境6中能讓學(xué)生掌握手動測試與自動化測試的區(qū)別,了解自動化測試、性能測試等工具的原理,初步掌握腳本的錄制和參數(shù)的設(shè)定,為后續(xù)課程的學(xué)習(xí)奠定基礎(chǔ)。
3 “互聯(lián)網(wǎng)+教育”方式的課程改革深化
3.1 利用雨課堂平臺實施線上線下混合教學(xué)
合理運用互聯(lián)網(wǎng)新技術(shù),由傳統(tǒng)教學(xué)向線上線下混合式教學(xué)方式轉(zhuǎn)變,打破以往學(xué)生學(xué)習(xí)時空的限制,按需學(xué)習(xí),讓教育教學(xué)資源得到最大化共享。由于本課程概念較多,課程學(xué)習(xí)后還需通過工信部的考證,線上教學(xué)教師通過清華大學(xué)研制的雨課堂平臺將PPT課件、微課、測試等資料上傳至云空間,并推送到學(xué)生的移動終端上,督促學(xué)生做好預(yù)習(xí)、復(fù)習(xí)工作,學(xué)生所有的學(xué)習(xí)行為數(shù)據(jù)均被自動完整采集,有助于量化了解學(xué)生學(xué)習(xí)效果并把握學(xué)生學(xué)習(xí)軌跡[3];傳統(tǒng)的線下面授,則重點解決學(xué)生的疑難困惑問題,提高教學(xué)效率。
隨著軟件產(chǎn)業(yè)的發(fā)展,軟件測試被越來越多的軟件企業(yè)重視,很多軟件企業(yè)還設(shè)立了專門的軟件測試部門,對軟件測試人員的需求量非常大,而真正能符合軟件測試的人員卻很短缺。所以,軟件測試技術(shù)作為高職軟件技術(shù)專業(yè)的一門專業(yè)課程,教學(xué)模式的改革勢在必行。傳統(tǒng)的軟件測試課程以測試的理論知識為主,忽視了軟件企業(yè)中真實測試崗位的要求,造成課堂教學(xué)與測試崗位需求的不一致。本課程以企業(yè)軟件測試工程師作為主講教師,將企業(yè)中實際測試項目作為教學(xué)項目,為學(xué)生提供個盡量真實的軟件測試環(huán)境,讓學(xué)生真正參與到測試中來。通過學(xué)習(xí)該課程,讓學(xué)生了解軟件測試的基本過程,掌握單元測試、功能測試、系統(tǒng)測試的一般步驟和方法,并能夠進(jìn)行相應(yīng)測試。
1 測試項目的選擇
在基于項目的課程設(shè)計中,測試項目設(shè)計是一個關(guān)鍵環(huán)節(jié)。本課程確定以項目作為載體的設(shè)計思路后,選取企業(yè)中實際測試的項目作為教學(xué)項目,這樣的項目既有在企業(yè)中應(yīng)用的普遍性和典型性,又能有效地促進(jìn)學(xué)生職業(yè)能力發(fā)展,達(dá)到本課程的教學(xué)目標(biāo)。在本課程中選擇“能力驗證樣品軟件”作為測試項目。
2 測試項目的實施
2.1 測試環(huán)境的搭建
在軟件測試企業(yè)中,測試人員作為軟件項目開發(fā)的一分子,為了及時、有效的與程序設(shè)計人員進(jìn)行溝通,通常應(yīng)用BugFree來實現(xiàn)缺陷管理。BugFree是基于PHP和MySQL開發(fā),免費、開源的缺陷管理系統(tǒng),通過該軟件能很好的協(xié)調(diào)開發(fā)人員、測試人員和需求三方的關(guān)系,規(guī)范軟件的研發(fā)流程。
2.2 測試小組的確定
在項目測試過程中,以教師引導(dǎo)、學(xué)生自愿為原則,每五人組成一個小組,每個小組的總體能力、水平相當(dāng),并保證每個小組至少有一名組織能力較強(qiáng)的學(xué)生作為組長,負(fù)責(zé)協(xié)調(diào)教師與學(xué)生、小組成員之間以及小組之間的關(guān)系等工作。測試組成員一起討論本組的測試計劃,根據(jù)軟件的需求規(guī)格說明書,制定詳盡的測試計劃,一起搭建測試環(huán)境,同時測試組長對測試小組成員的工作進(jìn)行分工,測試組長負(fù)責(zé)本組測試的全面工作,并且嚴(yán)格地按照測試計劃執(zhí)行。
2.3 測試的執(zhí)行
(1)測試項目引入。在測試開始前,教師演示預(yù)測試項目,并對照“需求規(guī)格說明書”,明確此次測試的任務(wù):完成對系統(tǒng)的功能測試,并通過BugFree來實現(xiàn)測試用例的管理和缺陷的管理。任務(wù)實施前,教師先演示一個缺陷的查找過程,讓學(xué)生看到真實的“缺陷”,從而產(chǎn)生躍躍欲試的感覺。然后讓學(xué)生在沒有掌握查找缺陷的方法情況下,用自己的常識進(jìn)行缺陷的查找。
(2)黑盒測試知識的導(dǎo)出。黑盒測試的兩個關(guān)鍵技術(shù):等價類類劃分法和邊界值分析法。等價類劃分法是一種重要的、常用的黑盒測試方法,它將不能窮舉的測試過程進(jìn)行合理分類,從而保證設(shè)計出來的測試用例具有完整性和代表性。邊界值分析法通常是作為對等價類劃分法的補(bǔ)充,這種情況下,其測試用例來自等價類的邊界。
(3)在理論知識的指導(dǎo)下進(jìn)行缺陷查找。在黑盒測試?yán)碚摰闹笇?dǎo)下,科學(xué)、有效的進(jìn)行測試用例的設(shè)計。為便于學(xué)生的學(xué)習(xí)討論和測試用例設(shè)計,課程教學(xué)直接在有職業(yè)氛圍的軟件技術(shù)實訓(xùn)室進(jìn)行。
(4)考核標(biāo)準(zhǔn)和考核方法。該課程的考核重點放在了對學(xué)生學(xué)習(xí)過程的考核上。每個任務(wù)都有明確的考核標(biāo)準(zhǔn)。待學(xué)生完成任務(wù)后,教師對學(xué)生完成的任務(wù)成果進(jìn)行點評,并對任務(wù)的完成情況進(jìn)行總結(jié)。作為該部分教學(xué),會讓每組同學(xué)展示其缺陷列表,通過查找到的缺陷的數(shù)量和級別作為評判標(biāo)準(zhǔn),同時結(jié)合平時表現(xiàn),綜合給出項目任務(wù)的成績。最終的考核評價成績由4個部分組成:平時表現(xiàn)10%,每次完成項目任務(wù)的情況25%,課程實訓(xùn)25%,綜合技能考核40%。
3 項目教學(xué)的效果
3.1 采用項目教學(xué)法,提供學(xué)生專業(yè)技能
項目教學(xué)是指學(xué)生在教師的指導(dǎo)下完成一個典型項目的過程,在項目完成過程中學(xué)習(xí)知識和技能。學(xué)生通過解決在項目中遇到的問題,提高了學(xué)習(xí)興趣,調(diào)動了學(xué)習(xí)的積極性和主動性。項目教學(xué)注重的是完成項目的過程,而不是最終結(jié)果。
3.2 采用分組教學(xué)法,提高學(xué)生團(tuán)隊意識
在教學(xué)過程中,我們把班級同學(xué)分成若干個項目組,每個同學(xué)在小組中擔(dān)任不同的角色。
3.3 采用企業(yè)管理模式,促進(jìn)學(xué)生零距離就業(yè)
通過校企合作,將企業(yè)的運行模式引入到課堂中來。請企業(yè)里有經(jīng)驗的軟件測試工程師作為主講教師,將企業(yè)里有代表性的真實項目作為測試項目,并搭建企業(yè)中的測試環(huán)境,讓學(xué)生盡可能多的融入到真實的測試環(huán)境中,從而促進(jìn)學(xué)生零距離就業(yè)。
[參考文獻(xiàn)]
中圖分類號:G642 文獻(xiàn)標(biāo)識碼:B
文章編號:1672-5913(2007)18-0028-02
1引言
軟件測試作為軟件產(chǎn)業(yè)的重要門類發(fā)展迅速,其專業(yè)崗位迅速擴(kuò)大、人才需求旺盛、職業(yè)價值日益提升。然而,由于行業(yè)內(nèi)的軟件測試人才嚴(yán)重短缺,企業(yè)對軟件測試人才有大量需求但苦于招不到合適的人;另一方面,很多高職應(yīng)屆軟件專業(yè)畢業(yè)生因為沒有軟件測試經(jīng)驗而被拒之門外。產(chǎn)生這種矛盾的原因是,對于眾多的高職院校來說,軟件測試教學(xué)處于起步階段,經(jīng)驗和積累不足,尤其是高職的軟件測試課程和教學(xué)特點尚未形成,需加以改進(jìn)完善。
2市場需求和現(xiàn)狀分析
隨著IT技術(shù)應(yīng)用的發(fā)展,國內(nèi)軟件行業(yè)對軟件測試工程師的需求將超過20萬人。[1]
我國大學(xué)本科課程中普遍不設(shè)專門的軟件測試課程,軟件測試僅作為軟件工程課中的一個章節(jié)被提到,學(xué)生在認(rèn)識上多為重開發(fā)、輕測試,畢業(yè)后直接進(jìn)入測試行業(yè)的為數(shù)不多。
高職院校軟件專業(yè)一般在第三學(xué)年單獨開設(shè)一門軟件測試課程,限于學(xué)時,總體來說,學(xué)生通過課程的學(xué)習(xí),能掌握軟件測試的基本概念和基本理論、基本測試技術(shù)和方法,但真正運用軟件測試技術(shù)分析和解決實際崗位的能力還不夠[2]。我國50人以下的軟件企業(yè)占了70%以上,一般都沒有建立軟件測試部門[3],這部分的中小企業(yè)希望具有工作經(jīng)歷的軟件測試員直接上手開展工作。
社會培訓(xùn)機(jī)構(gòu)比較重視市場經(jīng)濟(jì),他們一般開設(shè)約210學(xué)時的課程,學(xué)員來自尚未找到工作的往屆畢業(yè)生和應(yīng)屆生,主講教師曾在電信、證券、金融領(lǐng)域擔(dān)任過軟件測試項目負(fù)責(zé)人,課程結(jié)束后承諾推薦就業(yè),中小企業(yè)也愿意接受這批學(xué)生中的優(yōu)秀者。但培訓(xùn)價格不菲,而且培訓(xùn)機(jī)構(gòu)眾多,質(zhì)量也難免良莠不齊。
3存在問題和應(yīng)對措施
高職“軟件測試技術(shù)”課程面臨的主要問題分析如下。
3.1教材建設(shè)
國內(nèi)面向高職的軟件測試教材不多,近來出版的幾本教材對軟件測試所涉及的基本概念、基本工作過程的理論知識和應(yīng)用知識闡述雖然很系統(tǒng)詳盡,但還是存在共同的問題:
1) 缺少大型集中項目功能測試、性能測試實例的全過程,即沒能把比較分散的知識點和技能點進(jìn)行綜合分析。
2) 重技術(shù)實現(xiàn)、輕文檔工作,建議增加如何編寫“測試計劃”和“測試報告”,給出測試記錄、測試日志的模板。同時,可列出軟件測試行業(yè)中長期積累的經(jīng)驗,例如軟件測試的10大原則、10大最佳實踐等,這些內(nèi)容很實用,學(xué)生走上工作崗位就馬上能用到。
3) 教材中的“測試工具使用”流于產(chǎn)品使用說明書,難以引起學(xué)習(xí)興趣,要站在學(xué)生學(xué)習(xí)和認(rèn)知的立場上來考慮,花時間寫實訓(xùn)指導(dǎo),使學(xué)生在最短時間內(nèi)對這一專項技能掌握和熟練。
4) 測試工具要采用中小IT企業(yè)流行的軟件,例如功能測試采用Mercury QuickTest Professional (QTP) ,性能測試采用Mercury LoadRunner,測試管理工具可用開源的并行版本控制工具CVS,采用Test Director或同類新版Quality Center (QC) 。要注意防止兩個極端:一是避免教市場已經(jīng)不使用的測試工具;二是避免教價格昂貴的軟件,如IBM Rational的ClearCase、ClearQuest、Functional Tester、Performance Tester,盡管功能優(yōu)越,但市場占有率低,只有軟件成熟度能力CMM高的大型IT企業(yè)才會使用。
3.2師資隊伍建設(shè)
1) 高職在軟件測試教學(xué)的過程中,常采用案例教學(xué)與實際項目嵌入到課程教學(xué)和設(shè)計中,這種指導(dǎo)實際動手能力的經(jīng)驗和技藝性知識比重偏高,它是通過不斷的積累和創(chuàng)新,主要蘊藏在個體頭腦中的隱性知識。因此,提升教師自身的這種隱性知識顯然比充實書本上的顯性知識更為重要。
2) 促進(jìn)教師隱性知識的先行化,實現(xiàn)教師的終身的專業(yè)成長。在教師教育和課程發(fā)展中,要特別重視教師的專業(yè)反省能力和教師專業(yè)經(jīng)驗、系統(tǒng)化的教育理論和方法,而且要求教師探索和學(xué)習(xí)處于隱性狀態(tài)的專業(yè)知識。
由封閉型向開放型轉(zhuǎn)變。在知識更新速度不斷加快的今天,教師應(yīng)深入軟件企業(yè)第一線,了解行業(yè)發(fā)展的動態(tài),將最新的技術(shù)、觀念等帶進(jìn)課堂,使學(xué)生得到的知識與社會同步。教師的個體知識應(yīng)該不斷充實和提升,成為一種開放的、動態(tài)的知識,即知識自我調(diào)節(jié)、自我管理。教師到企業(yè)掛職頂崗、或參與IT企業(yè)科研項目、或取得行業(yè)資格證書,不失為隱性知識的先行化的有效途徑。
3) 來自IT企業(yè)的軟件測試工程師具有豐富的項目實戰(zhàn)經(jīng)驗,是軟件測試知識應(yīng)用和創(chuàng)新最寶貴的資源,有條件的可邀請來校兼職授課。同時必須采取協(xié)同學(xué)習(xí)的有效措施充分挖掘其研究成果。協(xié)同學(xué)習(xí)是對現(xiàn)有學(xué)習(xí)技術(shù)系統(tǒng)框架的突破:在信息、知識、行動之間建立有機(jī)的、協(xié)同發(fā)展的聯(lián)系;在交互層面,提供內(nèi)容與學(xué)習(xí)者的深度互動;在通信結(jié)構(gòu)層面,提供信息聚合機(jī)制;在信息加工層面構(gòu)建群體學(xué)習(xí)機(jī)制。簡而言之,歸納為“深度互動,信息匯聚,集體思維,合作建構(gòu),多場協(xié)調(diào)”[4],形成知識共享。
3.3教學(xué)方法的改進(jìn)
課程應(yīng)基于建立一個內(nèi)容充實的職業(yè)技能實訓(xùn)體系,采用全新的“場景教學(xué)法”,以真實工作場景為核心,利用項目導(dǎo)向的角色模擬方式,提倡“以用為本、學(xué)以致用”的教學(xué)方法:以工程經(jīng)驗為指導(dǎo),采用任務(wù)驅(qū)動法,強(qiáng)化實戰(zhàn)技能,輔以實際企業(yè)測試項目,使用角色模擬的方式。
1) 工作場景。針對企業(yè)實際工作流程和工作場景,結(jié)合已經(jīng)實際投入使用的軟件項目的測試資料和軟件代碼,進(jìn)行項目分析和任務(wù)分解,重現(xiàn)在企業(yè)中進(jìn)行軟件測試工作的任務(wù)環(huán)境。
2) 項目主導(dǎo)。所有知識點和技能都是通過一個或者幾個項目來組織的,學(xué)生通過可擴(kuò)展的項目案例來逐步學(xué)習(xí)知識和技能;所有的實踐都是項目中的一個實際任務(wù),熟悉項目測試過程中常見的技術(shù)、流程、人員協(xié)作問題,并掌握相關(guān)的解決方法。學(xué)生通過實踐可具備完成一種任務(wù)的能力。
3) 角色模擬。學(xué)生在實際動手操作的課程和項目實訓(xùn)過程中,使用真實的企業(yè)項目,真實的企業(yè)工作流程和工具,模擬項目組中各種角色,協(xié)同完成項目和任務(wù),體驗和掌握各種角色的工作技能和工作經(jīng)驗。
4) 任務(wù)分解。在為完成整個項目而必須掌握的概念和知識環(huán)節(jié)的講解上,將整個項目劃分為多個子任務(wù),再分析每個子任務(wù)需要的知識、技能、素質(zhì)要求,并通過完成子任務(wù)的形式來組織學(xué)習(xí)內(nèi)容、設(shè)計課程體系。
5) 六步教學(xué)。知識和技能的傳授和自學(xué)都是從具體到抽象、從特殊到一般,按照以下6個步驟來組織的:提出問題、分析問題、解決問題、總結(jié)出一般規(guī)律和知識/技能、擴(kuò)展知識/技能、解決更高級的類似問題。
6) 團(tuán)隊協(xié)作。在授課過程中,學(xué)生將被劃分為幾個團(tuán)隊,每個團(tuán)隊將根據(jù)課程內(nèi)容和講師的安排,通過技術(shù)研討、實際操作等手段,合作完成一個任務(wù)和項目。
7) 動手能力。為了使學(xué)生的知識面和思路有所擴(kuò)展,鼓勵學(xué)生自己動手,通過實際操作課程中的實驗和進(jìn)行項目演練,培養(yǎng)學(xué)生舉一反三的能力,從而幫助學(xué)生掌握重點技術(shù)的應(yīng)用,為日后完成更大的項目積累經(jīng)驗。
4結(jié)束語
隨著計算機(jī)技術(shù)發(fā)展,對軟件功能提出的要求也越來越高,如何開發(fā)出高質(zhì)量的軟件已成為一個迫切需要解決的課題,因此軟件測試的地位也得到了應(yīng)有的重視,這是一個非常有利于提升個人職業(yè)發(fā)展空間的崗位,因為它剛剛處于起步發(fā)展階段,對人才的需求量大,非常適合缺少工作經(jīng)驗的高職軟件專業(yè)應(yīng)屆畢業(yè)生。因此,上好軟件測試課程,制定與相應(yīng)測試職業(yè)“接軌”的教材和教學(xué)方法,使學(xué)生能系統(tǒng)學(xué)習(xí)測試知識和掌握測試技能,落實“以就業(yè)為導(dǎo)向”的辦學(xué)方向與策略,應(yīng)該成為今天高職軟件技術(shù)專業(yè)的選擇。
參考文獻(xiàn)
[1] 沈海娟. 高職軟件測試課程構(gòu)建設(shè)想[J].計算機(jī)教育,2006,(4).
[2] 楊鵬. 高職軟件測試課程的教學(xué)探索與實踐[J] . 番禺職業(yè)技術(shù)學(xué)院學(xué)報,2005,(4).
關(guān)鍵詞:
軟件測試;應(yīng)用型人才;案例式教學(xué);教學(xué)產(chǎn)業(yè)化
隨著我國IT行業(yè)的發(fā)展,越來越多的企業(yè)意識到軟件測試的重要性,因此軟件測試人員成為當(dāng)前IT業(yè)界亟需的熱門人才。面對軟件測試人員緊迫的需求形勢,應(yīng)用型人才培養(yǎng)單位應(yīng)該擴(kuò)大軟件測試人員的人才培養(yǎng)規(guī)模,提高培養(yǎng)質(zhì)量。
一、《軟件測試》課程教育現(xiàn)狀
我國軟件測試技術(shù)發(fā)展已有十余年,但I(xiàn)T市場對于測試人員仍然呈現(xiàn)出供不應(yīng)求的勢態(tài)。目前國內(nèi)高校對軟件工程專業(yè)幾乎都會開設(shè)軟件測試課程,甚至有些高校已經(jīng)設(shè)置有軟件測試專業(yè)。2011年11月,教育部主辦了“2011年高等學(xué)校軟件測試課程教學(xué)論壇”,對測試人才的培養(yǎng)及測試領(lǐng)域的全面發(fā)展起到了積極地推動作用[1]。高校系統(tǒng)化的專業(yè)教育體系為學(xué)生奠定了扎實而科學(xué)的學(xué)科基礎(chǔ),并對軟件測試技術(shù)的理論化和系統(tǒng)化發(fā)展起到了不可替代的作用。利弊相依,傳統(tǒng)的人才培養(yǎng)模式對軟件測試課程設(shè)置和培養(yǎng)方案上還是會存在以下不足。
1.重理論輕實踐在傳統(tǒng)的軟件測試課程設(shè)置中,大多采用教師在課堂上講授理論知識,學(xué)生上機(jī)時完成實驗操作的教學(xué)方式。實驗的目的只是為了檢查學(xué)生知識點的理解和掌握,實驗題目大多比較陳舊,不能與時俱進(jìn)地與當(dāng)前的最新技術(shù)或最熱門的應(yīng)用相結(jié)合,使得學(xué)生的測試知識體系過于單薄。
2.重學(xué)生個體知識積累,輕團(tuán)隊協(xié)作能力培養(yǎng)團(tuán)隊協(xié)作在軟件工程中的重要性無須多述。軟件測試作為軟件工程中重要一個環(huán)節(jié),貫穿于整個軟件生命周期,測試人員與系統(tǒng)分析員、軟件設(shè)計師、程序員、維護(hù)人員之間的溝通必不可少,良好的團(tuán)隊協(xié)作才能有助于項目的進(jìn)行,有助于高效、正確地開發(fā)出高質(zhì)量的軟件產(chǎn)品。傳統(tǒng)的教學(xué)模式中,很少引入分組協(xié)作的環(huán)節(jié)去鍛煉學(xué)生的溝通和交流能力,更不能設(shè)計出測試人員和開發(fā)人員的溝通場景,不能滿足學(xué)生在項目中去加深理解、鞏固提高的需求。
3.重即有知識,輕科學(xué)創(chuàng)新一直以來,軟件測試課程在高校的課程體系中受到重視并不多,課程結(jié)束后并沒有延續(xù)測試知識的后續(xù)課程。因此,學(xué)生不能在后面的學(xué)習(xí)和實踐中進(jìn)行總結(jié)提升。知識在母體中是要經(jīng)過消化、適應(yīng)、轉(zhuǎn)化、演進(jìn)、創(chuàng)新、融合、活化,而后才稱為組織的“行動知識”,現(xiàn)有的教學(xué)模式不能很好的產(chǎn)生知識發(fā)酵效果。
二、《軟件測試》課程特點和培養(yǎng)目標(biāo)
軟件測試是一門應(yīng)用型較強(qiáng)的學(xué)科,應(yīng)注重理論聯(lián)系實踐。一個合格的軟件評測師除了要掌握即有的測試?yán)碚摵蛙浖R外,還必須具備對軟件測試行業(yè)的深刻理解,必須具備對計算機(jī)專業(yè)知識,包括編程技能、數(shù)據(jù)庫、網(wǎng)絡(luò)、中間件等知識的系統(tǒng)掌握,必須具備溝通能力、團(tuán)隊協(xié)作精神。軟件測試是為了盡可能多地發(fā)現(xiàn)并排除軟件中潛藏的錯誤,最終把一個高質(zhì)量的軟件交給用戶,這并不是一項簡單的工作。要做好軟件測試,測試人員不僅需要站在客戶的角度思考問題,真正理解客戶的需求,具備良好的分析能力和創(chuàng)造性思維能力,完成功能測試和界面測試,而且要能理解軟件系統(tǒng)的實現(xiàn)原理和各種使用場景,具備扎實的技術(shù)功底,能使用測試工具完成相應(yīng)的性能測試、安全性測試、兼容性測試和可靠性測試等更具挑戰(zhàn)性的任務(wù)[2]。從這個角度看,一個優(yōu)秀的測試工程師需要掌握更多的知識和技能。
三、《軟件測試》課程教學(xué)改革方案
以上可以看出,當(dāng)前高校對于測試課程的不重視,以及當(dāng)前的軟硬件設(shè)施及教學(xué)方法都不能滿足對應(yīng)用型測試技術(shù)人才的培養(yǎng)要求。為了適應(yīng)軟件產(chǎn)業(yè)發(fā)展對測試人才的迫切需要,實現(xiàn)軟件人才培養(yǎng)的持續(xù)性發(fā)展,針對軟件測試課程調(diào)整培養(yǎng)方案,展開深入的教學(xué)改革和實踐活動十分迫切和必要。
1.加大師資力量,構(gòu)建完善的軟硬件測試平臺教師素養(yǎng)的提高是軟件測試教學(xué)改革得以順利開展的前提。此前,國內(nèi)對軟件測試并不重視,致使國內(nèi)軟件測試人才短缺,大部分高校內(nèi)雖然有計算機(jī)系,但多以重開發(fā)輕測試,測試教師的專業(yè)素質(zhì)和數(shù)量都遠(yuǎn)遠(yuǎn)不夠。因此,不僅要重視對教師測試專業(yè)技術(shù)的培訓(xùn),提供更多的學(xué)習(xí)機(jī)會,也應(yīng)該認(rèn)真開展軟件測試教學(xué)研究,構(gòu)造專業(yè)的軟件測試教學(xué)團(tuán)隊。作為一門實踐性較高的課程,軟件測試必須建議專門的、完備的實驗教學(xué)體系和環(huán)境。目前,高校普遍缺乏軟件測試的軟、硬件環(huán)境,致使學(xué)生無法通過項目實踐來深入理解和提高測試相關(guān)知識和技能。
2.運用案例教學(xué),豐富軟件測試項目實戰(zhàn)案例在教學(xué)活動中,學(xué)生總是對最新、最流行的項目和案例感興趣,陳舊的案例既不能滿足當(dāng)前市場上對測試人才的技術(shù)需求,又不能很好的激起學(xué)生的興趣。運用案例教學(xué)最重要的環(huán)節(jié)就是豐富案例素材,保持案例的“鮮活性”與“生命力”。高校可以采用歷年本科畢業(yè)設(shè)計中運用了流行的技術(shù)、難度適中、功能較為完整的應(yīng)用作為軟件測試課程的測試案例,不但可以保證素材的延續(xù)性,也使得學(xué)生畢業(yè)設(shè)計完成的質(zhì)量有所提高。
3.加強(qiáng)校企合作,走教學(xué)產(chǎn)業(yè)化發(fā)展之路[3]企業(yè)需要人才,高校為企業(yè)輸送人才,校園中學(xué)習(xí)的技能最終要接收用人單位的考驗。所以與軟件企業(yè)合作,建立對口的學(xué)生實訓(xùn)基地,是應(yīng)用型人才培養(yǎng)的重要途徑。軟件測試技術(shù)的掌握與提高離不開項目實戰(zhàn),讓學(xué)生在真正的軟件工程過程中從事測試工作,不僅能使學(xué)生深刻體會到軟件測試在整個項目中的作用,掌握測試方法和技巧,對于學(xué)生的溝通交流能力、團(tuán)隊協(xié)作能力都有積極的促進(jìn)作用。
四、小結(jié)
軟件測試是保障軟件質(zhì)量,驗證軟件可靠性的重要環(huán)節(jié),其重要性不言而喻。重視軟件測試應(yīng)從企業(yè)用人的實際需求出發(fā),高校應(yīng)加強(qiáng)面向企業(yè)需求的軟件測試改革,切實培養(yǎng)學(xué)生的動手操作能力,使學(xué)生掌握最新的測試方法和技巧,讓企業(yè)需求促進(jìn)和推動高校教學(xué)發(fā)展。
參考文獻(xiàn):
[1]李靜趙志升.軟件測試專業(yè)課程體系建設(shè)和教學(xué)改革[J].教育與職業(yè),2014(1):136-137.
中圖分類號:G64文獻(xiàn)標(biāo)識碼:A文章編號:1009-3044(2012)14-3353-02
Course System Research of Software Testing Technology Based on Demand of Talent Market
ZHENG Hao, LIU Jian-fang
(Pingdingshan University, Pingdingshan 467000, China)
Abstract: This paper analyze the actual needs of talent market at first, and then set up the Curriculum system based on the software testing theory and technology. Paying more attention on the application, we want to construct course system to meet the market, which has deep foundation and strong skills. All of these promote the quality of the professional course.
Key words: Market requirement; software testing; Curriculum system
最近的年度軟件測試行業(yè)專項調(diào)查報告顯示,社會對軟件測試人才的需求越來越大,可人才市場提供的人力資源、實際能力卻不能滿足這種需求。目前國內(nèi)對測試人才職業(yè)化培養(yǎng)體系還不夠充分,現(xiàn)行的傳統(tǒng)教育體制重學(xué)歷教育,輕職業(yè)技能培訓(xùn),導(dǎo)致了軟件測試人才告急。如何結(jié)合人才市場的實際需求,構(gòu)建適合的課程培養(yǎng)體系,成為軟件測試課程改革迫在眉睫的問題。
1中國軟件測試行業(yè)的市場需求分析
在我國,軟件產(chǎn)業(yè)的興起和發(fā)展也就是這短短十幾年。在前面的興起和發(fā)展壯大階段,一般的軟件公司都是重開發(fā)輕測試,甚至存在把測試工作都放在用戶那里去做的錯誤思想;追求眼前功能的實現(xiàn),開發(fā)軟件追求“短”、“平”、“快”。不太考慮性能和功能的優(yōu)化。軟件測試以往一直被中小IT企業(yè)所忽視,只有一些知名企業(yè)才有專門的軟件測試人員。
現(xiàn)在,更多的國內(nèi)企業(yè)認(rèn)識到測試的重要性,但是由于國內(nèi)測試人才的儲備相對較少,據(jù)國家權(quán)威部門統(tǒng)計,中國軟件人才缺口超過100萬人,其中很大一部分為軟件測試人才,缺口達(dá)到30~40萬。但由于軟件測試的重要性是近幾年才被充分認(rèn)識到的,高校教育和企業(yè)培養(yǎng)都還沒有跟上,致使軟件測試需求嚴(yán)重供不應(yīng)求。
分析年度軟件測試行業(yè)專項調(diào)查報告,目前對測試人員的素質(zhì)和要求逐步提高,測試人員不僅應(yīng)掌握相關(guān)計算機(jī)知識背景、軟件工程基本知識、熟悉項目編程語言、熟悉項目技術(shù)架構(gòu)及需求內(nèi)容,而且要求工作有責(zé)任感、獨立分析能力及團(tuán)隊精神等方面。其中“動手能力”和“實際經(jīng)驗”是軟件企業(yè)在招聘軟件測試人員時最為看重的,而這也恰恰是很多求職者的“軟肋”。
2現(xiàn)有軟件測試課程體系存在的問題
2007年,我校軟件學(xué)院認(rèn)證管理中心被授予計算機(jī)軟件測試人才培養(yǎng)基地。軟件學(xué)院軟件工程專業(yè)以及軟件技術(shù)專業(yè)均開設(shè)有軟件測試相關(guān)課程。由于軟件測試是一門實踐性很強(qiáng)的課程,應(yīng)采用精講多練的原則開展教學(xué),即學(xué)生通過大量的上機(jī)實踐,循序漸進(jìn)地提高自身的軟件測試用例設(shè)計、開發(fā)、執(zhí)行能力以及軟件測試的管理能力。但在具體實踐教學(xué)組織中,教師普遍感覺有許多不如意的地方,具體存在的問題有:
1)對實踐課程的認(rèn)識程度和重視程度不夠,軟件測試開展的不夠徹底,測試過程中存在大量的不規(guī)范性;
2)缺乏合適的教材,同時教師缺乏相應(yīng)的實戰(zhàn)經(jīng)驗,導(dǎo)致教學(xué)上知識結(jié)構(gòu)不合理,教學(xué)內(nèi)容與具體應(yīng)用脫節(jié),盡管教師都能很好的講解軟件測試?yán)碚撝R,但卻由于缺乏合適的測試案例,沒有將理論教學(xué)內(nèi)容和最新相關(guān)技術(shù)結(jié)合,使得學(xué)生思維局限性大,并沒有真正提高學(xué)生自主思考的能力和創(chuàng)造性思維。
3)教學(xué)方法和手段因循守舊,學(xué)生對軟件測試職業(yè)存在一些片面的,甚至是錯誤的理解。
3基于人才市場需求的《軟件測試技術(shù)》課程體系研究
基于人才市場需求的軟件測試技術(shù)課程體系研究主要是分析目前人才市場對軟件測試行業(yè)人才的崗位需求,掌握軟件測試人才需要具備的職業(yè)素質(zhì),同時調(diào)查研究在學(xué)生對前續(xù)課程的掌握情況,以及目前所具備的相關(guān)職業(yè)素養(yǎng)的程度,計劃從技術(shù)、溝通協(xié)調(diào)能力、經(jīng)驗和技能、綜合素質(zhì)能力等方面分別對崗位需求和學(xué)生水平展開調(diào)研。
3.1課程體系目標(biāo)定位
我校軟件工程專業(yè)的培養(yǎng)目標(biāo)是培養(yǎng)適應(yīng)社會發(fā)展需求,具有扎實的計算機(jī)知識基礎(chǔ),掌握軟件工程領(lǐng)域的前沿技術(shù)和軟件開發(fā)方法,具有較強(qiáng)的軟件實踐能力和創(chuàng)新精神,具備較強(qiáng)的軟件項目的分析、設(shè)計、開發(fā)和維護(hù)能力,能夠按照工程化的原則和方法從事軟件開發(fā)和管理的應(yīng)用型人才。
作為該專業(yè)的一門專業(yè)必修課,為構(gòu)建厚基礎(chǔ)、強(qiáng)技能、注重技術(shù)應(yīng)用的適合應(yīng)用性人才培養(yǎng)的課程體系。將以軟件技術(shù)為基礎(chǔ),測試?yán)碚撆c技術(shù)為核心,進(jìn)行課程體系設(shè)置。理論教學(xué)目的是讓學(xué)生深刻理解軟件測試思想和基本理論;熟悉多種軟件的測試方法、相關(guān)技術(shù)和系統(tǒng)地軟件測試過程;會熟練編寫測試計劃,測試用例,測試報告,并熟悉幾種自動化測試工具,從而從工程化角度提高和培養(yǎng)學(xué)生從事大型軟件的測試技術(shù)和能力。
同時在實踐環(huán)節(jié),要求學(xué)生通過實驗學(xué)習(xí),培養(yǎng)與提高項目測試過程中采用的主要技術(shù)、設(shè)計測試用例、編寫測試總結(jié)報告等能力,激發(fā)學(xué)生創(chuàng)新精神和創(chuàng)新能力,具體應(yīng)達(dá)到下列基本要求。1)使學(xué)生掌握分析問題和解決問題的技巧,通過具體實驗使學(xué)生掌握常用的黑盒測試技術(shù)、白盒測試技術(shù)、自動化測試工具。2)讓學(xué)生了解測試流程,掌握測試總結(jié)報告的編寫。通過實驗使學(xué)生理解軟件缺陷的描述,并能結(jié)合項目設(shè)計出較完善的測試用例。
3)了解Web系統(tǒng)的測試范圍,使學(xué)生能在應(yīng)用場景下聯(lián)系實際和所學(xué)知識分析和解決問題,縮短理論和實踐的距離。
3.2課程教學(xué)內(nèi)容選取
結(jié)合課程體系目標(biāo)定位,該課程在教學(xué)內(nèi)容選取上主要是基于人才市場需求,厚基礎(chǔ)、強(qiáng)技能、注重技術(shù)應(yīng)用。總學(xué)時共72學(xué)時,其中理論和實踐各36學(xué)時。結(jié)合課堂教學(xué)和實踐教學(xué),軟件測試技術(shù)課程包括以下幾部分:
1)軟件測試基本理論及方法:包括軟件測試的概念、測試的原則、用例的設(shè)計、各種測試方法及技巧,測試策略。同時通過實驗掌握軟件測試的步驟、方法及常見問題的處理。
2)測試流程及文檔寫作:軟件測試流程、各階段的文檔編寫;書寫測試計、測試用例、測試報告、產(chǎn)品安裝手冊、產(chǎn)品使用手冊。在實踐環(huán)節(jié),通過SATM系統(tǒng)讓學(xué)生掌握軟件測試流程各個階段的相關(guān)技術(shù)、測試相關(guān)文檔的寫作技巧。
3)系統(tǒng)學(xué)習(xí)軟件測試的各種工具,包括:自動測試工具WinRunner;壓力測試工具LoadRunner;測試管理工具Testdirector;流程管理工具CVS;JAVA單元測試工具Junit。要求學(xué)生掌握自動化測試?yán)碚撆c方法,熟練使用常見測試工具。
4)軟件過程控制與質(zhì)量保證:軟件質(zhì)量的概念及軟件質(zhì)量管理的基本方法;測試項目的范圍管理、人員組織結(jié)構(gòu)、理解測試的配置管理、風(fēng)險管理、成本管理等。
5)項目實訓(xùn):引入具有真實企業(yè)背景的軟件測試案例,充分考慮人才市場的需求,突出強(qiáng)調(diào)工學(xué)結(jié)合的重要性。通過實際項目掌握實際工作中開發(fā)和測試的流程,使用相關(guān)工具,完成各種測試目標(biāo),實現(xiàn)軟件測試實踐環(huán)節(jié)單項專業(yè)知識與整體技能綜合運用的目標(biāo),提高測試能力和積累相關(guān)經(jīng)驗。
3.3課程教學(xué)方法設(shè)計
為構(gòu)建厚基礎(chǔ)、強(qiáng)技能、注重技術(shù)應(yīng)用的適合應(yīng)用性人才培養(yǎng)的課程體系,在教學(xué)過程中,需要把技能訓(xùn)練和職業(yè)素質(zhì)培養(yǎng)有機(jī)結(jié)合起來,注重學(xué)生綜合能力的培養(yǎng)與提高,突出強(qiáng)調(diào)職業(yè)崗位針對性。提高學(xué)生綜合運用所學(xué)知識發(fā)現(xiàn)問題、分析問題、解決問題的能力,進(jìn)而培養(yǎng)學(xué)生的技術(shù)應(yīng)用和技術(shù)創(chuàng)新能力。在教學(xué)方法設(shè)計上做了一下改進(jìn):
1)突出工學(xué)結(jié)合:在講解基本理論知識的基礎(chǔ)上,引入具有真實背景的軟件測試案例,并結(jié)合理論知識講解將案例進(jìn)行改造,使案例的分析應(yīng)用與理論知識相呼應(yīng)。目前市場上IT公司在招聘測試人員時按照所需技能的不同,將測試人員分為三個等級,分別為初級測試工程師、中級測試工程師和高級測試工程師。分析不同等級的要求,在教學(xué)過程中,主要針對初級和中級的技能要求循序漸近的展開教學(xué)。使通過此教學(xué)改進(jìn),既彌補(bǔ)了教師缺乏實戰(zhàn)經(jīng)驗帶來的不足,也使學(xué)生能較真實的接觸到實際應(yīng)用,從一定程度上實現(xiàn)了人才培養(yǎng)與市場需求的接軌。
2)強(qiáng)調(diào)團(tuán)隊合作:在教學(xué)過程中實施“1-7”模式,即在實驗課教學(xué)中,采用團(tuán)隊合作的方式,分組完成各項任務(wù)。在實驗初期由教師合理分配各團(tuán)隊成員間的任務(wù),培養(yǎng)學(xué)生的基本崗位技能。經(jīng)過兩個實驗任務(wù)的完成,每個團(tuán)隊挑出一名同學(xué)為項目組長,模擬公司招聘的形式,招聘4~6個組員組建自己的團(tuán)隊。后期實驗任務(wù)的分工由團(tuán)隊組長負(fù)責(zé)項目進(jìn)展、分工協(xié)作、制定測試計劃等工作,其他小組成員則按要求完成自己的工作,如編寫測試策略、設(shè)計測試用例、撰寫測試報告等,教師主要起引導(dǎo)作用,充分發(fā)揮以學(xué)生為主體。為了全面培養(yǎng)學(xué)生,在不同的任務(wù)中,組員通過角色互換,充分發(fā)揮其溝通能力及綜合技術(shù)能力。在學(xué)期末,通過團(tuán)隊評比,以提高平時成績的形式對表現(xiàn)優(yōu)秀的團(tuán)隊進(jìn)行獎勵。通過此教學(xué)手段,可以培養(yǎng)加強(qiáng)學(xué)生面試技巧、溝通能力、團(tuán)隊意識、競爭意識等職業(yè)素質(zhì)的培養(yǎng)。
4結(jié)束語
基于人才市場需求的《軟件測試技術(shù)》課程體系研究定位在對人才市場的實際需求分析之上,針對軟件測試人才的特點要求,把行業(yè)、企業(yè)對人才的要求轉(zhuǎn)化為教學(xué)中的具體目標(biāo)。構(gòu)建厚基礎(chǔ)、強(qiáng)技能、注重技術(shù)應(yīng)用的適合應(yīng)用性人才培養(yǎng)的課程體系。
參考文獻(xiàn):
[1]朱少民.軟件測試方法和技術(shù)[M].北京:清華大學(xué)出版社,2010.
[2]古樂.軟件測試案例與實踐教程[M].北京:清華大學(xué)出版社,2007.
[3]馬民生,馬友忠,任剛.以就業(yè)為導(dǎo)向的軟件測試實踐課課程改革[J].電腦知識與技術(shù),2010(4):241-242.