宋世俊
(安徽中澳科技職業學院,安徽 合肥 230041)
基于.NET的計算機基礎課程在線考試系統設計與實現
宋世俊
(安徽中澳科技職業學院,安徽 合肥 230041)
文章在對傳統考核方式弊端進行分析的基礎上,結合計算機基礎課程的特點,設計并開發一套計算機基礎課程在線考試系統。該系統在安徽中澳科技職業學院應用,實踐驗證了該考試系統的有效性。
在線考試系統;VB.NET;計算機基礎
計算機基礎課程是高校各專業學生的一門公共必修課,開課面廣,采用傳統的卷面考核方式,要耗費大量的人力物力,大量的紙質試卷不易保存,并且會存在不可避免的作弊現象。其次,計算機基礎課程側重培養學生操作計算機的基本技能以及運用計算機解決實際問題的能力,傳統的卷面考核方式也不能很好地適應該課程的培養目標。所以,計算機基礎課程考核方式的改革勢在必行。根據安徽中澳科技職業學院計算機基礎課程教學的具體情況以及該校實訓室硬件條件,我們設計并開發了計算機基礎課程在線考試系統,實現了計算機基礎課程考核的信息化。本系統設計的特點在于,首先,改變了眾多在線考試系統純客觀題考核的方式,設有單選題、填空題、簡單題以及Office操作題(含Word、Excel、PowerPoint三部分),從考核內容上涵蓋計算機基礎課程考試大綱里面的所有要求考核的知識點及操作技能,從試題形式上,既有考核知識點的客觀題,也有對操作技能進行考核的主觀題;其次,實現了隨機組卷,使得下發給每位考生的試題都各不相同,最大限度減少考試作弊的可能性;第三,實現考生答題數據實時本地存儲,機器故障或網絡故障時保留其已經做答的結果。
根據該系統實際投入使用時的用戶規模,結合學校的硬件、網絡服務等實際情況,該系統采用C/S的開發模式,整個系統按功能分為四個子系統:教師命題子系統、學生考試子系統、教師閱卷子系統以及考試管理子系統,系統總體功能圖如圖1所示。

圖1 總體功能圖
根據系統各子系統功能及用戶類別的不同,各子系統的具體功能描述如下:
2.1命題子系統功能
命題子系統中,命題教師可以在線完成試題題干、答案、評分標準等與試題有關內容的錄入工作,教研室主任可以在線完成試題的審核工作。命題子系統功能圖如圖2所示。
2.2 考試子系統功能
考生子系統的用戶為學生,在該子系統中,學生憑學號、姓名成功登錄后,完成試題獲取、在線答題、答題結果提交整個在線考試流程??荚囎酉到y功能圖如圖3所示。

圖3 考試子系統功能圖
2.3 閱卷子系統功能
閱卷子系統的用戶為教師,閱卷教師用戶成功登錄后,可以在線完成閱卷工作,此外在該子系統中,還可以實現每張考卷成績的匯總、班級成績查詢以及閱卷工作量查詢。閱卷子系統功能圖如圖4所示。

圖4 閱卷子系統功能圖
2.4 管理子系統功能
管理子系統中,管理員用戶可以對系統中教師、學生用戶基本信息以及權限進行管理,同時還可以查詢考試成績并按班級導出成績。管理子系統功能圖如圖5所示。

圖5 管理子系統功能圖
按照系統功能模塊圖,該系統采用VS2010作為前臺開發工具,SQL Server2008作為后臺數據庫管理工具,實現各子系統功能的設計,從命題、考試、閱卷等各環節替代傳統的卷面考核方式。
3.1 考生用戶身份驗證
考試子系統采用兩層架構,即服務器和客戶端。其中,服務器端保存考生的信息、試題以及考生提交的答案??荚嚂r,每位考生輸入學號、姓名,經連接服務器端驗證后,方可登錄考試系統開始考試,若學號、姓名其中有一個不正確或空缺均不能成功登錄??荚嚨卿浗缑嫒鐖D6所示。

圖6 考試系統登錄界面
為了防止考生在考試過程中擅自重復登錄考試系統的情況出現,在考生用戶登錄考試系統時,除了進行學號、姓名的正確性驗證外,同時還需進行考試狀態驗證。我們在數據庫中設置了考試狀態字段,考生未參加考試時考試狀態字段值為“未考”,考生成功登錄則考試狀態字段值變為“在考”,考生成功交卷后考試狀態字段值變為“已考”。另外,按照學校教學管理規定,曠課學時超課程總學時三分之一的學生取消課程期末考核資格,所以對于曠課學時超課程總學時三分之一的考生考試狀態字段值設置為“曠課”,只有考試狀態字段值為“未考”才可以正常登錄考試系統進行考試??荚囘^程中,如果考生因機器故障等客觀原因導致考試中斷的,經監考教師核實,由系統管理員修改考試狀態后,該考生可以重新參加考試。
3.2 操作題信息的顯示
為了使考生更好地理解操作類試題要求,對于 Word、Excel、PowerPoint三類操作題,除了通過文字方式描述操作要求外,在系統中還采用圖片形式給出設計好的效果模板。首先,在數據庫相應試題表格中增加“答案模板”字段,類型為Image,詳見下表(以Word操作題為例)。

表1 Word操作題試題表(OperationW)
在試題錄入時,將答案模板上傳至題庫進行保存。在生成試卷時,通過引入Office組件Imports Microsoft.Office.Core,并通過輸入輸出數據流獲得答案模板的圖片顯示到考試終端,供考生參考。以下是從獲得Word操作題答案模板圖片的部分代碼。
Sub Get_WTemplet()//獲取操作題答案模板圖片(以Word為例)
……
//連接數據庫
……
//填充數據集
Dim MyBytes As Byte() =MySet.Tables(0).Rows(0)("OpW_Templet")
Dim MyStream As New System.IO.MemoryStream(MyBytes)
Dim Img As New Bitmap(MyStream)
Me.PictureBox1.Image=Img
//獲得圖片文件,并顯示到答題界面上相應控件處
Img.Save(WordTempletFile, System.Drawing.Imaging.ImageFormat.Jpeg)
//保存圖片文件至本地試題文件夾
……
//關閉數據庫連接
End Sub
3.3 考試過程重要信息的本地存儲
在每位考生參加考試的過程中,均需要訪問服務器上的數據庫獲取或存儲相應數據信息,為了減小服務器的壓力、盡可能地減少考試過程中發生的異常情況,考試系統在設計的過程中充分利用C/S模式的優勢,只在考試開始和考試結束時連接服務器、訪問數據庫。
在考試開始時,當考生成功登錄系統后,系統即為每位考生隨機生成試卷,并保存到本地磁盤上,這樣考試過程中如果網絡出現異常將不會影響到考生考試的正常進行。在同一場考試中,大部分考生考試的交卷時間相對集中,此時服務器壓力較大,在該系統的測試階段,就出現過因為網絡異常,導致少數考生未能成功交卷的情況。經系統開發小組討論研究,系統中增加了將考生答題結果備份到本地的功能,將提交試卷過程中可能出現異常情況的風險降到最低。
3.4 考試倒計時及自動交卷功能

圖7 考試系統主界面
考生成功登錄時,系統完成試卷生成并保存到客戶端機器,進入如圖7所示考試系統主界面,考生在閱讀完考試須知后,即可點擊“開始考試并計時”按鈕開始答題。單擊“開始考試并計時”后,倒計時功能、各類題目答題按鈕以及交卷按鈕即啟用,每位考生可以根據個人偏好選擇從任一種題型開始答題。
考試過程中,考生答題結果均保存在本地文件中,在考生在做完所有題目后,可以點擊“交卷”按鈕提交答案;若考試結束時,考生仍未手動交卷,系統將自動交卷。
3.5 試卷批閱功能
在線考試系統設計中,試卷的批閱功能是較為困難的環節之一。本文在線考試系統試卷批閱功能根據題型不同分別實現如下:
3.5.1 單選題批閱
單選題作為標準化的客觀試題,由于每題的答案是唯一的,對單選題的批閱,由系統通過讀取學生提交試卷的答案與數據庫中存儲的標準答案進行比較,只有完全相同的考生答案才可以得分,否則記零分。在閱卷子系統中,閱卷教師只需點擊“選擇題批閱”按鈕,即可完成所有交卷考生選擇題的自動批閱。
3.5.2 填空題、簡答題批閱
填空題、簡答題的答案具有一定主觀性,在對此類試題批閱時,閱卷子系統分別將考生答案和試題數據庫中的標準答案以及評分標準讀出來同時顯示在閱卷界面上,由閱卷教師評定后選擇得分選項。
3.5.3 Office操作題批閱
Office操作題包括Word、Excel、PowerPoint三類,在考生提交答案時是分別以三個相應類型文件形式保存至數據庫中,在對該類試題批閱時,閱卷教師打開考生提交的答案文件,根據評分標準進行人工批閱,最后確定得分情況,并提交至閱卷系統。
目前,該系統試題批閱功能暫未實現全自動化,這是我們今后還需繼續研究的方向,如對填空題、簡答題的批閱可以考慮采用字符匹配算法,在Office操作題批閱中,可運用COM技術、創建OLE對象、調用VBA接口等方法,從而實現試卷批閱的全自動化。
3.6 考生信息批量導入
在考試子系統中,充分考慮實際操作中的不同需求,對于考生信息添加既可以單個添加,也可批量導入。在批量導入操作中,用戶需要按照給定模板把需要導入的信息保存至Excel文件中,然后點擊“批量添加”按鈕即可完成考生信息的批量導入。
系統在正式投入使用之前,我們進行了嚴格的測試。測試過程中包括各子系統功能的測試和子系統之間的聯調測試。測試內容涵蓋了功能測試、性能測試、模塊兼容性測試以及壓力測試等。在測試過程中,我們重點測試用戶數量最多的考試子系統,對于測試中發現的問題,分別從軟、硬件方面進行優化,學校網絡中心為本系統提供了專用服務器,系統響應時間較短,壓力測試性能良好,并發用戶200-300個均能正常運行,確保了系統實際投入使用時的穩定性。
通過系統測試、部署安裝,該考試系統于2012年12月正式在安徽中澳科技職業學院所有專業的計算機基礎課程考核中投入使用,目前已累計完成近八千人次考生的計算機基礎課程在線考試工作。從學生考核過程來看,學生對這種信息化考核方式興趣更高;從考核效果看,學生對計算機基本知識、基本技能的掌握較好,計算機基礎課程考核結果的首次通過率大大提高。綜合來看,此種考核方式較真實地反映了計算機基礎這門課程教與學的實際情況,較好地實現了該課程的培養目標。同時,經過多次考試的積累,該課程的試題庫基本已經建成,大大降低授課教師的命題工作量。閱卷環節實現了客觀題自動閱卷、操作題隨機分配給閱卷教師進行人工批閱,在一定程度上提高了考試效率,取得了預期效果。
當然,在線考試系統的建設是一項長期的工程,需在積累實踐經驗、綜合分析的基礎上不斷完善設計思路、更新技術,逐步優化系統功能。目前該在線考試系統的生成試卷功能,是采用隨機選題算法,造成試題出現一定的重復率,在實際應用中,可根據考核內容所占比重、試題的難度系數等信息,采用更有效的算法選擇試題組成試卷,使在線考試系統更符合課程實際考核需要。另外,試卷批閱功能還需進一步完善。
[1]丁為民,鄒海,唐瑞華.大學計算機基礎課程上機考試系統設計[J].巢湖學院學報,2011,(3):41-44.
[2]謝莉莉,李勤,張榮新,等.計算機基礎課程考試系統的開發與應用[J].計算機教育,2010,(16):156-159.
[3]羅紅金,劉三星.基于.NET的《計算機應用基礎》課程教學與考試系統的設計與實現[J].現代計算機,2012,(1):73-80.
[4]朱越來.《計算機應用基礎》課程的無紙化考試系統的設計與實現[D].長春:吉林大學,2015.
[5]檀小璐.大學計算機基礎考試系統的分析與設計[D].秦皇島:燕山大學,2013.
[6]王晟.Visual Basic.NET數據庫開發經典案例解析[M].北京:清華大學出版社,2006.
[7]史永哲.大型在線考試系統的設計與實現[J].電子設計工程,2016,(7):141-147.
THE DESIGN AND IMPLEMENTATION OF ONLINE EXAMINATION SYSTEM OF COMPUTER BASIC COURSES BASED ON.NET
SONG Shi-jun
(Anhui Zhongao Institute of Technology, Hefei Anhui 230041)
On the basis of analyzing the disadvantages of traditional examination methods,combining with the characteristics of computer basic courses,an online examination system for the computer basic courses is designed and developed.The system is applied in Anhui Zhongao Institute of Technology and the effectiveness of the test system has been proved by practice.
Online examination system;VB.NET;Computer basis
TP311.52
A
:1672-2868(2017)03-0050-05
責任編輯:陳 侃
2017-04-17
安徽省質量工程軟件技術特色專業建設項目(皖教高[2011]5號174)
宋世?。?978-),女,安徽桐城人。安徽中澳科技職業學院信息工程與藝術設計系,講師。研究方向:計算機教學研究、計算機技術及應用研究。