張 輝
(南寧學(xué)院高博軟件學(xué)院,廣西 南寧 530001)
隨著科學(xué)技術(shù)快速發(fā)展,新時代大學(xué)生的價值觀已經(jīng)發(fā)生了很大變化,特點是思維活躍、執(zhí)行力強,但相對浮躁、自律性差。在傳統(tǒng)“填鴨”的教學(xué)方式下,學(xué)生的思維被禁錮,自主行為受到限制,教學(xué)效果不理想。各高校正努力尋找有效的教學(xué)新思路。
BOPPPS 因其能夠培養(yǎng)學(xué)生獨立解決問題的能力而被廣泛使用。本文探討將BOPPPS教學(xué)模型應(yīng)用于軟件測試技術(shù)課程中。
軟件測試技術(shù)課程是軟件工程專業(yè)的一門專業(yè)課。課程從實用性、規(guī)范性和系統(tǒng)性出發(fā),主要介紹軟件測試技術(shù)的基本理論、方法和技術(shù)。通過本課程的學(xué)習(xí),使學(xué)生掌握軟件測試的基礎(chǔ),掌握軟件測試的步驟、方法及常見問題的處理等。課程以培養(yǎng)軟件測試工程師崗位核心能力為目標(biāo),通過設(shè)定測試實踐項目,圍繞軟件測試崗位工作過程來組織教學(xué)內(nèi)容,使學(xué)生具備軟件測試工程師基本能力。
傳統(tǒng)的“軟件測試技術(shù)”課程教學(xué)往往以理論講解為主,主要講解軟件測試的基本理論、測試的方法、測試的流程等內(nèi)容,教學(xué)內(nèi)容連貫性較低,學(xué)生缺乏學(xué)習(xí)的主動性,課堂上參與時間少,課堂教學(xué)效果不理想。因此必須提高軟件測試課堂教學(xué)質(zhì)量,設(shè)計教學(xué)環(huán)節(jié),提高學(xué)習(xí)成效。
BOPPPS 教學(xué)模式是北美地區(qū)提出的一種以參與式學(xué)習(xí)為核心的課程設(shè)計模型。它通過各種形式的課堂活動,將一次課程的教學(xué)內(nèi)容劃分為多個教學(xué)小單元,主要包含“引入—目標(biāo)—前測—參與性學(xué)習(xí)—后測—總結(jié)”六個階段,每個階段的含義如表1所示。BOPPPS教學(xué)理念為“學(xué)生為主、教師為導(dǎo)”。在教學(xué)過程中著重強調(diào)了學(xué)生全方位參與式學(xué)習(xí),老師引導(dǎo)啟發(fā),讓學(xué)生自己去思考、分析并解決問題,調(diào)動學(xué)生的主動性,培養(yǎng)學(xué)生的學(xué)習(xí)能力與創(chuàng)新能力。

表1 BOPPPS教學(xué)模型
“軟件測試技術(shù)”主要教學(xué)內(nèi)容是講述在軟件測試工作中常用的測試方法與技巧,但在當(dāng)前軟件測試技術(shù)的課程中,師生互動性行不強,學(xué)生在課堂上缺少學(xué)習(xí)興趣。把BOPPPS 模型作為實踐教學(xué)設(shè)計方法,將其應(yīng)用到到軟件測試技術(shù)的教學(xué)過程,主要目的是提升課堂教學(xué)效果,提高學(xué)生學(xué)習(xí)主觀能動性,以此提高教學(xué)質(zhì)量與激發(fā)學(xué)生學(xué)習(xí)興趣。
以下以軟件測試課程中的黑盒測試中的邊界值分析法為例,進(jìn)行BOPPPS 模型的教學(xué)過程設(shè)計。
⑴教學(xué)對象:南寧學(xué)院2019 級軟件工程專業(yè)學(xué)生作為軟件測試技術(shù)課程的教學(xué)設(shè)計實施對象。
⑵學(xué)情分析:南寧學(xué)院作為應(yīng)用型本科院校,軟件工程專業(yè)的學(xué)生側(cè)重于軟件開發(fā)的實踐操作,前修課程為JAVA 程序設(shè)計。在軟件測試技術(shù)課程中,已經(jīng)學(xué)習(xí)了等價類劃分法,對黑盒測試技術(shù)以及有一定的了解。
⑶教學(xué)任務(wù)名稱:黑盒測試技術(shù)--邊界值分析法。
⑷教學(xué)安排:兩小節(jié)課,共80分鐘。
⑸教學(xué)目標(biāo):學(xué)生掌握邊界值測試用例的設(shè)計方法。
通過導(dǎo)入介紹課程的學(xué)習(xí)內(nèi)容,時間4分鐘。一個軟件無論實現(xiàn)怎樣各種各樣豐富的功能,其內(nèi)部實現(xiàn)都不可避免的對各種各樣的數(shù)據(jù)范圍進(jìn)行界定與判斷,從而針對不同的數(shù)據(jù)范圍進(jìn)行所需的處理。而由于需求界定不準(zhǔn)確、設(shè)計不嚴(yán)密、程序書輸入錯誤等原因,對于數(shù)據(jù)邊界的判斷是軟件較容易出錯的地方,使軟件做出錯誤的處理。從而無法滿足軟件需求。針對這種情況,軟件測試中有一個測試方法叫做“邊界值法”,如何用邊界值法設(shè)計測試用例是黑盒測試中一個重要的方法。我們通過一個生活例子來引出主題,首先導(dǎo)入一張圖片,圖片中一個人在懸崖峭壁行走,然后提問同學(xué),如果長期在懸崖變聲行走,是否會有險情的發(fā)生,由此引發(fā)課堂的討論,激發(fā)課堂氛圍。
向?qū)W生介紹本課程的教學(xué)目標(biāo),時間3 分鐘。教學(xué)目標(biāo)分別從知識目標(biāo)、能力目標(biāo)以及情感目標(biāo)三個維度進(jìn)行說明。知識目標(biāo)是理解并掌握邊界值分析法設(shè)計測試用例的方法。能力目標(biāo)是靈活運用邊界值分析法,針對生活中遇到的具體情況設(shè)計測試用例,通過邊界值測試用例來檢測系統(tǒng)可能存在的缺陷。情感目標(biāo)是科學(xué)嚴(yán)謹(jǐn)?shù)墓ぷ鲬B(tài)度,認(rèn)真對待每一個工作細(xì)節(jié),認(rèn)識到軟件測試在軟件開發(fā)過程中的重要性。
首先提問學(xué)生,在生活中什么是邊界值,舉出具體例子,考試成績最高分是多少以及最低分是多少,由此引出什么是邊界值。該環(huán)節(jié)提問學(xué)生,為什么會有邊界值分析法?小組討論后,發(fā)言交流。然后舉例,軟件開發(fā)過程中,錯誤往往是發(fā)生在數(shù)據(jù)輸入或輸出臨界點上,而并非發(fā)生在數(shù)據(jù)輸入或輸出的范圍之內(nèi)。例如:程序員只處理了1-10 位的情況,忘記對10位進(jìn)行處理;程序員把≤誤寫成了<,計數(shù)器發(fā)生少計數(shù)一次。通過前測,了解學(xué)生對邊界值測試的了解程度,增加學(xué)情分析,以便在接下來的環(huán)節(jié)中有針對性的學(xué)習(xí),時長3分鐘。
該過程是在BOPPPS 過程中非常重要的教學(xué)環(huán)節(jié),時長約30分鐘。參與式學(xué)習(xí),讓學(xué)生在做中學(xué),學(xué)中做,潛移默化的接受課程知識。首先提問,在軟件測試中如何選擇邊界值數(shù)據(jù)?然后舉例說明。如“重量在20 公斤至60 公斤范圍內(nèi)的郵件”,如果測試這段程序功能,如何選擇邊界數(shù)據(jù),讓學(xué)生分組自發(fā)參加學(xué)習(xí)討論。測試數(shù)據(jù)取7個點應(yīng)取20、35 及60,還應(yīng)取20.01,59.99,19.99 及60.01 測試數(shù)據(jù)取5 個點,除了取20、35 及60,還應(yīng)取19.99 及60.01。通過實例,說明邊界值分析法的含義以及重要性,并以學(xué)習(xí)目標(biāo)為導(dǎo)向,介紹邊界條件測試用例設(shè)計法的設(shè)計過程和設(shè)計方法,選取“正好等于、剛剛大于或剛剛小于”邊界的值作為測試數(shù)據(jù),而不是選取等價類中的典型值或任意值。通過舉出不同的生活實例,來進(jìn)行設(shè)計邊界值測試用例,讓學(xué)生親身感受到邊界值測試的重要性以及測試用例的設(shè)計方法。該環(huán)節(jié)最后可借助學(xué)習(xí)通,通過隨機(jī)點名、學(xué)生自愿走上講臺、在線搶答,討論等模式活躍課堂氛圍,盡量讓每位學(xué)生都參與其中。
后測(P):主要檢驗課程的教學(xué)效果和了解學(xué)生掌握知識的情況,時間30分鐘。在課前已經(jīng)在教師機(jī)搭建了學(xué)生成績管理系統(tǒng),學(xué)生可以在學(xué)生機(jī)上登錄網(wǎng)頁,進(jìn)行系統(tǒng)測試。系統(tǒng)的主要功能是對學(xué)生的成績進(jìn)行管理及統(tǒng)計。在學(xué)生成績管理系統(tǒng)系統(tǒng)中,成績以及年齡等字段預(yù)先設(shè)置了邊界值的缺陷,讓學(xué)生通過所學(xué)的邊界值分析法來設(shè)置測試用例,三位學(xué)生為一組進(jìn)行系統(tǒng)測試,并形成一份缺陷測試報告。通過具體的實例測試,同學(xué)們課堂上相互討論,反應(yīng)都非常熱烈,能把課程所學(xué)到的知識馬上學(xué)以致用,達(dá)到了良好的教學(xué)效果。
總結(jié)(S):課堂的最后總結(jié)整節(jié)課教學(xué)內(nèi)容,提升教學(xué)效果,時間5分鐘。總結(jié)主要分三個方面進(jìn)行,首先對課堂的教學(xué)內(nèi)容以及學(xué)生的系統(tǒng)測試進(jìn)行總結(jié),指出在實驗中大多數(shù)同學(xué)出錯較多的典型問題。然后隨機(jī)挑選一個組的學(xué)生進(jìn)行發(fā)言,對當(dāng)天的教學(xué)內(nèi)容進(jìn)行總結(jié),以此促進(jìn)學(xué)習(xí)交流,讓課堂氛圍進(jìn)一步升華,也可以此了解學(xué)生的學(xué)習(xí)情況。最后,引入思政教育,說明每個同學(xué)必須養(yǎng)成良好的素質(zhì)以及發(fā)揮團(tuán)隊合作精神,才能在未來軟件測試工作中完成每一項任務(wù)。
根據(jù)應(yīng)用型本科院校的學(xué)情特點,BOPPPS 教學(xué)模式注重引導(dǎo)學(xué)生,通過環(huán)環(huán)相扣的教學(xué)設(shè)計,緊湊的教學(xué)節(jié)奏,促使課堂氛圍更加活躍。課后通過“評價-反饋-改進(jìn)”的方式,設(shè)置網(wǎng)上調(diào)查問卷來檢驗BOPPPS 教學(xué)模式的實踐效果,并針對下一輪課程教學(xué)進(jìn)行持續(xù)改進(jìn)。調(diào)查問卷如表2 所示,大多數(shù)學(xué)生認(rèn)為教學(xué)內(nèi)容設(shè)計合理,能主動跟教師反饋和交流課堂學(xué)習(xí)過程中遇到的問題。

表2 調(diào)查問卷
學(xué)期末學(xué)生匿名教學(xué)評價中,學(xué)生的課程滿意度達(dá)到了98.12%,相較于上學(xué)年學(xué)生課程滿意度88.02%,提高了10.1%。將BOPPPS 模型引入教學(xué)過程中,為軟件測試技術(shù)課程教學(xué)設(shè)計提供了實踐指導(dǎo)基礎(chǔ)。這種教學(xué)方式很大程度上提升了學(xué)生分析和解決問題的能力,激發(fā)了學(xué)生學(xué)習(xí)興趣,取得了較好的教學(xué)效果。基于BOPPPS 的教學(xué)模式突出了教學(xué)設(shè)計的科學(xué)性、理論性及系統(tǒng)性,使教師的教學(xué)設(shè)計更為合理和高效,提升整體的教學(xué)質(zhì)量。