張 兵 胡建華
[摘要]建立計算機考試系統是傳統考試方式改革的需要。在概述計算機考試系統國內外研究現狀的基礎上,設計基于C/S結構的Internet環境下的計算機考試系統,并討論若干關鍵性問題。大量的實驗說明,該系統具有實用性、穩定性、安全性和易用性,基本達到預期效果。
[關鍵詞]考試 計算機考試系統 C/S
中圖分類號:TP3文獻標識碼:A文章編號:1671-7597(2009)0310064-01
一、計算機考試系統的研究現狀
計算機考試系統的實現,將教師從繁瑣的出題、監考、閱卷、試卷分析和成績統計的傳統考試中解脫出來,充分體現了準確、客觀、公正、快速、簡捷等特點。20世紀70年代,美國考試委員會著手進行計算機模擬考試的研究工作,并于1983年編制出有效的模擬考試系統,當時的名稱是計算機輔助考試系統。1990年8月,美國加利福尼亞、得克薩斯等十個州創建各州以及各高等院校相互認可的學位證書以及相應的教學體系,從而正式拉開網絡遠程考試的序幕。著名的考試機構有美國思而文學習系統有限公司。它是一家從事教育和計算機化考試服務的專業公司,在世界的6大洲140多個國家和地區有2200多個考試中心,可用25種語言提供近百個不同類型,一千多種考試,每年全球參加計算機化考試的人數約400萬。當今大部分的授證機構均委托思而文公司為其進行測試、評估。最出名的網絡教育案例,當屬美國政府舉辦的TOFEL考試,目前在全球范圍內,均可以通過國際互聯網進行TOFEL培訓與考試,大大減少了美國政府對于此項考試的開支,并能更快速、準確地為期望進入美國學習的學生服務。目前美國約有80所大學允許學生通過網絡考試獲得學位,另外,加拿大、英國等其它西方國家也在大力開展網絡考試系統。
與西方發達國家的突飛猛進相比,國內的計算機考試技術研究工作開展的相對較晚,但國內在網絡遠程教學研究工作發展相當迅速。目前各高等院校如清華大學、北京大學、上海復旦大學、同濟大學、西安交通大學、華南理工大學、北京醫科大學和湖南大學等高校己陸續在網上設立了自己的考試系統,并開展相關研究。國家信息產業部也開發了辦公自動化證書CEAC遠程考試系統、紅旗Linux遠程考試系統。
通過對國內外計算機考試系統的考察和試用,我們發現它們具備以下特點:(1)C/S結構和B/S結構并存,但基本都可以在網絡上使用;(2)大都提供自動組卷和自動評卷功能,但水平參差不齊;(3)考核軟件使用仿真模擬環境和調用真實環境兩者都有;(4)均采用了開放式試題庫,擴充比較容易;(5)對題庫的分析管理部分都比較重,都提供了最基本的功能。
二、系統設計過程中的若干關鍵問題
(一)試卷模板的定義
在無紙化考試系統中要求可以把題庫中的試題靈活進行組合,構成多種多樣的不同試題,從根本上避免雷同卷的出現。與此同時,系統還要求試卷中試題雖然不同,但試卷難易程度應該相同,考查知識點應該相同,試卷的結構也應該相同。
為了解決這種組卷中的技術問題,我們引入一個試卷模板的概念。所謂的試卷模板,是指某一套試卷的出題標準。一套試卷的模板定義好之后,本次考試的每份試卷都要套用這個模板。試卷模板不是某一套試卷中具體的試題的集合,而是試卷中各個試題所在的知識點的集合。生成試卷程序根據試卷模板中知識點的集合,以及模板中定義的題型結構,在所對應的題庫中抽取試題,達到試卷的試題雖然不同但試卷題型、難度及知識點分布相同的目的。在系統中,管理員可以自行建立試卷模板,也可以添加、刪除、修改試卷模板。隨著模板在考試中的不斷實踐以及知識點的更新變化,可以不斷的對模板進行修改,以生成更為合理有效的試卷生成策略。
(二)評分系統
評分系統是整個考試系統的關鍵部分。對于客觀題如選擇題,評分系統根據評分標準會自動、準確、迅速的評分并給出相應成績;而對于主觀題如填空、程序改錯、操作等沒有一個要求明確、標準唯一的答案,要讓計算機自動正確評分確實還有相當大的問題。在開發過程中,對于填空題和程序改錯題我們采用“黑箱測試”的方法,即用多種可能性答案的關鍵字組成數據組,然后把考生的答案與該數據組比較,如果一致,就認為考生操作正確。對于Office操作等主觀題的評分是本系統設計的難點。
首先要解決的就是Office文件的控制問題。JAVA本身沒有針對Office的控制接口,本程序選擇了jacob插件來解決這個問題。jacob是JAVA與COM的中間件,用來提供JAVA程序與Office文件進行通信。可以在http://danadler.com/jacob/下載到該插件。然后可以通過該插件操作相應的Office文件。打開文件后,可以通過編寫特定函數來進行特定的操作。這里舉查找字體的例子。代碼如下:
………
if(selection == null){
selection = Dispatch.get(word, "Selection").toDispatch();
}
if(!find_word(text)){
return 0;
}
Dispatch font = Dispatch.get(selection, "Font").toDispatch();
………
其中,Dispatch.get(word, “Selection”).toDispatch()語句用來查找要獲取字體的文字,word代表要該文字,Dispatch.get(selection,

“Font”).toDispatch()用來獲取選定文字的字體。在評分時,只需要將正確的字體與該字體進行比較就可以確定考生輸入的是否正確。
三、結束語
本文設計的計算機考試系統能夠實現系統管理、題庫管理、試卷管理、在線考試、考場管理、自動評分等流程,具有良好的伸縮性、易用性、易維護性、易擴展性和安全性。本系統已經開發完成(界面如圖1所示),在實驗室環境下做了大量的測試,基本達到了預期效果。
參考文獻:
[1](美)羅伯特.M.加涅,教育技術學基礎[M].北京:教育科學出版社,1992.
[2]栗好利,基于局域網的計算機考試系統研究與實現[D].沈陽:東北大學,2006.
[3]馬寶英,淺談在線考試系統[J].新疆職業大學學報,2006(3):82-84.
[4]張燁,基于VB的計算機考試系統的設計與實現[J].榆林學院學報,2007(6):54-56.
[5]莊志宏,基于B/S模式的計算機考試系統開發[J].科技咨詢導報,2007(10):14.
[6]馬奎林、韓德、范禮、劉強,基于WEB的計算機考試系統的功能需求探析[J].才智,2008(22):135.
作者簡介:
張兵,男,助教,昆明理工大學信息工程與自動化學院在讀研究生,研究方向:計算機應用技術。