陳冰紅 祝振宇 廖錫海
摘要:《計算機應用基礎》是一門具有較強實踐性的課程,傳統的筆試方式不能對學生實際操作能力做出真實的評價。運用VBA技術和VB.NET技術進行系統開發計算機應用基礎測試系統,降低測試流程中的人工干預過程,提高教學效率,加快教學反饋,提升教學效果。
關鍵詞:測試系統;計算機應用基礎;VBA
中圖分類號:TP311 文獻標識碼:A
文章編號:1009-3044(2019)08-0093-02
1 背景
《計算機應用基礎》是高校非計算機專業的公共必修課程,是一門具有較強實踐性和應用性的課程。要求學生在掌握計算機基本操作技能的同時,熟練使用操作系統及辦公軟件,培養大學生的計算機素養和計算思維方式,為以后利用計算機解決專業相關問題打下良好的基礎[1]。
為了適應國家要求的創新型應用型人才系統培養模式新形勢下,應用型人才培養和因材施教的個性化教育目標,各個高校紛紛開展了《計算機應用基礎》教學改革,如分層分類的個性化教學改革、基于翻轉課堂的教學改革、項目式教學改革等等。在改革的實施過程中都面臨著同一個難題,由于學生人數較多,所完成的課后實操和綜合測試數量較多,教師手工完成批改習題或試卷的工作量過大,效率低,反饋給學生的信息過于延遲,對教學造成了較大的影響。因此需要一個能夠快速、準確的批改課程試題的測試系統,將教學從煩瑣的重復勞動中解放出來,使其將精力更好的投放的教學的其他環節中。
2 系統的總體設計方案
2.1 系統架構設計
計算機應用基礎測試系統針對實際的應用情況,考生登錄、客戶端下載采用 B/S 結構, 試卷下載、數據同步、考生信息監控等采用C/S結構, 從而構成C/S 和 B/S 兩種體系結構緊密結合的管理,拓撲結構如圖1所示。
2.2 系統功能模塊設計
采用面向對象的模塊化程序設計的基本思想,測試平臺可分為題庫管理系統、在線測試系統、測試評分系統和系統管理系統四個模塊。題庫管理系統可在線對各類題型進行添加、修改、刪除等操作;在線測試子系統為學生提供一個自助測試平臺;測試評分系統對學生的各類操作結果正確與否進行判斷,并反饋得分和錯誤相應信息;系統管理子系統實現對學生信息、學生考試狀態、系統的時間和異常情況的控制以及服務器參數配置,其系統結構如圖2所示。
2.3 測試系統的數據流圖
系統的數據流圖如圖3所示。題庫管理員可通過插件導入、導出試題,并對題庫資源進行管理、更新、補充和統計分析;組卷人員在系統中設置相應參數,通過組卷系統自動抽取相關試題組成試卷,然后審閱試卷更換不符合要求的試題,直至試卷中的所有試題都符合考試要求,提高成卷質量;學生可通過賬號密碼登錄學生界面,進行試題測試。學生可以在考試過程中手動提交試卷數據,或在考試結束時,系統自動強制收卷提交,并上傳考生的數據文件[2];監考人員可通過監控模塊實時監控考生狀態,根據實際情況,進行相應的事件處理;學生交卷后,試卷統一自動上傳到服務器,服務器根據評卷程序和得分點,對試卷進行自動批改,并給出成績和錯誤反饋。并將其保存到數據庫中,供學生查詢、教師進行成績分析,教學效果評估使用。
3 自動組卷的實現
自動組卷是系統關鍵目標之一,系統要從題庫中根據組卷原則選取一組試題,并要求各種類型題目的達到指定的比例,并保證所抽取的題目不會出現重復或相關的題目,需要在系統中設置相應的約束條件。生成試卷速度與質量取決于組卷算法的設計,常用的組卷算法主要有隨機選取法、回溯試探法和遺傳算法。
隨機選取法由程序隨機從題庫中循環抽取試題,直到組卷完成,它可能進入到一個不合適的區域內反復抽取,導致大量無效的操作而陷入死循環[3]?;厮菰囂椒〞涗涬S機選取法產生的所有狀態數據,當搜索失敗時,則恢復上一原始狀態,然后選擇一種新的狀態類型進行搜索,通過不斷的回歸和搜索生成試卷[4]?;厮菰囂椒ㄋ惴◤碗s、占用內存大,花費時間較多。
遺傳算法是一種基于自然選擇和遺傳學原理的優化搜索算法,具有廣泛的適應性。它模擬低級生物在自然環境中的進化和發展,優勝劣汰,適者生存,通過雜交、突變來產生新的下一代,最終發展的高級生物的進化過程[5]。由于遺傳算法實行全局并行搜索,并且搜索空間較大,在搜索中不斷向最優匹配靠攏,因此本系統采用遺傳算法作為組卷策略。
4 測試評分系統的實現
測試評分系統是服務器上運行的,考試結束考生客戶端自動上傳考生答卷。測試評分系統從數據庫中讀取考生試卷的文檔編號,從而獲取考生的閱卷信息,從每個考生的答卷中讀取考生答題,與閱卷信息中的得分點進行匹配,對該題進行評分,并將相應成績和反饋信息保存到數據庫中,自動閱卷流程如圖4所示。
4.1 選擇題與判斷題的評分實現
計算機基礎考試系統中基礎知識的主要使用選擇題和判斷題等客觀題方式進行考查,客觀題的答案具有唯一性。將考生答案與標準答案逐一匹配就可得到相應成績。
4.2 Windows 操作題的評分實現
Windows 操作主要指的是文件和文件夾的操作,包括文件(文件夾)的新建、重命名、復制移動、壓縮、刪除和屬性設置等操作[6]。這類操作會改變考生目錄中文件(文件夾)的屬性和位置,因此可以通過搜索考生目錄中相應文件(文件夾)或屬性值是否存在,以此來判斷考生是否執行了某項操作,從而給出相應得分。
例如:
(1)將位于“\WINDIR\JINAN”上的TXT文件移動到目錄“\WINDIR\TESTDIR”
Set fso = CreateObject("Scripting.FileSystemObject")
Dir(wlj + "\WINDIR\JINAN\Release.txt") = "" And Dir(wlj + "\WINDIR\TESTDIR\Release.txt")<> "" then df = df + 2.5