余久久,張佑生
(安徽三聯(lián)學(xué)院計算機工程學(xué)院,安徽合肥 230601)
教學(xué)軟件測試過程模型研究及應(yīng)用
余久久,張佑生
(安徽三聯(lián)學(xué)院計算機工程學(xué)院,安徽合肥 230601)
教學(xué)軟件的開發(fā)已相對成熟,但在測試方面,尚未形成完善的測試過程模型或體系。在對教學(xué)軟件所具有的教學(xué)性、人機交互性與科學(xué)性三大共性特點深入分析的基礎(chǔ)上,充分結(jié)合了軟件工程領(lǐng)域中的軟件測試流程,遵循“測試與開發(fā)活動同時貫穿于軟件生命周期”的思想,提出一個由教學(xué)需求設(shè)計、測試用例設(shè)計、教學(xué)設(shè)計、軟件設(shè)計、單元與集成測試、編碼、綜合測試、教學(xué)評價等涵蓋了軟件開發(fā)、測試及評價活動共同組成的針對教學(xué)軟件的測試過程模型,并通過實際測試項目予以應(yīng)用實現(xiàn)。
教學(xué)軟件;測試;用例;需求;教學(xué)設(shè)計;評價;模型
教學(xué)軟件是指計算機輔助教學(xué)使用的程序或軟件,通過計算機呈現(xiàn)教學(xué)內(nèi)容、結(jié)構(gòu)和教師教學(xué)意圖,指導(dǎo)和控制教學(xué)活動,接受學(xué)生要求與回答,存儲有關(guān)教學(xué)資料進行教和學(xué)的活動等[1],包括以某種計算機文件格式(如.PPT格式、.AVI格式、.MPG格式等)制作出的多媒體教學(xué)課件、基于網(wǎng)絡(luò)環(huán)境下的課程學(xué)習(xí)系統(tǒng)、網(wǎng)絡(luò)教學(xué)平臺、針對各類學(xué)科的教學(xué)模擬軟件、課堂上教師使用的教學(xué)輔助類軟件以及學(xué)生課外使用的各種自學(xué)輔助類軟件等。教學(xué)軟件表面上體現(xiàn)出功能模塊的開發(fā),實質(zhì)上蘊含著以符合使用者思維習(xí)慣和學(xué)習(xí)需要的教學(xué)目標(biāo)分析與設(shè)計、學(xué)習(xí)過程的設(shè)計、教學(xué)內(nèi)容組織等[2]。教學(xué)軟件的開發(fā)過程需歷經(jīng)反復(fù)迭代,其中較為典型的開發(fā)模型有三重螺旋開發(fā)模型[3]、原型法開發(fā)模型[4]、原型與螺旋相結(jié)合的開發(fā)模型[5]、教學(xué)軟件RUP改進模型[6]等。
伴隨著對教學(xué)軟件的不斷使用,有關(guān)對軟件產(chǎn)品自身質(zhì)量的關(guān)注問題也接踵而來,有效的教學(xué)軟件測試活動將成為其開發(fā)過程中必不可少的質(zhì)量保證手段。軟件測試過程模型即在測試實踐的基礎(chǔ)上,有機結(jié)合相應(yīng)的軟件開發(fā)活動所總結(jié)和抽象出的一系列測試活動規(guī)律。與軟件開發(fā)過程一樣,軟件測試過程同樣遵循軟件工程原理和管理學(xué)思想等[7]。近幾年,軟件測試行業(yè)在測試V模型、W模型、X模型、H模型與前置模型等傳統(tǒng)測試過程模型所存在局限性的基礎(chǔ)上又提出了一系列改進的測試過程模型[8],所改進的測試模型在一定程度上體現(xiàn)了各測試活動之間以及與開發(fā)活動的關(guān)聯(lián)性,但是僅局限于對傳統(tǒng)軟件工程階段(計劃階段,需求分析,設(shè)計階段,實現(xiàn)階段,測試階段,運行維護)[9]測試活動的研究,并未形成在對教學(xué)軟件特點及生存周期進行細致分析的基礎(chǔ)上而提出相應(yīng)的測試過程模型或體系。本文把教學(xué)軟件共性特點與軟件工程領(lǐng)域中的軟件測試過程有機結(jié)合,提出一個針對教學(xué)軟件的測試過程模型,并應(yīng)用到具體的教學(xué)軟件測試項目實例中。
不同類型的教學(xué)軟件具有不同的應(yīng)用方式,其功能及表現(xiàn)形式也各具特點,總體來說,具有教學(xué)性、人機交互性、科學(xué)性等三個共性特點[6]。對教學(xué)軟件在實際使用中所開展的各種教學(xué)活動是否具備科學(xué)性的評測準(zhǔn)則,通常根據(jù)軟件的教學(xué)目標(biāo)對教學(xué)過程及結(jié)果進行價值判斷,并成為教學(xué)決策服務(wù)的活動,也是研究教師教學(xué)與學(xué)生學(xué)習(xí)的價值過程,主要體現(xiàn)在教學(xué)設(shè)計(教學(xué)過程與活動設(shè)計是否合理、媒體呈現(xiàn)方式是否科學(xué)、軟件承載的知識內(nèi)容是否符合教學(xué)要求等)和教學(xué)使用(軟件使用環(huán)境是否穩(wěn)定、作用效果是否明顯等)兩個方面[1]。具體來說,對教學(xué)內(nèi)容、教學(xué)方法、教學(xué)環(huán)境、軟件使用者等諸多因素的評價構(gòu)成了教學(xué)軟件評價的主體,但最主要還是對軟件的使用過程與使用效果進行評價??傊?,教學(xué)軟件測試過程中不能缺少對教學(xué)性、人機交互性、科學(xué)性三個方面的測試或評測,這是常規(guī)軟件測試所不具備的測試要素。
科學(xué)合理地設(shè)計測試過程模型需要在細致分析被測軟件自身特點及實現(xiàn)目的的基礎(chǔ)上,充分結(jié)合軟件開發(fā)與測試流程,通過測試活動的早期介入來把握軟件開發(fā)全過程。能夠?qū)y試計劃、測試用例設(shè)計、測試執(zhí)行、測試分析與反饋等一系列活動有效結(jié)合在一起,盡可能早地暴露出軟件設(shè)計中的錯誤[10]。在一個能夠有效描述教學(xué)軟件測試過程模型中僅具備測試流程要素是遠遠不行的,重要的是必須結(jié)合開發(fā)設(shè)計活動進行合理的組織,形成一個完整的過程體系。遵循“測試先行”的思想,測試活動與開發(fā)活動的關(guān)聯(lián)性在模型中也要有一定程度的體現(xiàn)?;诖?,本文根據(jù)軟件工程領(lǐng)域中軟件測試的各項活動并充分結(jié)合教學(xué)軟件所反映出的教學(xué)性、人機交互性、科學(xué)性三個方面特點,提出了教學(xué)軟件測試過程模型,如圖1所示。模型要求軟件工程師、教育技術(shù)專家、軟件測試人員、美工人員、學(xué)科教師及學(xué)生等項目關(guān)系人一開始便介入教學(xué)軟件的生命周期中,測試與開發(fā)同步進行,共同參與軟件開發(fā)全過程。
圖1 教學(xué)軟件測試過程模型
2.1 教學(xué)需求分析
軟件工程領(lǐng)域的需求工程理論是教學(xué)軟件需求分析研究的重要基礎(chǔ)[11]。除了從軟件產(chǎn)品自身功能和非功能實現(xiàn)角度進行需求獲取之外,教學(xué)軟件的需求更多的體現(xiàn)在教學(xué)需求分析方面,以實現(xiàn)有效教學(xué)為目的來體現(xiàn)最終的教育價值。教學(xué)需求分析是對教學(xué)軟件類型及所適用領(lǐng)域特征的分析過程,主要包括與教學(xué)目標(biāo)分析和使用者特征分析兩方面內(nèi)容。教學(xué)目標(biāo)分析是確定軟件教學(xué)需求的重要依據(jù)。教師由實際教學(xué)目標(biāo)選擇與設(shè)計教學(xué)總體方向,學(xué)習(xí)內(nèi)容、教與學(xué)的活動方式、教學(xué)策略和教學(xué)模式、學(xué)習(xí)環(huán)境的構(gòu)建、學(xué)習(xí)評價等因素,這些都圍繞教學(xué)目標(biāo)而展開。使用者特征分析指軟件開發(fā)前充分分析軟件使用者狀況,包括對使用者智力因素(學(xué)習(xí)起點水平、認(rèn)知能力、認(rèn)知發(fā)展特征等)與非智力因素(興趣、秉性、情感、性格等)的分析[12]。信息化環(huán)境中對使用者的計算機操作能力進行充分評估也是對使用者特征分析的重要組成部分,既保證了教學(xué)軟件的開發(fā)具有針對性,也為教學(xué)軟件人機交互性的測評提供直接依據(jù)。
從教學(xué)目標(biāo)和使用者特征兩方面出發(fā)制定出合理完善的教學(xué)軟件評價指標(biāo)體系是教學(xué)需求分析過程的重要部分,對于同一教學(xué)軟件,制定不同的教學(xué)目標(biāo)或者對不同層次的使用者產(chǎn)生相應(yīng)的實用價值會有所差異。例如,某網(wǎng)絡(luò)課程學(xué)習(xí)系統(tǒng),若僅作為課堂上用來教學(xué)演示的工具或平臺,只要注重瀏覽頁面中課程信息內(nèi)容呈列方式是否美觀、大方,標(biāo)題是否醒目,文字色彩是否鮮明即可。但是,若以學(xué)生操作與練習(xí)為主要教學(xué)目的,則在瀏覽頁面的課程信息內(nèi)容中需要實現(xiàn)對學(xué)生進行練習(xí)或自測的功能并予以結(jié)果反饋。此外,對不同層次的使用者而言,教學(xué)軟件同一功能在信息表現(xiàn)形式上也會略有側(cè)重。例如對于低年級學(xué)生,在教學(xué)軟件練習(xí)或自測功能上要設(shè)計或表現(xiàn)出一定的“娛樂性”。軟件評價指標(biāo)的具體制訂可以依據(jù)教學(xué)軟件類型、學(xué)科特點、教學(xué)目標(biāo)、用戶特征等因素,在共同評價框架的基礎(chǔ)上設(shè)計一級、二級或多級評價指標(biāo)。
教學(xué)軟件在實際使用中還要受到如教學(xué)環(huán)境因素、教師因素、學(xué)生因素等的影響,這要求學(xué)科教師與需求分析人員共同參與到需求分析全過程中,有效引導(dǎo)和確定需求,尤其不能忽視對用戶未意識到的隱性需求(如教學(xué)對象的興趣愛好、軟件的聲光表現(xiàn)形式與實際播放環(huán)境的效果等)的挖掘,從而很好地將學(xué)科教學(xué)思想貫穿于軟件之中。
2.2 測試用例設(shè)計
測試用例設(shè)計是針對軟件特定的功能或其功能組合制定一系列測試方案(步驟)與對應(yīng)的預(yù)期結(jié)果,并編寫成固定格式的測試用例文檔來指導(dǎo)隨后的實際測試活動[13],來源于被測軟件的需求分析,不僅是軟件設(shè)計的參照,也是軟件測試執(zhí)行的基礎(chǔ),并且在實際的軟件設(shè)計及測試過程中不斷的被復(fù)用與完善。因為不同使用目的的教學(xué)軟件決定了軟件的不同類型,如演示型教學(xué)軟件、教學(xué)模擬型軟件、網(wǎng)絡(luò)課程型教學(xué)軟件、評測練習(xí)型教學(xué)軟件等。不同類型的教學(xué)軟件的結(jié)構(gòu)、設(shè)計理念及教學(xué)目是有所不同的,具有各自不同的優(yōu)勢為教和學(xué)的過程提供有效的支持。針對教學(xué)軟件的不同類型,在設(shè)計測試用例的預(yù)期結(jié)果方面要有所側(cè)重。例如,對于同一個更改頁面文字功能模塊的測試用例,普通軟件要求通過測試執(zhí)行的預(yù)期結(jié)果是文字被更改成功即可。但是,演示型教學(xué)軟件要求預(yù)期結(jié)果是文字更改成功且更改后的頁面文字呈現(xiàn)方式要美觀大方;模擬型教學(xué)軟件要求預(yù)期結(jié)果是文字更改成功且同時能動態(tài)模擬出文字被更改的全過程;評測練習(xí)型教學(xué)軟件則要求在文字成功更改后還能顯現(xiàn)出某種娛樂性的“獎賞”信息用來表示更改正確的提示等。根據(jù)教學(xué)軟件類型而不是軟件的通用功能來設(shè)計測試用例的過程應(yīng)該由軟件測試人員、教育專家、學(xué)科教師共同完成,這為指導(dǎo)隨后的教學(xué)軟件測試執(zhí)行起到重要作用,也是普通軟件的測試用例設(shè)計要素中所不具備的。
2.3 教學(xué)設(shè)計與軟件設(shè)計
教學(xué)設(shè)計與軟件設(shè)計是軟件開發(fā)活動的重要組成部分,由軟件工程師、資深教育技術(shù)專家與學(xué)科教師等共同參與,二者并發(fā)進行來驗證教學(xué)需求并不斷反饋與優(yōu)化。教學(xué)設(shè)計以教學(xué)過程為研究對象,運用系統(tǒng)的方法分析與研究教學(xué)中的問題與需求,設(shè)計解決它們的教學(xué)策略、教學(xué)方法及教學(xué)步驟,并對教學(xué)效果做出評價的計劃過程和操作程序[4]。教學(xué)內(nèi)容設(shè)計(由教學(xué)目標(biāo)設(shè)計教學(xué)大綱與教學(xué)內(nèi)容,科學(xué)的組織及確立教學(xué)知識體系結(jié)構(gòu))、教學(xué)策略設(shè)計(由教學(xué)目標(biāo)合理組織教學(xué)過程,選擇具體教學(xué)方法,制定教師與學(xué)生所遵守的教學(xué)行為等)、媒體展現(xiàn)設(shè)計(根據(jù)教學(xué)策略所采用教學(xué)過程中適合呈現(xiàn)出的相應(yīng)的聲音、圖像、動畫等媒體信息)與教學(xué)評價設(shè)計(根據(jù)教學(xué)軟件的用途或功能,而設(shè)計相應(yīng)的軟件評價指標(biāo)體系)組成了教學(xué)設(shè)計的內(nèi)涵,應(yīng)該由資深教育技術(shù)專家與學(xué)科教師一起完成。軟件設(shè)計即教學(xué)軟件系統(tǒng)結(jié)構(gòu)設(shè)計,由專業(yè)軟件工程師或系統(tǒng)分析師來完成,設(shè)計過程分為概要設(shè)計和詳細設(shè)計兩個層次。概要設(shè)計即系統(tǒng)總體功能模塊的劃分設(shè)計,也稱為總體設(shè)計。詳細設(shè)計即對軟件中每個模塊所需實現(xiàn)的具體功能而采用相應(yīng)技術(shù)及流程的設(shè)計。軟件設(shè)計的內(nèi)容主要包括軟件的數(shù)據(jù)庫設(shè)計(軟件數(shù)據(jù)庫的存儲方式以及數(shù)據(jù)庫邏輯結(jié)構(gòu)與物理結(jié)構(gòu))、網(wǎng)絡(luò)架構(gòu)設(shè)計(軟件架構(gòu)網(wǎng)絡(luò)的計算模式、基于網(wǎng)絡(luò)的方案等)、用戶界面設(shè)計(界面對象、動作及屏幕布局設(shè)計原則)、人機交互設(shè)計(設(shè)計用戶與軟件進行信息雙向交流的方式、過程及交互準(zhǔn)則)等。
2.4 編碼
編碼指選擇一種或幾種編程語言來實現(xiàn)軟件設(shè)計階段的設(shè)計方案,使其變成初始可運行的目標(biāo)系統(tǒng)[14]。教學(xué)軟件作為一種計算機輔助教學(xué)使用的程序或軟件,其開發(fā)及制作的直接藍本-腳本的編寫與實現(xiàn)過程也屬于計算機軟件編碼范疇。腳本一般可以分為文字稿本與制作腳本,學(xué)科教師把教學(xué)思想、教學(xué)內(nèi)容與教學(xué)要求等通過文字稿本進行詳細設(shè)計與描述,而制作腳本則由軟件程序員按照文字稿本的內(nèi)容在特定的軟件開發(fā)平臺上予以編譯、連接與調(diào)試,開發(fā)出相應(yīng)的程序腳本,來實現(xiàn)教學(xué)軟件的體系結(jié)構(gòu)與教學(xué)功能。
2.5 單元與集成測試
教學(xué)軟件的單元測試與集成測試只著眼于軟件自身功能實現(xiàn),如軟件的構(gòu)造性或可靠性等,而不考慮測試或驗證軟件的教育教學(xué)因素。與普通軟件一樣,教學(xué)軟件也是由眾多單元來實現(xiàn)軟件的功能。一個測試單元,可以是軟件代碼中的一個程序、一個類或一個函數(shù),也可以是由某幾個單元組成的一個更大的單元(模塊、組件)。教學(xué)軟件單元測試的目標(biāo)純粹是從軟件自身屬性或軟件系統(tǒng)功能設(shè)計的角度出發(fā)來測試代碼在功能實現(xiàn)方面是否正確,并確保代碼在結(jié)構(gòu)上的安全與可靠,而不考慮軟件的教育教學(xué)因素。單元測試一般與軟件編碼同步,主要由程序員完成,可以較早發(fā)現(xiàn)軟件缺陷,縮短開發(fā)周期。集成測試通常是在程序中所有的單元(模塊)測試通過后把若干單元聚集在一起進行的局部測試活動,旨在驗證諸單元的組合能否正常工作及各單元之間的接口功能是否正確。集成測試的方式可以采用自頂向下、自底向上或混合集成策略等。實際測試中也可以適當(dāng)?shù)陌涯承﹩卧獪y試延遲,或者把作為軟件子系統(tǒng)一部分的模塊單元測試內(nèi)容延遲至對該子系統(tǒng)集成測試階段進行,從而有效提高測試效率[15]。
2.6 綜合測試
教學(xué)軟件的綜合測試是在單元測試與集成測試的基礎(chǔ),從軟件操作的層面結(jié)合之前由教學(xué)軟件的類型所設(shè)計的測試用例來進行的測試活動,以黑盒測試方式進行。人機交互性的測試是綜合測試環(huán)節(jié)的重點,從軟件操作的角度出發(fā),主要檢測教學(xué)軟件的人機交互功能。測試諸如當(dāng)軟件界面或?qū)υ捒蛑羞M行輸入字符、提交及修改表單等操作后,軟件能否及時給出有效響應(yīng);數(shù)據(jù)的輸入是否遵循特定的輸入方式或已輸入數(shù)據(jù)是否可以按照某一搜索方式被順利的查詢;提交新的數(shù)據(jù)后頁面能否及時刷新等。綜合測試中也不能遺漏對構(gòu)成教學(xué)軟件一些常用的功能(如上傳下載功能、頁面瀏覽功能、測評反饋功能等)方面的測試,這些測試大都以黑盒測試為主。此外,綜合測試中還應(yīng)該對教學(xué)軟件的界面導(dǎo)航與穩(wěn)定性方面進行測試。導(dǎo)航測試主要檢測界面中的導(dǎo)航按鈕(前一頁、下一頁、返回等)功能是否正確,是否存在空鏈接,界面中各級菜單的鏈接是否有效,從某一隨機的頁面中是否能便捷的返回指定頁面等。穩(wěn)定性測試用來測試安裝在不同軟、硬件環(huán)境下,教學(xué)軟件能否正常運行,是否兼容網(wǎng)絡(luò)環(huán)境及其他軟件程序,教學(xué)軟件出現(xiàn)系統(tǒng)故障后是否發(fā)生數(shù)據(jù)丟失現(xiàn)象,是否具備重新恢復(fù)正常運行的能力等。
2.7 教學(xué)評價
教學(xué)評價即依據(jù)軟件的教學(xué)目標(biāo)對教學(xué)過程及結(jié)果進行價值判斷并為教學(xué)決策服務(wù)的活動,是研究教師的教和學(xué)生的學(xué)的價值的過程[16]。教學(xué)評價是教學(xué)軟件測試過程中獨特的環(huán)節(jié),也是測試中不可或缺的部分,旨在測評教學(xué)軟件所表征的教學(xué)內(nèi)容是否具備科學(xué)性,是否達到教學(xué)或?qū)W習(xí)的目的,以促進教學(xué)設(shè)計。與由軟件測試人員或相關(guān)測試機構(gòu)在軟件交付前在模擬用戶使用環(huán)境下對軟件系統(tǒng)功能測試有所不同,教學(xué)評價是對軟件教學(xué)或?qū)W習(xí)的過程中就所涉及到的教學(xué)內(nèi)容、教學(xué)方法、軟件使用者、教學(xué)環(huán)境等諸多因素是否遵循人類認(rèn)知規(guī)律科學(xué)性的評測行為,主要體現(xiàn)在對教學(xué)設(shè)計和教學(xué)使用的評價兩個方面。教學(xué)設(shè)計評價主要側(cè)重于評測軟件教學(xué)內(nèi)容的設(shè)計及組織是否遵循學(xué)生認(rèn)知的基本規(guī)律,軟件的教學(xué)目標(biāo)或使用對象是否明確,是否具備良好的交互與反饋功能等,主要由教育技術(shù)專家來評判。具體可以從教學(xué)內(nèi)容的選題、教學(xué)理念、教學(xué)對象、教學(xué)目標(biāo)、內(nèi)容組織與結(jié)構(gòu)、學(xué)習(xí)活動、資源拓展、興趣激勵與監(jiān)控、交互、練習(xí)與評測等方面有選擇地實施評價過程[1]。教學(xué)使用評價即由使用軟件的教師與學(xué)生來評判教學(xué)軟件的使用效果,側(cè)重于有效輔助課堂教學(xué)效果、增強使用興趣、減輕教學(xué)或?qū)W習(xí)負擔(dān)、是否支持探究性學(xué)習(xí)等方面。從軟件設(shè)計者角度來看,軟件教學(xué)評價過程有助于發(fā)現(xiàn)問題,調(diào)整設(shè)計開發(fā)方向,提高開發(fā)質(zhì)量。從使用者角度來看,該過程可以為其選擇合適的教學(xué)資源,激發(fā)學(xué)習(xí)興趣,提高學(xué)習(xí)效率[6]。
“《辦公自動化》網(wǎng)絡(luò)課程學(xué)習(xí)系統(tǒng)”以作者所在學(xué)院非計算機類專業(yè)學(xué)生為主要用戶,任課教師通過文本、圖片、音樂、動畫等各種媒體形態(tài)所呈現(xiàn)出的該學(xué)科知識的教學(xué)內(nèi)容設(shè)計來為學(xué)生課外自主選修該課程內(nèi)容提供服務(wù)。項目團隊由教育技術(shù)專家、學(xué)科教師、軟件設(shè)計師、程序員、軟件測試人員等組成。以對該系統(tǒng)的測試活動為例,說明本模型的具體應(yīng)用,測試周期為3個月。
測試人員在系統(tǒng)開發(fā)之前與學(xué)科教師及軟件開發(fā)人員一起參與到該系統(tǒng)的教學(xué)需求分析過程當(dāng)中,并在與軟件的主要使用者學(xué)生進行探討、深入分析教學(xué)目標(biāo)的基礎(chǔ)上,首先對系統(tǒng)使用者特征進行詳細分析來引導(dǎo)和確定教學(xué)需求。測試人員與學(xué)科教師在系統(tǒng)的教學(xué)需求分析之后著手開展對系統(tǒng)被測對象的測試用例的分析與設(shè)計工作,以制定系統(tǒng)頁面內(nèi)容表現(xiàn)方面的測試用例為例,有關(guān)頁面內(nèi)容表現(xiàn)要依據(jù)課程學(xué)習(xí)內(nèi)容并結(jié)合使用者特征選擇最佳的信息顯示方式,為使用者提供清晰的學(xué)習(xí)資源空間。從系統(tǒng)功能實現(xiàn)并結(jié)合教學(xué)設(shè)計與使用者的認(rèn)知規(guī)律,設(shè)計測試用例分別從課程的界面設(shè)計、文字編排、內(nèi)容導(dǎo)航、內(nèi)容交互等四個方面制定測試項目與預(yù)期測試通過標(biāo)準(zhǔn),測試用例模板如表1所示。預(yù)期測試通過的要求可以根據(jù)使用者特征狀況并結(jié)合實際環(huán)境來制定。例如內(nèi)容導(dǎo)航中的導(dǎo)航設(shè)置項的測試,對于學(xué)習(xí)基礎(chǔ)差的學(xué)生而言,要求測試通過的要求是不僅導(dǎo)航功能可以正確靈活的使用,而且需要瀏覽頁面記錄下使用者的導(dǎo)航歷史記錄或路徑,以備下次導(dǎo)航前回到上次學(xué)習(xí)的知識點復(fù)習(xí)使用。而針對學(xué)習(xí)基礎(chǔ)好的學(xué)生而言,則導(dǎo)航設(shè)置項測試通過的要求可以不含記錄導(dǎo)航歷史信息等。最后,所設(shè)計的測試用例應(yīng)該具備良好的通用性,即能夠在某一類型或某一領(lǐng)域的相似軟件的測試中廣泛運用。
表1 頁面內(nèi)容表現(xiàn)的測試用例
接下來,測試人員與學(xué)科教師一起著手制定綜合測試計劃(包含測試目標(biāo)、測試范圍、測試起始與完成時間、測試重點、完成標(biāo)準(zhǔn)等內(nèi)容)與該系統(tǒng)教學(xué)評價范疇或指標(biāo)(在實際使用環(huán)境下在教學(xué)需求階段所定義的教學(xué)軟件一級或二級評價指標(biāo)。例如一級評價指標(biāo):教學(xué)設(shè)計、技術(shù)實現(xiàn)、呈現(xiàn)藝術(shù)。二級指標(biāo)即教學(xué)設(shè)計分解為教學(xué)目標(biāo)組織、教學(xué)交互設(shè)計、學(xué)習(xí)評價等;技術(shù)實現(xiàn)分解為系統(tǒng)架構(gòu)設(shè)計、運行環(huán)境、操作性能等;呈現(xiàn)藝術(shù)分解為界面設(shè)計、媒體選擇、美工效果等[6]),要求與開發(fā)活動同時進行。在軟件設(shè)計師與程序員設(shè)計出最初的系統(tǒng)原型并通過單元測試與集成測試后,學(xué)科教師與測試人員一起參與不斷的完善與改進測試用例設(shè)計來指導(dǎo)對系統(tǒng)的綜合測試,與此同時,選取以學(xué)生為主的軟件使用者為代表與專業(yè)的教學(xué)軟件評價人員在實際的運行環(huán)境中按照事先所定義的評價指標(biāo)共同參與軟件評價活動,對其廣泛的試用來驗證教學(xué)需求。
系統(tǒng)在交付期內(nèi)順利完成測試過程,項目組人員、學(xué)生代表與評審專家在項目結(jié)束時全部參加了項目評審。在系統(tǒng)運行期間,學(xué)生基于實際使用狀況提出了新的需求,測試人員與學(xué)科教師在此期間又對其進行一次測試過程。根據(jù)系統(tǒng)新增的教學(xué)需求與測試策略,可以選用當(dāng)前軟件測試領(lǐng)域中較為成熟的一些測試用例復(fù)用模型完成對相應(yīng)模塊的測試用例設(shè)計與復(fù)用過程,并為基于復(fù)用的軟件測試的工程化管理提供管理框架[18]。
系統(tǒng)在投入使用兩個月后,有學(xué)生提出了在瀏覽頁面內(nèi)容表現(xiàn)方面需要加入媒體呈現(xiàn)效果?;诖?,作者在表1所示的測試用例的“測試項”一欄中增加“動畫表現(xiàn)”測試項,并設(shè)計出“畫質(zhì)”、“色彩”、“構(gòu)圖”、“音效”等測試子項及相應(yīng)測試說明。從而通過對現(xiàn)有的測試用例進行補充與完善來完成添加新需求的測試工作。需要說明的是,對于具體測試項目所設(shè)計的測試用例可能不完全滿足被測軟件的測試需求,因此實際測試中要求針對被測軟件的需求及時補充新的用例或?qū)ΜF(xiàn)有用例進行充實完善[19]。
該系統(tǒng)在試點院系進行了實際應(yīng)用,反映良好,目前正考慮利用本文所提出的測試過程模型就其他類型教學(xué)軟件的測試工作做進一步推廣運用。
[1]余勝泉.教學(xué)軟件設(shè)計指導(dǎo)手冊[M].北京:清華大學(xué)出版社,2011.
[2]黃少穎,劉美風(fēng),張霞.教學(xué)軟件需求分析有效實施的指導(dǎo)原則研究[J].現(xiàn)代教育技術(shù),2007,17(3):10-12.
[3]劉新陽,張從善,常淑娟,等.關(guān)于新型教學(xué)軟件開發(fā)模式的構(gòu)想[J].中國電化教育,2003(5):65-67.
[4]谷震離.多媒體教學(xué)軟件原型法開發(fā)模型研究[J].計算機工程與設(shè)計,2006,27(10):1829.1829-1830.
[5]李為民,張軍征.教學(xué)設(shè)計與軟件工程結(jié)合的教學(xué)軟件開發(fā)模式[J].現(xiàn)代教育技術(shù),2009,19(7):49-52.
[6]余久久.面向教學(xué)軟件的RUP改進模型的設(shè)計研究[J].電化教育研究,2012,33(4):77-81.
[7]熊智,劉莉,雷鈺鋒,等.X測試模型的改進與應(yīng)用[J].計算機工程與設(shè)計,2011,32(8):2748-2751.
[8]余久久,張佑生.軟件測試改進模型研究進展[J].計算機應(yīng)用與軟件,2012,29(11):202-207.
[9]方海光,任劍鋒,陳蜜.教育軟件工程框架的構(gòu)建[J].計算機科學(xué),2009,36(1):29-33.
[10]陸永忠,宋駿禮,谷希謙.基于行為的軟件測試過程模型及其應(yīng)用研究[J].計算機應(yīng)用,2007,27(5):1238-1239.
[11]何曉蓉.軟件工程與UML案例解析[M].北京:中國鐵道出版社,2010.
[12]學(xué)習(xí)者特征分析[EB/OL].http://www.baidu.com/教育技術(shù)培訓(xùn)/,2010.
[13]張智軼,陳振宇,徐寶文,等.測試用例演化研究進展[J].軟件學(xué)報,2013,24(4):664-665.
[14]石東凌,張應(yīng)博,鄒啟杰.軟件工程使用教程[M].大連:大連理工大學(xué)出版社,2011.
[15]周學(xué)海,陳蓓蓓.軟件測試過程模型的改進-并行V模型[J].計算機工程與應(yīng)用,2005,24(9):125-127.
[16]教學(xué)評價[EB/OL].http://www.baidu.com/教學(xué)軟件評價/,2011.
[17]羅月念.多媒體教學(xué)軟件的開發(fā)及其傳輸優(yōu)化研究[D].貴陽:貴州大學(xué),2008.
[18]樓芳,李亮,何志強.基于本體的滲透測試用例復(fù)用模型[J].計算機工程與科學(xué),2011,33(2):23-26.
[19]尹平.可復(fù)用測試用例研究[J].計算機應(yīng)用,2010,30(5):1309-1311.
Research and Application of Testing ProcessModel for Instructional Software
YU Jiu-jiu,ZHANG You-sheng
(Computer Engineering College,Anhui Sanlian University,Hefei230601,China)
The applications on instructional software aremuch popular in universities currently.The development process on instructional software has come into being the development processmodel system perfectly,but the testing process on instructional software has notbeen formed yet.Accord to the ideology that“the activities on testing and development is run through software life cycle at the same time”and combined with the testing flow in software engineering domain,this article analyze the common characters on teaching,human-computer interface and scientific for instructional software,and puts forward a testing processmodel on instructional software which composed of teaching requirement design,testing case design,teaching design,software design,unit/ integration testing,coding,all-around testing instructional software estimation.Furthermore,we apply thismodel to the realistic development example for teaching system project and achieve good results.
instructional software,testing,case,requirement,teaching design,estimation;model
TP311
A
1007-4260(2014)03-0125-06
時間:2014-9-15 16:07 網(wǎng)絡(luò)出版地址:http://www.cnki.net/kcms/doi/10.13757/j.cnki.cn34-1150/n.2014.03.031.html
2013-10-14
2013年安徽省高等學(xué)校省級質(zhì)量工程項目(2013jyxm274),2013年安徽三聯(lián)學(xué)院院級質(zhì)量工程項目(13zlgc023),2014年安徽三聯(lián)學(xué)院科研基金項目(2014Z003)和2014年安徽省職業(yè)與成人教育學(xué)會教育科研規(guī)劃項目(BCB14035)資助。
余久久,男,安徽合肥人,碩士,安徽三聯(lián)學(xué)院計算機工程學(xué)院講師,主要研究方向為軟件工程、軟件測試、計算機教育。
張佑生,男,安徽合肥人,碩士,安徽三聯(lián)學(xué)院計算機工程學(xué)院教授,主要研究方向為計算機應(yīng)用技術(shù)。