丁為民 鄒海 唐瑞華
(1巢湖學院,安徽 巢湖 238000)
(2安徽大學計算機科學與技術學院,安徽 合肥 230039)
大學計算機基礎課程上機考試系統設計
丁為民1鄒海2唐瑞華1
(1巢湖學院,安徽 巢湖 238000)
(2安徽大學計算機科學與技術學院,安徽 合肥 230039)
在對目前國內多種計算機考試系統的優點和不足進行充分分析的基礎上,結合大學計算機基礎課程本身的特點,對計算機考試系統中涉及的主要關鍵問題進行了深入的研究,并設計出一套大學計算機基礎課程的上機考試應用系統。
考試系統;對象連接與嵌入;對象;服務器
隨著信息技術的發展,運用計算機進行考試,特別是對計算機上機操作類課程進行科學的考試是現代考試領域的一個重要發展方向。這種為適應信息技術發展和教學考試需求而出現的先進的可付諸實踐的考試技術,已經在很多領域得到應用和推廣,特別是計算機類知識和能力考試,其優點主要在于自動生成試卷、自動評分和自動進行成績統計分析。
按照軟件工程[1]的方法,設計一個應用系統需要經過幾個過程,而系統可行性分析和需求分析是設計應用系統的前期必備工作。
大學計算機基礎課程的考核分為客觀題和操作題兩部分。該課程的考試或平時考測若采取紙面形式或上機操作教師隨后人工檢查的形式,則教師工作量大,耗時多,并較易存在人為失誤的問題。所以,實現該課程的機上考試,將盡可能的提高教師的工作效率。
整個系統按功能可劃分為四個子系統:服務器自動設置子系統、學生信息管理子系統、試題管理子系統、考試管理子系統、評分回收和統計分析子系統。按照軟件工程設計的要求,得到如圖1所示的系統功能模塊圖。

圖1 系統功能模塊圖
用戶的需求具體體現在各種信息的提供、保存、更新和查詢,這就要求數據庫結構能充分滿足各種信息的輸出和輸入。收集基本數據、數據結構以及數據處理的流程,組成一份詳盡的數據字典,為后面的具體設計打下基礎。
在仔細分析調查有關考試需求的基礎上,可得到如圖2所示的本系統所處理的數據流程。

圖2 系統數據流程圖
針對考試系統的需求,通過對考試系統工作過程的內容和數據流程分析,可設計出相應的數據項和數據結構,可設計出能夠滿足用戶需求的各種實體,為后面的邏輯結構設計打下基礎。
服務器設置子系統有考生數據處理、設置信息編輯和考試服務器權限自動配置??忌鷶祿幚砉δ苁强荚嚱Y束后備份考生文件夾,同時清理用戶目錄下已考考生數據,為下一場考試作好準備。設置信息編輯的功能是指定服務器的名稱,考試工作站用戶名以及考試工作站臺數。考試服務器權限自動配置將根據相應的環境參數自動生成用戶、工作站文件夾并為其配置共享及安全屬性。
學生信息管理子系統的功能主要包括:考生信息的錄入與編輯、考號考場的自動編排、考試環境的設置、考生信息的統計等。
一個完整的考試系統應由登錄、組卷、考試環境生成、試題顯示、答案保存組成。組卷約束條件包括:試卷總分、各類題型的試題數量、分數比例和難度級別等。隨機組卷是根據一定的組卷條件,按照隨機算法生成滿足用戶要求的試卷。采用遺傳算法進行組卷是相對公平的組卷方案[2]。
在充分考慮Windows系統的安全性基礎上,考試系統包含Windows系統的常用操作,題型包括文件或文件夾操作以及Windows的定制操作等題型,其中Windows的定制操作涉及Windows注冊表的操作。對于與文件夾和文件有關的操作,在判卷過程中相應地需要進行文件與文件夾的搜索、檢查和比較。對注冊表設置的檢查,主要借助于操作系統底層API函數來實現。
Office模塊主要考核Office常用的操作,為便于學生操作,試題顯示窗口不易過大并盡量讓顯示窗體占據前端。該部分的評分則要利用VBA和OLE技術[3],評分思路是定義Office對象,檢測學生操作文件中的相應特征值并與標準答案值進行比對。
針對Vb、Vfp類的上機操作考試,設計工作的前期準備是分析數據類型結構,根據試題特點進行分類設計,評分時通過查詢操作對象的屬性、取值等與標準答案值進行比較,進而給出得分結果。
相比較Vb、Vfp類考試,C語言程序上機考試類的設計工作量要輕一些,C語言的考核主要考核編程能力。其評分的核心思路有兩種,一種利用檢測結果文件和源程序文件中的相應特征值進行相似度計算[4-5],根據相似度值進行評分;另一種辦法是利用命令行編譯源程序,利用編譯程序檢測源程序的語法正確率。
考試服務器主要起到安全共享考試數據和向考生提供獨立的磁盤空間作用。服務器手工設置比較煩瑣且易出錯,因此需編寫代碼來進行自動設置。下面的代碼是檢測服務器軟件環境是否具備的部分代碼。


如圖3所示為服務器自動設置運行圖。

圖3 自動設置服務器窗體
Windows操作考試過程中進行的操作系統定制會影響到注冊表相應值的改變,此類型考題可通過測試注冊表相應項的值來進行評判學生操作的正確與否。進行注冊表的訪問主要涉及到兩個 API底層函數 “RegOpenKey” 和“RegCreateKey”。前者用于打開一個已存在的主鍵,而后者除了能用于打開一個已存在的主鍵外,還能創建主鍵。打開或創建主鍵成功后將返回一個句柄給參數“phkResult”,這個句柄將在對鍵值的操作中用到,它就是“RegSetValueEx”、“RegQueryValueEx”和 “RegDeleteValue”中 的 “nKeyHandle”參數。通過查詢注冊表相應項的值與參考答案進行比較,若相等,則學生操作正確。例操作注冊表的部分代碼如下:
′API聲明
Private Declare Function RegCreateKey Lib“advapi32.dll”Alias“RegCreateKeyA”(ByVal hKey As Long,ByVal lpSubKey As String,ByRef phkResult As Long)As Long
′建立主鍵
Private Declare Function RegOpenKey Lib“advapi32.dll”Alias “RegOpenKeyA”(ByVal hKey As Long,ByVal lpSubKey As String,ByRef phkResult As Long)As Long
′打開主鍵
Private Declare Function RegDeleteKey Lib“advapi32.dll”Alias“RegDeleteKeyA”(ByVal hKey As Long,ByVal lpSubKey As String)As Long
圖4所示為Windows操作運行圖。

圖4 Windows文件(夾)操作考試主界面
Office操作題的檢測可借助VBA和OLE技術。下面以Word為例進行分析。Word文檔是多個對象組成的,這些對象及其屬性值決定了文檔的結構和格式,可通過讀取答題文檔中相應對象的屬性值來進行評分。
要在程序中控制Word,首先定義一個引用Word中“Basic”對象的對象變量:
Dim Wordobj as Object
接著將Word中的“Basic”對象賦給該對象:
Set Wordobj=CreateObject(“Word.Basic”)
再使用微軟的VBA代碼來控制Word,使用方法和在Word宏中使用VBA指令的方法基本相同。為了編寫程序的需要,可以通過對Word進行的操作或控制先在Word中實際進行一遍,并同時錄制宏,利用生成的宏組建相應的評分模塊。


圖5所示為Word操作運行圖。

圖5 Word操作考試主界面
在顯示考試題目信息時,有時需要顯示圖形。為了考試安全,圖形須放在題庫中的pic圖形字段中,并設為OLE對象類型,考試時再從題庫
中提取出來進行顯示。部分代碼如下:
′ksk為考試庫,Data1為數據控件,OLE為容器控件

′使tm的pic字段與OLE1容器控件關聯,實現圖形在OLE中的顯示。
通過安排部署,在10年12月進行了實際考試檢測。從學生的實際操作來看,學生對基本理論、基本技能方面的內容掌握較好。由于部分試題具有一定的靈活性,大多數學生經認真思考后能夠作出正確操作,也有部分學生對基礎知識掌握不牢,不能將所學內容靈活運用。綜合來看,絕大多數抽取的試題均很好反映了教與學的情況,學生的成績分布合理??荚囅到y能進行自動閱卷評分并統計出多種分析報表,顯著地提高了考試效率,取得了預期的效果。
上機考試系統的建設是一項長期工程,需要在全面規劃的基礎上統一設計,分步實施??荚囅到y中的遺傳算法組卷和語句相似度評分思路還有較大的開發空間,在進一步研究人工智能理論的基礎上,部分功能還可以進行進一步提高和完善。
[1]王少鋒.面向對象技術UML教程 [M].北京:清華大學出版社,2006
[2]程鵬.支持智能組卷和自適應功能的計算機考試系統 [D].哈爾濱:北京工業大學,2004.
[3][美]Jonh WalkEnbach.EXCEL 2003 高級 VBA 編程 [M].北京:電子工業出版社,2005.
[4]南鉉國,崔榮一.基于多層次融合的語句相似度計算模型 [J]延吉:延邊大學學報 2007,33(3):16-23
[5]唐歆瑜,樂文忠,李志成.基于知網語義相似度計算的特征降維方法研究[J].科學技術與工程,2006,6(21):3442-3446.
DESIGN OF A NEW EXAMINATION SYSTEM ON COMPUTER FOR THE BASIC COLLEGE COURES
DING Wei-min1ZHOU Hai2TANG Rui-hua1
(1 Chaohu University,Chaohu Anhui 238000)(2 College of Computer Science and Technology,Anhui University,Hefei Anhui 230039)
In this paper,the key problems of examination system on computer are deeply investigated by considering the characteristics of the basic college computer course.Furthermore,through analyzing for the weaknesses and advantages of current domestic examination systems on computer,a new examination system on computer is designed for the basic college computer course.
Examination System;Object Linking and Embedding;Object;Server
TP311.1
A
1672-2868(2011)03-0041-04
2011-3-10
丁為民(1971-),男,安徽巢湖人。講師,碩士,研究方向:智能軟件、軟件工程
責任編輯:陳 侃