馮麗露 趙慧勤
摘要:《數(shù)據(jù)結(jié)構(gòu)》客觀題自測(cè)平臺(tái)是為作者所在學(xué)校開(kāi)設(shè)的“數(shù)據(jù)結(jié)構(gòu)”課程而設(shè)計(jì)開(kāi)發(fā)的。此平臺(tái)可以有效提升學(xué)生對(duì)《數(shù)據(jù)結(jié)構(gòu)》知識(shí)點(diǎn)的掌握,減少教師組織測(cè)試的次數(shù)與精力,提升了學(xué)生對(duì)“數(shù)據(jù)結(jié)構(gòu)”課程學(xué)習(xí)的效率。
關(guān)鍵詞:Java Web;《數(shù)據(jù)結(jié)構(gòu)》客觀題;自主測(cè)試
中圖分類號(hào):G434? 文獻(xiàn)標(biāo)識(shí)碼:A? 論文編號(hào):1674-2117(2021)06-0097-03
在現(xiàn)代化教育環(huán)境下,純紙質(zhì)的習(xí)題已經(jīng)落后于時(shí)代的需求,而現(xiàn)有的電子習(xí)題、試卷又缺乏對(duì)本校生的針對(duì)性?!稊?shù)據(jù)結(jié)構(gòu)》客觀題自測(cè)平臺(tái),是針對(duì)筆者所在學(xué)校的具體學(xué)情而設(shè)計(jì)的自測(cè)平臺(tái),方便學(xué)生利用零散時(shí)間進(jìn)行自主測(cè)試,有效地提高了學(xué)習(xí)效果。
● 平臺(tái)開(kāi)發(fā)技術(shù)
《數(shù)據(jù)結(jié)構(gòu)》客觀題自測(cè)平臺(tái)整體采用Java Web的三層架構(gòu),它們分別是表示層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問(wèn)層。[1-2]
表示層,即Html和Servlet層,用于接受用戶發(fā)出的請(qǐng)求,通過(guò)調(diào)用業(yè)務(wù)邏輯層來(lái)處理用戶發(fā)出的請(qǐng)求信息,然后顯示處理結(jié)果。業(yè)務(wù)邏輯層,即Service層,采用了面向接口編程的思想,先定義接口,再創(chuàng)建實(shí)現(xiàn)類。數(shù)據(jù)訪問(wèn)層,即Dao層,這一層是直接對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作的,用來(lái)對(duì)數(shù)據(jù)庫(kù)進(jìn)行增、刪、改、查操作。如果把Web應(yīng)用比作一家餐廳,那么Servlet就是服務(wù)員,負(fù)責(zé)接待顧客、上菜;Service就是廚師,負(fù)責(zé)按照菜單,利用采購(gòu)員提供的原材料將其進(jìn)行加工整合,制作出佳肴;Dao就是采購(gòu)員,負(fù)責(zé)采購(gòu)蔬菜,為廚師提供原材料。[3]
● 平臺(tái)需求分析
本平臺(tái)是基于筆者所在學(xué)校師生的需求而設(shè)計(jì)的,適用于“數(shù)據(jù)結(jié)構(gòu)”這門課程的客觀題的自測(cè),因此,根據(jù)對(duì)實(shí)際情況的分析與調(diào)查,本平臺(tái)需要具有以下功能。
1.功能性需求分析
(1)學(xué)生端
能夠滿足學(xué)生答題以及查閱分?jǐn)?shù)等需求。具體包括:登錄功能,實(shí)現(xiàn)學(xué)生不需要注冊(cè),根據(jù)學(xué)號(hào)和初始密碼就可以直接登錄使用平臺(tái);強(qiáng)化練習(xí)功能,滿足學(xué)生能夠自主選擇知識(shí)點(diǎn)和題型進(jìn)行針對(duì)性練習(xí),各個(gè)擊破;錯(cuò)題記錄功能,學(xué)生可以查看自己的錯(cuò)題歷史記錄,方便后期復(fù)習(xí),減少手工記錄錯(cuò)題的時(shí)間;專家試卷功能,要求學(xué)生可以完成教師指定的試卷,具有權(quán)威性的導(dǎo)向,學(xué)生可以了解學(xué)科考試的側(cè)重點(diǎn);模擬試卷功能,要求系統(tǒng)可以自動(dòng)生成模擬試卷,增加學(xué)生測(cè)試的靈活性。
(2)教師端
能提供題庫(kù)管理、分析統(tǒng)計(jì)和批量導(dǎo)入等功能。題庫(kù)管理功能,滿足教師可以查看、搜索、新增和修改試題;試卷管理功能,支持教師手動(dòng)組卷,進(jìn)行試卷的查看;分析統(tǒng)計(jì)功能,可以對(duì)學(xué)生的做題情況進(jìn)行統(tǒng)計(jì),方便教師的教學(xué)安排;批量導(dǎo)入功能,方便教師實(shí)現(xiàn)學(xué)生信息的批量錄入以及相關(guān)《數(shù)據(jù)結(jié)構(gòu)》客觀題的錄入。
(3)超級(jí)管理員端
超級(jí)管理員除了擁有教師的所有功能外,還包括功能管理,能夠?qū)δ苓M(jìn)行增、刪、改、查操作;角色管理功能,要求對(duì)平臺(tái)中所有用戶角色進(jìn)行查找、新增、修改和權(quán)限設(shè)置。
2.非功能性需求分析
除了上述提到的功能性需求之外,該平臺(tái)還需滿足以下非功能性需求:界面簡(jiǎn)潔、美觀,符合大眾的審美;數(shù)據(jù)安全性高,不會(huì)導(dǎo)致數(shù)據(jù)的異常丟失;易于擴(kuò)展,無(wú)論學(xué)生還是教師的需求都可能會(huì)增加,在設(shè)計(jì)之初要考慮好平臺(tái)在后期的擴(kuò)展性;易用性,盡量設(shè)計(jì)統(tǒng)一的界面,可以實(shí)現(xiàn)多個(gè)功能,操作簡(jiǎn)便靈活易上手,以便于提高用戶使用的效率和易用性能。
● 《數(shù)據(jù)結(jié)構(gòu)》客觀題自測(cè)平臺(tái)的設(shè)計(jì)
本平臺(tái)的設(shè)計(jì)從總體框架、基本功能、數(shù)據(jù)庫(kù)三方面來(lái)設(shè)計(jì)??傮w框架設(shè)計(jì)是對(duì)平臺(tái)整體功能的邏輯規(guī)劃;基本功能設(shè)計(jì)是對(duì)詳細(xì)功能的設(shè)計(jì);數(shù)據(jù)庫(kù)設(shè)計(jì)根據(jù)所需數(shù)據(jù)表建立。
1.平臺(tái)總體框架
平臺(tái)的總體功能模塊圖如圖1所示。
2.基本功能設(shè)計(jì)
除了基本的用戶登錄功能,本文主要介紹該平臺(tái)的幾項(xiàng)核心功能:強(qiáng)化練習(xí)、自動(dòng)組卷、錯(cuò)題記錄、題庫(kù)管理、數(shù)據(jù)分析。
(1)強(qiáng)化練習(xí)。使學(xué)生有針對(duì)性地自我檢測(cè),學(xué)生根據(jù)教學(xué)的進(jìn)度或者自己的薄弱知識(shí)點(diǎn)及時(shí)進(jìn)行檢測(cè),平臺(tái)對(duì)知識(shí)點(diǎn)和題型進(jìn)行分類,為學(xué)生提供更加精準(zhǔn)的選擇。
(2)自動(dòng)組卷。作為面向?qū)W生的自主測(cè)試平臺(tái),應(yīng)該具有隨機(jī)自動(dòng)組題的功能,否則將無(wú)法提高平臺(tái)的使用性能。學(xué)生在選擇模擬試卷后啟動(dòng)自動(dòng)組卷功能,根據(jù)已經(jīng)設(shè)置好的試題數(shù)量,從數(shù)據(jù)庫(kù)中隨機(jī)抽取試題組成模擬試卷。
(3)錯(cuò)題記錄??梢詾閷W(xué)生實(shí)時(shí)記錄做錯(cuò)的試題,學(xué)生可以查看自己的詳細(xì)錯(cuò)題、錯(cuò)題數(shù)量、得分情況等。此功能省去了學(xué)生自己手動(dòng)記錄的時(shí)間,方便隨時(shí)回看錯(cuò)誤點(diǎn),提高了學(xué)習(xí)效率。
(4)題庫(kù)管理。此功能屬于后臺(tái)管理,教師可以對(duì)試題進(jìn)行查找、修改與新增。同時(shí),為了方便教師手動(dòng)組題和查看試題并對(duì)試題進(jìn)行編輯,設(shè)計(jì)了可以按知識(shí)點(diǎn)或題型進(jìn)行試題管理。
(5)數(shù)據(jù)分析。教師可以通過(guò)統(tǒng)計(jì)數(shù)據(jù),直觀地看到每個(gè)知識(shí)點(diǎn)學(xué)生的錯(cuò)題數(shù)量、比例,以便及時(shí)調(diào)整教學(xué)進(jìn)度、教學(xué)內(nèi)容,針對(duì)學(xué)生不熟悉的知識(shí)點(diǎn)做進(jìn)一步的講解,從而提高整體的教學(xué)質(zhì)量。
3.平臺(tái)數(shù)據(jù)庫(kù)設(shè)計(jì)
本平臺(tái)設(shè)計(jì)有用戶數(shù)據(jù)庫(kù)、角色數(shù)據(jù)庫(kù)、權(quán)限數(shù)據(jù)庫(kù)、試題庫(kù)數(shù)據(jù)庫(kù)、功能管理數(shù)據(jù)庫(kù)、試卷數(shù)據(jù)庫(kù)等。[4]用戶數(shù)據(jù)庫(kù)用于支持用戶登錄功能和后臺(tái)信息管理;角色數(shù)據(jù)庫(kù)用于分配、管理用戶角色;權(quán)限數(shù)據(jù)庫(kù)用于為不同用戶角色分配不同的訪問(wèn)權(quán)限;試題庫(kù)數(shù)據(jù)庫(kù)用于試題管理,支持自動(dòng)組卷;功能管理數(shù)據(jù)庫(kù)用于支持系統(tǒng)后臺(tái)管理和平臺(tái)功能設(shè)定、維護(hù)等;試卷數(shù)據(jù)庫(kù)用于記錄和維護(hù)已創(chuàng)建的試卷,并提供數(shù)據(jù)統(tǒng)計(jì)信息。
●《數(shù)據(jù)結(jié)構(gòu)》客觀題自測(cè)平臺(tái)的實(shí)現(xiàn)
本文只介紹《數(shù)據(jù)結(jié)構(gòu)》客觀題自測(cè)平臺(tái)中的部分核心功能,包括:強(qiáng)化練習(xí)、自動(dòng)組卷、錯(cuò)題記錄、題庫(kù)管理、數(shù)據(jù)分析。
1.強(qiáng)化練習(xí)
強(qiáng)化練習(xí)即章節(jié)測(cè)試,包含題庫(kù)的所有試題和類型。學(xué)生可以根據(jù)目前所學(xué)內(nèi)容進(jìn)行針對(duì)性的訓(xùn)練,不僅可以選擇知識(shí)點(diǎn),還可以選擇題型。此模塊有助于學(xué)生進(jìn)行“對(duì)癥下藥”,對(duì)自己的薄弱處進(jìn)行“一對(duì)一”訓(xùn)練。
2.自動(dòng)組卷
學(xué)生選擇模擬試卷啟動(dòng)自動(dòng)組卷功能,根據(jù)學(xué)生的選擇調(diào)用不同的接口,從數(shù)據(jù)庫(kù)中查詢相對(duì)應(yīng)的試題,以列表的形式返回保存到域中。JSP從域中取數(shù)據(jù),通過(guò)循環(huán)操作,根據(jù)試題的類型在答題頁(yè)面進(jìn)行分類顯示,呈現(xiàn)出學(xué)生答題頁(yè)面。
3.錯(cuò)題記錄
學(xué)生點(diǎn)擊錯(cuò)題記錄列表,可以查看自己以往的錯(cuò)題記錄。根據(jù)學(xué)生的ID從學(xué)生做題列表查詢學(xué)生做錯(cuò)的題目和試卷名稱,分組返回錯(cuò)題列表,查看試卷詳情。
4.題庫(kù)管理
題庫(kù)列表包括知識(shí)點(diǎn)類型、題型、題干、選項(xiàng)、正確答案、解析以及可用狀態(tài),支持將陳舊的題目和怪僻的題目狀態(tài)改為不可用。此外,還提供了可以對(duì)題庫(kù)按照知識(shí)點(diǎn)和題型進(jìn)行分類的功能,教師可以根據(jù)需求只查看一部分題目,增加了題庫(kù)管理的靈活性和可用性,題庫(kù)管理關(guān)鍵代碼如圖2所示。
5.數(shù)據(jù)分析
數(shù)據(jù)分析功能可以讓教師了解學(xué)生對(duì)哪一部分知識(shí)點(diǎn)掌握得不好,并參考作為教學(xué)重、難點(diǎn)內(nèi)容。利用學(xué)生做題情況表,查找所有的試題ID,以列表的形式儲(chǔ)存,根據(jù)獲得的試題ID在試題表中查找對(duì)應(yīng)的知識(shí)內(nèi)容。利用Stream的Collector方法,得到以知識(shí)點(diǎn)內(nèi)容為Key、以知識(shí)點(diǎn)內(nèi)容的數(shù)量為value的Map,循環(huán)遍歷整個(gè)Map。
● 結(jié)束語(yǔ)
“數(shù)據(jù)結(jié)構(gòu)”作為計(jì)算機(jī)及相關(guān)專業(yè)的專業(yè)基礎(chǔ)課程,對(duì)學(xué)生深入理解、掌握編程技術(shù)至關(guān)重要。對(duì)數(shù)據(jù)結(jié)構(gòu)知識(shí)的掌握及靈活應(yīng)用,必經(jīng)的學(xué)習(xí)途徑之一就是習(xí)題練習(xí)。《數(shù)據(jù)結(jié)構(gòu)》客觀題自測(cè)平臺(tái)不但減輕了教師反復(fù)出題、手工批閱的負(fù)擔(dān),而且方便了學(xué)生隨時(shí)根據(jù)個(gè)人情況加強(qiáng)練習(xí),有效地提高了學(xué)生利用碎片化學(xué)習(xí)時(shí)間的效率,同時(shí)為同類型課程的教學(xué)改革提供了一定的技術(shù)借鑒。
參考文獻(xiàn):
[1]郭立文.基于Web的考試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].西安:陜西科技大學(xué),2006.
[2]馮麗露,高曉晶,康耀龍.大數(shù)據(jù)分析下大學(xué)生行為記錄和分析系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].中國(guó)教育信息化,2019(09):73-76.
[3]賀玲玲.基于Php MySQL的在線考試系統(tǒng)設(shè)計(jì)的開(kāi)發(fā)與實(shí)現(xiàn)[D].長(zhǎng)沙:湖南大學(xué),2012:10-11.
[4]康耀龍,馮麗露,張景安.路況大數(shù)據(jù)分析平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)與軟件工程,2020(06):200-201.
第一作者簡(jiǎn)介:馮麗露(1980.9—),女,漢族,山西省大同市人,講師,碩士研究生,研究方向?yàn)橛?jì)算機(jī)教育應(yīng)用、數(shù)字化學(xué)習(xí)資源建設(shè)。
基金項(xiàng)目:山西大同大學(xué)教學(xué)改革創(chuàng)新項(xiàng)目“新工科建設(shè)下數(shù)媒專業(yè)‘?dāng)?shù)據(jù)結(jié)構(gòu)課程PBL教學(xué)模式的研究”階段性成果(項(xiàng)目編號(hào):XJG2019202);山西省教育科學(xué)“十三五”規(guī)劃課題“基于互動(dòng)體驗(yàn)的博物館學(xué)習(xí)活動(dòng)設(shè)計(jì)及其應(yīng)用研究”(項(xiàng)目編號(hào):GH-18043);大同市科技局平臺(tái)基地計(jì)劃項(xiàng)目“大同市北魏平城文化數(shù)字化傳承創(chuàng)新服務(wù)平臺(tái)”(項(xiàng)目編號(hào):2018185)。