邊奕心,趙 松,李志聰,楊梓嬋
(哈爾濱師范大學(xué) 計(jì)算機(jī)科學(xué)與信息工程學(xué)院,黑龍江 哈爾濱 150025)
軟件測(cè)試是保障軟件質(zhì)量的方式,具有動(dòng)態(tài)性和交叉性的特點(diǎn),遍布了軟件工程的整個(gè)生命周期[1]。不同于其他本科課程,軟件測(cè)試有其獨(dú)到之處,學(xué)生在學(xué)完軟件測(cè)試課程之后,未來有直接就業(yè)或者繼續(xù)深造兩個(gè)發(fā)展方向。因此,學(xué)生在學(xué)習(xí)軟件測(cè)試基本理論的基礎(chǔ)上,需要進(jìn)行大量的實(shí)踐練習(xí),才能不斷提高專業(yè)技能,為未來從事軟件測(cè)試行業(yè)的工作或者進(jìn)行軟件測(cè)試方面的研究奠定堅(jiān)實(shí)的基礎(chǔ)。
目前,國(guó)內(nèi)很多工科院校均開設(shè)了這門課程,從哈爾濱師范大學(xué)計(jì)算機(jī)科學(xué)與信息工程學(xué)院的實(shí)際教學(xué)過程來看,軟件測(cè)試僅僅大三1 個(gè)學(xué)期54 學(xué)時(shí)的學(xué)習(xí)時(shí)間,學(xué)生的學(xué)習(xí)效果并不理想。大部分學(xué)生的能力沒有達(dá)到教學(xué)目標(biāo)的要求,特別是在測(cè)試?yán)碚撜n程學(xué)習(xí)后的軟件項(xiàng)目實(shí)訓(xùn)和大四畢業(yè)設(shè)計(jì)兩個(gè)教學(xué)環(huán)節(jié)中,學(xué)生只開發(fā)軟件不做測(cè)試的現(xiàn)象比較普遍,如果教師要求增加測(cè)試部分,學(xué)生也是敷衍了事,并未做到學(xué)以致用。根本原因是學(xué)生對(duì)軟件測(cè)試很“陌生”,具體表現(xiàn)在基礎(chǔ)理論掌握不牢、不熟悉軟件測(cè)試常用術(shù)語(yǔ)、軟件測(cè)試方法不會(huì)運(yùn)用、軟件測(cè)試文檔書寫不規(guī)范等。為了解決這一問題,筆者將科研領(lǐng)域的“三支決策”思想引入軟件測(cè)試的教學(xué)領(lǐng)域,并將本科階段軟件測(cè)試的教學(xué)過程進(jìn)行擴(kuò)展,分為認(rèn)知階段、提升階段和綜合階段,分別對(duì)應(yīng)教學(xué)的3個(gè)環(huán)節(jié):課堂教學(xué)環(huán)節(jié)、項(xiàng)目實(shí)訓(xùn)環(huán)節(jié)和畢業(yè)論文環(huán)節(jié),使用MOOC 資源將三者結(jié)合為一個(gè)整體。通過這3 個(gè)階段階梯式的“磨煉”學(xué)生軟件測(cè)試的知識(shí)和技能,使學(xué)生真正掌握軟件測(cè)試的核心方法,使其既能在項(xiàng)目開發(fā)過程中熟練運(yùn)用軟件測(cè)試方法,也具備軟件測(cè)試方面研究的基本功,最終達(dá)到提高學(xué)生培養(yǎng)質(zhì)量的目的。
三支決策理論(Three-way decision)是加拿大華人學(xué)者Yiyu Yao 于2010 年首次提出[2],最初用于粗糙集領(lǐng)域的研究,解釋概率粗糙集和決策粗糙集的3 個(gè)域,后來逐步演變?yōu)橐环N思維模式。三支決策主要是用三思維作為信息處理模式,為求解復(fù)雜問題提供了一種有效的策略與方法。近年來,隨著三支決策思想的發(fā)展,其應(yīng)用研究也逐漸滲透到不同的領(lǐng)域,眾多學(xué)者已將三支決策思想轉(zhuǎn)換為一個(gè)理論系統(tǒng)、信息處理模式和計(jì)算方法[3],用于解決不同應(yīng)用領(lǐng)域的科研問題,取得了很好的效果。
傳統(tǒng)的軟件測(cè)試教學(xué)主要以課堂為主,由教師主動(dòng)講授、學(xué)生被動(dòng)接受。近年來由于“互聯(lián)網(wǎng)+”的廣泛應(yīng)用,基于MOOC 的軟件測(cè)試混合式教學(xué)模式頗受師生歡迎。目前,這種混合式教學(xué)模式只是針對(duì)課堂教學(xué)階段,在實(shí)際中,學(xué)校課堂授課時(shí)間的學(xué)時(shí)是非常有限的,而網(wǎng)上軟件測(cè)試的MOOC 資源卻十分豐富,因此,只在課堂教學(xué)階段采用MOOC 資源,并未達(dá)到真正的“混合”。
將三支決策理論應(yīng)用于本科階段軟件測(cè)試課程的教學(xué)領(lǐng)域,并結(jié)合MOOC 混合式教學(xué)方法,實(shí)現(xiàn)三支決策和MOOC 相結(jié)合的軟件測(cè)試課程教學(xué)模式(TWD-MOOC),如圖1 所示。該模式將本科階段軟件測(cè)試教學(xué)過程將分為3 個(gè)階段:認(rèn)知階段、提升階段和綜合階段,分別對(duì)應(yīng)教學(xué)的3 個(gè)環(huán)節(jié):課堂教學(xué)環(huán)節(jié)、項(xiàng)目實(shí)訓(xùn)環(huán)節(jié)和畢業(yè)論文環(huán)節(jié)。3 個(gè)環(huán)節(jié)均采用MOOC 資源,通過MOOC 資源將三者“三合為一”。
2.1.1 學(xué)習(xí)內(nèi)容
課堂教學(xué)是軟件測(cè)試學(xué)習(xí)過程的認(rèn)知階段,是學(xué)生對(duì)軟件測(cè)試從“陌生”到“熟識(shí)”的過程。這個(gè)階段的學(xué)習(xí)內(nèi)容是軟件測(cè)試的基本理論與實(shí)踐(見表1),具體內(nèi)容為軟件測(cè)試的背景知識(shí)、軟件測(cè)試戰(zhàn)術(shù)、軟件測(cè)試策略和軟件測(cè)試文檔。
圖1 三支決策和MOOC 相結(jié)合的軟件測(cè)試課程教學(xué)模式
教學(xué)模式采用“課前預(yù)習(xí)+課堂教學(xué)+課后作業(yè)”的形式完成。首先,任課教師選取線上內(nèi)容,讓學(xué)生做好課前預(yù)習(xí)。然后,在課堂教學(xué)活動(dòng)中,教師通常采用提問和練習(xí)的方式檢驗(yàn)學(xué)生預(yù)習(xí)的效果,并針對(duì)薄弱環(huán)節(jié)進(jìn)行講解和輔導(dǎo)。最后,課后一般有需要完成的測(cè)驗(yàn)與作業(yè),學(xué)生可根據(jù)學(xué)習(xí)進(jìn)度按時(shí)完成課程作業(yè)。作業(yè)成績(jī)可以通過在線自動(dòng)評(píng)分、自我評(píng)分、學(xué)生之間互相評(píng)分等方式獲得。在學(xué)習(xí)的同時(shí),學(xué)生可根據(jù)自身對(duì)知識(shí)的掌握程度參加線上的小測(cè)試、期中和期末考試。通過線上內(nèi)容的學(xué)習(xí)和考試后,學(xué)生可以獲得課程合格證書。學(xué)生線上成績(jī)作為任課教師期末評(píng)分的依據(jù),最終的期末考試還是由學(xué)生參加學(xué)校統(tǒng)一安排的考試,由任課教師評(píng)定成績(jī)。
表1 各個(gè)階段的混合式學(xué)習(xí)內(nèi)容
2.1.2 考核方式
根據(jù)軟件工程的教學(xué)培養(yǎng)目標(biāo)、考試大綱和軟件測(cè)試課程的類型以及特點(diǎn),本課程的考核內(nèi)容應(yīng)從知識(shí)、能力、素質(zhì)三方面進(jìn)行考核,且學(xué)生的學(xué)習(xí)能力、創(chuàng)新能力和綜合素質(zhì)等指標(biāo)也作為評(píng)分依據(jù)[4]。
傳統(tǒng)的軟件測(cè)試考核方式是過程性評(píng)價(jià)和終結(jié)性評(píng)價(jià)的比例為4∶6。但加入MOOC 內(nèi)容后,學(xué)生的過程性學(xué)習(xí)內(nèi)容增加,為了更加客觀的評(píng)定學(xué)生的學(xué)習(xí)成績(jī),突出學(xué)習(xí)過程的重要性,過程性評(píng)價(jià)和終結(jié)性評(píng)價(jià)的比例變?yōu)?∶4。其中過程考核成績(jī)由課堂表現(xiàn)、在線學(xué)習(xí)評(píng)價(jià)、實(shí)際操作和軟件測(cè)試綜合實(shí)踐4 個(gè)部分構(gòu)成,占總成績(jī)的60%,期末考試作為終結(jié)性評(píng)價(jià)占40%,由任課教師評(píng)定。各部分內(nèi)容所占比例及說明見表2。
表2 分為4 個(gè)部分,第一部分:課堂表現(xiàn)由提問+課堂討論的形式構(gòu)成,學(xué)生分成小組,提問的內(nèi)容是學(xué)生課前預(yù)習(xí)的部分,對(duì)學(xué)生有疑問或是回答不準(zhǔn)確的部分,先進(jìn)行組內(nèi)和組間討論,然后由教師進(jìn)行講解和輔導(dǎo),這部分成績(jī)占總成績(jī)的5%。第二部分:在線學(xué)習(xí)評(píng)價(jià)由測(cè)驗(yàn)+在線討論+作業(yè)構(gòu)成,隨堂測(cè)驗(yàn)占5%,在線討論占5%,作業(yè)占10%,均由MOOC 平臺(tái)記錄成績(jī),這一部分學(xué)生可自行安排時(shí)間完成。第三部分:實(shí)際操作,由于這一部分線上平臺(tái)沒有涉及,所以要求學(xué)生線下完成,學(xué)生分別使用Junit測(cè)試工具對(duì)軟件進(jìn)行單元測(cè)試和使用Loadrunner測(cè)試工具對(duì)軟件進(jìn)行性能測(cè)試,單元測(cè)試部分占10%,性能測(cè)試部分占10%,成績(jī)由任課教師評(píng)定。第四部分:軟件測(cè)試綜合實(shí)踐,要求學(xué)生對(duì)一個(gè)醫(yī)院信息管理系統(tǒng)(HIS)進(jìn)行綜合測(cè)試,由于這一部分綜合性較強(qiáng),學(xué)生需線下完成,占總成績(jī)的15%,由任課教師評(píng)定成績(jī)。
經(jīng)過理論教學(xué)和常規(guī)實(shí)踐教學(xué)過程,學(xué)生掌握了軟件測(cè)試的理論基礎(chǔ),并具備了基本的操作技能。項(xiàng)目實(shí)訓(xùn)是培養(yǎng)和鍛煉學(xué)生綜合運(yùn)用本課程及相關(guān)課程的知識(shí)解決實(shí)際工程問題的能力[5]。實(shí)訓(xùn)的項(xiàng)目通常較小、功能也較簡(jiǎn)單,目的是使學(xué)生理解和掌握軟件測(cè)試技術(shù)和各種具體的測(cè)試方法在項(xiàng)目中的簡(jiǎn)單應(yīng)用,并能撰寫簡(jiǎn)單并符合規(guī)范的測(cè)試文檔,為后續(xù)的畢業(yè)設(shè)計(jì)做好準(zhǔn)備。哈爾濱師范大學(xué)計(jì)算機(jī)學(xué)院采用文獻(xiàn)[5]提出的方法進(jìn)行實(shí)訓(xùn)教學(xué)環(huán)節(jié):由軟件公司給出項(xiàng)目需求(這些項(xiàng)目都是公司已經(jīng)完成或正在做的項(xiàng)目),并由公司的員工到學(xué)校對(duì)學(xué)生進(jìn)行簡(jiǎn)單的需求講解和技術(shù)輔導(dǎo)。學(xué)生自由組合為小組,選擇實(shí)訓(xùn)題目(每組完成一個(gè)題目,題目不可重復(fù)),分角色進(jìn)行,在規(guī)定時(shí)間內(nèi)完成。
項(xiàng)目實(shí)訓(xùn)開始前2 周,教師根據(jù)公司給的項(xiàng)目需求指定學(xué)生學(xué)習(xí)MOOC 內(nèi)容(見表1),這個(gè)階段的學(xué)習(xí)內(nèi)容主要是單元測(cè)試和集成測(cè)試的案例部分,其中,軟件測(cè)試文檔學(xué)生需再次學(xué)習(xí),當(dāng)然學(xué)生也可依據(jù)自身實(shí)際選擇MOOC 內(nèi)容進(jìn)行學(xué)習(xí)。
實(shí)訓(xùn)開始后,項(xiàng)目需求由公司提供,并給出概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)說明書和測(cè)試計(jì)劃、測(cè)試用例設(shè)計(jì)的模板,文檔的具體內(nèi)容以及缺陷跟蹤等都由學(xué)生獨(dú)立完成。學(xué)生在學(xué)習(xí)相關(guān)測(cè)試案例后,可以直接仿照案例,對(duì)實(shí)訓(xùn)題目進(jìn)行測(cè)試,避免了測(cè)試的盲目性和隨機(jī)性。
在項(xiàng)目實(shí)訓(xùn)的答辯環(huán)節(jié),教師結(jié)合項(xiàng)目的完成情況對(duì)學(xué)生進(jìn)行綜合評(píng)價(jià)。項(xiàng)目實(shí)訓(xùn)成績(jī)?cè)u(píng)價(jià)方案是:MOOC 視頻與資源的自學(xué)完成度以及線上測(cè)試15%,概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)說明書和測(cè)試計(jì)劃、測(cè)試用例35%,程序演示30%,答辯表述20%。
表2 課程考核評(píng)價(jià)方法
本科畢業(yè)設(shè)計(jì)是理工科大學(xué)最后的實(shí)踐部分,目的是培養(yǎng)學(xué)生工程實(shí)踐能力、理論研究能力和創(chuàng)新意識(shí)[6]。在這個(gè)階段,學(xué)生真正從工程項(xiàng)目的角度,從最初的需求分析直到最后項(xiàng)目交付等一系列軟件工程階段,實(shí)踐一次完整的軟件開發(fā)和測(cè)試過程,感受軟件測(cè)試項(xiàng)目的工作流程和實(shí)施細(xì)節(jié),并獨(dú)立撰寫各種測(cè)試文檔,達(dá)到獨(dú)立完成軟件測(cè)試任務(wù)的目的,是即將進(jìn)入職場(chǎng)的充分鍛煉。
在畢業(yè)設(shè)計(jì)的選題階段,教師指定學(xué)生學(xué)習(xí)MOOC 內(nèi)容(見表1),功能測(cè)試、性能測(cè)試和移動(dòng)應(yīng)用測(cè)試三部分是這個(gè)階段的學(xué)習(xí)內(nèi)容,其中每一部分的測(cè)試案例都是國(guó)內(nèi)知名公司和企業(yè)的實(shí)際測(cè)試項(xiàng)目,并由公司高管“現(xiàn)身說法”。其中,第一階段的軟件測(cè)試文檔學(xué)生也需再次學(xué)習(xí)。雖然,此階段的MOOC 內(nèi)容,由于學(xué)生不了解企業(yè)項(xiàng)目的業(yè)務(wù)流程而較難理解和接受,但其嚴(yán)格的測(cè)試過程和規(guī)范的文檔寫作對(duì)學(xué)生順利完成畢業(yè)設(shè)計(jì)有很大幫助。
畢業(yè)答辯環(huán)節(jié),為了檢驗(yàn)學(xué)生綜合運(yùn)用軟件測(cè)試知識(shí)的能力,成績(jī)?cè)u(píng)價(jià)方案如下:MOOC 視頻與資源的自學(xué)完成度以及線上測(cè)試占30%,學(xué)生至少使用2 種以上自動(dòng)化測(cè)試工具對(duì)所做項(xiàng)目進(jìn)行測(cè)試占35%,測(cè)試計(jì)劃和測(cè)試用例文檔撰寫準(zhǔn)確詳實(shí)占35%。
隨著國(guó)家對(duì)軟件測(cè)試人員的要求不斷提高,軟件測(cè)試課程的地位也在逐年變化,由原來的選修課到未來幾年內(nèi)即將成為核心課。根據(jù)目前哈爾濱師范大學(xué)軟件測(cè)試課程實(shí)際教學(xué)過程中存在的問題,將科研領(lǐng)域的三支決策思想引入教學(xué)領(lǐng)域,并結(jié)合MOOC 混合式教學(xué)方式,提出三支決策和MOOC 相結(jié)合的軟件測(cè)試教學(xué)模式(TWDMOOC),該模式將原本分離的教學(xué)、實(shí)訓(xùn)和畢業(yè)設(shè)計(jì)3 個(gè)環(huán)節(jié)通過MOOC 資源整合為一個(gè)整體,階梯式的“磨煉”學(xué)生軟件測(cè)試的知識(shí)和技能,目的是使學(xué)生真正掌握軟件測(cè)試的核心方法,使其既能在項(xiàng)目開發(fā)過程中熟練運(yùn)用軟件測(cè)試方法,也具備軟件測(cè)試方面研究的基本功。
目前,采用線上已有的MOOC 資源進(jìn)行混合式教學(xué),未來筆者將結(jié)合哈爾濱師范大學(xué)計(jì)算機(jī)學(xué)院的實(shí)際教學(xué)情況以及本文提出的教學(xué)模式的具體實(shí)施情況,開發(fā)自己的軟件測(cè)試MOOC資源,使其緊密結(jié)合學(xué)生的學(xué)習(xí)和實(shí)習(xí)情況,從而更好地進(jìn)行軟件測(cè)試課程的教學(xué),提高學(xué)生培養(yǎng)的質(zhì)量。