張亞昕
(西安鐵路職業技術學院 陜西 西安 710014)
隨著計算機的普及和Internet的廣泛應用,以及計算機遠程教育網絡的建設與發展,網上教育已成為了現代教育發展的一種趨勢。而考試是教育的一個重要組成部分,教育的網絡化必然要求考試的網絡化。計算機網絡考試適合了目前社會的網絡化趨勢,必將成為一種必不可少的考試方式。在此背景下,文中運用先進的J2EE架構體系研究開發了一個能夠進行多學科課程考試的網上考試系統,方便地實現試題的分值、難度管理,科學、快速地進行試卷分析,提高考試的效率[1-3]。
J2EE為應用Java技術開發服務器端應用提供一個獨立、多用戶的、可移植的、安全的和基于標準的企業級平臺,在這個平臺上,可以快速、容易地建立融合了Internet技術的多層分布式企業應用,簡化了企業應用的開發、管理和部署[4]。J2EE保留了標準版中的許多優點,例如“編寫一次、隨處運行”的特性、方便的數據庫存儲技術,同時還提供了多數標準定義了接口,如 JNDI.JDBC,Java Mail等,在Internet應用中能夠保護數據的安全模式,得到了許多廠商的產品支持;降低了開發中間層服務的成本和復雜程度,使得服務快速的展開,縮短產品開發時間,提高產品的市場競爭力[5]。
數據庫是整個系統的核心,系統數據庫平臺的選擇需要從數據容量、數據庫管理功能、安全性等全面綜合考慮,SQL Server數據庫管理系統一方面能完全滿足數據存儲量和功能的需要,另一方面有較完備的數據庫安全機制。系統數據庫訪問采用JDBC技術,JDBC是一套允許Java與SQL數據庫對話的程序設計接口,它是用于執行SQL語句的Java API,是Java應用程序連結數據庫、存取數據的一種機制,由Java語言編寫的類和接口組成。JDBC使用已有的SQL標準并支持與其他數據庫連接標準,如ODBC之間的橋接,實現了所有這些面向標準的目標并且具有簡單、嚴格類型定義且高性能實現的接口[6]。
本系統是基于B/S結構的網絡應用體系,按照J2EE的體系架構,由4層組成:瀏覽器層、Web服務器層、業務處理層、數據層。瀏覽器層主要為所有用戶提供登錄界面,并對用戶輸入信息及使用權限進行驗證,完成驗證后轉入相應的Web瀏覽界面;Web服務器接受到來自客戶端的請求后,為不同身份的用戶分發不同的瀏覽界面,完成與用戶的交互;業務邏輯層接受Web服務器層的請求,實現網上考試系統的業務邏輯處理功能;數據庫服務器負責數據的存儲,并集中管理這些數據[7]。
我們設計的網上考試系統主要針對3類用戶:教師、學生、系統管理員。學生、教師和系統管理員分別具有不同的權限,只有通過身份認證的用戶,才可進入系統完成相應的功能。學生可以進行新用戶注冊,登陸系統參加在線考試,查詢考試成績。教師可以錄入試題,管理題庫、生成試卷、在線閱卷,統計本班次、本課程的考試成績。系統管理員可以設置用戶的訪問權限、控制考試過程等[8]。如圖1所示。

圖1 系統功能架構圖Fig.1 System function structure chart
根據系統的需要,本考試系統設計主要有3個功能模塊,分別是學生模塊,教師模塊,系統管理員模塊。
2.2.1 學生模塊
1)在線考試:系統向學生提供一個在線考試的電子平臺,每個考生進行身份驗證后可進入考試系統,并獲得一份電子試卷。考試開始后,系統自動開始考試計時,控制考試時間,并提供考試時間結束前5分鐘提醒功能。考生可提前交卷或等考試時間到后系統自動交卷,對于非法退出的考生,系統也進行自動交卷處理。為了避免在考試過程中由于停電、死機等原因造成的系統故障導致考試中斷,從而丟失考試信息,系統會自動對考生答完的題目保存答案。對于動態生成的試卷,系統會自動保存每個考生的試卷,當出現異常狀況導致考試中斷后,經管理員重置后,考生仍可以重新獲得原來的試卷,在斷點處繼續答題,從而最大限度的保護已有的考試數據,確保考試正常進行。考試結束后,系統會對客觀題部分自動進行評分并保存,以備人工閱卷。
2)成績查詢:考生可以登錄自己的賬號查詢個人考試成績,自己做題的答案、標準答案、教師評語等詳細信息,并查詢和打印參加考試課程總成績表。
3)密碼修改:該系統為每個學生查詢成績提供默認密碼,學生也可以更改默認密碼。
2.2.2 教師模塊
1)題庫管理:題庫的管理是按照考試科目-章節-知識點-試題的層次關系進行,教師可預先建立章節結構。題型主要有選擇題、判斷題、填空題、簡答題和論述題等。根據題型不同可提供不同的錄入界面。每道題目的錄入信息主要有題干、知識點、難度、題型、分數等。可進行試題的添加、編輯、刪除、查詢操作。
2)試卷庫管理:試卷是考試環節中的一個重要對象,試卷庫管理模塊實現對歷史試卷的存儲和管理,教師可以瀏覽歷史試卷,了解試卷的屬性,同時也可以得到這份試卷的答案并進行打印輸出等。可對歷史試卷進行刪除,將已經不適應考試需要的試卷刪除,確保考試系統考試的科學性、合理性。
3)試卷生成:試卷生成部分包括手動組卷和自動組卷兩種組卷方式。手動組卷是組卷老師人工抽取出滿意的試題,組成一份試卷,存入到數據庫中。因此試卷難度、分數就由組卷老師在選擇試題時進行人工控制。試卷生成后,教師也可以根據客觀需要對試題進行修改和刪除。自動組卷是教師根據自己對試卷的要求,對題型、難度、知識點、題量、分值等指標提出一定的要求,系統按照一定的組卷算法進行自動組卷,使其各項指標的實際值與教師提出的目標值盡可能接近,最大限度滿足教師的需求。若是需要動態生成試卷,教師只需設定好試卷相關參數,如:考試科目、題型、知識點、分值等,系統將在學生考試時自動到題庫里隨機抽題生成試卷信息。
4)試卷批閱模塊:該模塊可對學生做完的試卷進行批閱,包括自動閱卷和手工閱卷。自動閱卷:當學生提交考試試卷后,系統根據評分規則和標準答案負責對客觀題部分進行成績計算,如選擇題、判斷題等。手工閱卷:教師選擇手工閱卷,系統查詢出要批改的試卷,顯示出主觀題未批閱考生試卷、考生答案及標準答案;根據考生答題情況和正確答案,對主觀題部分如簡答題、論述題等進行主觀批改。
5)考試成績統計:系統可按科目和班級統計平均分、最高分、最低分、個分數段考生人數和考試通過人數;也可統計試卷的信度、效度、平均難度等指標。考務人員或教師可以查詢、統計和打印成績統計結果,為以后教學提供參考依據。
2.2.3 系統管理員模塊
1)人員管理 系統設置不同的用戶有不同的訪問權限。系統管理員可以對所有用戶進行管理,系統管理員也可以添加教師、修改教師信息、刪除教師。系統管理員選擇學生并將其添加為考生。也可以將管理權限授權給教師添加修改考生信息。
2)考試管理 系統可以實時監測考試情況,包括應考人數、實考人數、缺考人數、提交試卷人數。并且當考試過程中出現異常情況時,考務管理員可以更新學生的IP地址綁定允許學生重新登錄,保證學生可以從斷點處繼續進行考試。
3)資源管理 對所屬考試課程的學習資源,系統管理員可以修改學生的使用權限,在考試過程中,禁止學生使用。當考試結束后,恢復學生對這些資源的使用權限。
控制考試時間,是考試過程中不可缺少的條件,本系統中當點擊開始答題按鈕后,系統自動開始倒計時,一旦剩余時間用完,系統會自動提交試卷。時間控制功能部分偽代碼如下:

其中timeaa為考試所用時間,以分鐘為單位。
自動組卷界面,教師可以設定好試卷的相關參數,如:考試科目,試卷由哪些題型組成即可。當確定一切試卷參數后,系統會自動進行判斷是否合法及題庫里的試題是否夠本次試卷所要求的題目量等等信息,并自動到題庫里進行隨機抽題生成試卷信息,系統自動生成滿足條件的試卷。
本系統選擇J2EE技術作為系統的整體架構,采用客戶層、Web層、業務層和數據層的4層結構來構建網上考試平臺。通過對系統全面細致的分析,完成了系統主要功能模塊和數據庫的設計,并實現了在線考試,智能組卷,自動閱卷人工閱卷相結合,考試結果分析,考試監控等功能。從系統運行情況來看,效率很高,完全能夠進行有效的考試,極大改善了教學環境,減輕了教師工作強度。
[1]王育勤,朱衛東,陳楚湘,等.基于NET的考試平臺管理系統的設計與實現[J].計算機工程與設計,2007,28(10):2475-2477.
WANG Yu-qin,ZHU Wei-dong,CHEN Chu-xiang,etal.NET based test platform management system design and implementation of[J].Computer Engineering and Design,2007,28(10):2475-2477.
[2]王萍利.基于J2EE的高職院校教學管理信息系統的設計與實現[J].現代電子技術,2011(22):88-89,94.
WANG Ping-li.Design and implementation of vocational college’s teaching and administrative information management system based on J2EE[J].Modern Electronics Technique,2011(22):88-89,94.
[3]王明明,郭昌言,劉從軍.基于J2EE的動態配置開發平臺研究與實現[J].現代電子技術,2010(6):61-64.
WANG Ming-ming,GUO Chang-yan,LIU Cong-jun.Research and implementation of dynamic configure development platform based on J2EE[J].Modern Electronics Technique,2010(6):61-64.
[4]賈振華,褚燕春,何志學.基于J2EE的網上考試系統的設計與實現[J].北華航天工業學院學報,2008,18(6):12-14.
JIA Zhen-hua,ZHU Yan-chun,HE Zhi-xue.J2EE based online examination system design and implementation[J].Journal of North China Institute of Aerospace Engineering,2008,18(6):12-14.
[5]陸垂偉,周松林,李芳,等.基于J2EE的網絡考試系統的設計與實現[J].計算機應用與軟件,2006,23(10):139-149.
LU Chui-wei,ZHOU Song-lin,LI Fang,et al.Design and implementation of a network examination system based on J2EE[J].Computer Application and Software,2006,23(10):139-149.
[6]思志學.J2EE整合詳解與典型案例[M].北京:電子工業出版社,2008.
[7]王蓉,汪詩林.基于J2EE架構的網絡考試系統的設計與實現[J].計算機工程與應用,2005(28):211-214.
WANG Rong,WANG Shi-lin.Design and implementation of based on J2EE architecture of network test system[J].Computer Engineering and Applications,2005(28):211-214.
[8]楊秀梅.基于Asp.net的網上考試系統的設計與實現[J].實驗室研究與探索2007,26(2):4538-4540.
YANG Xiu-mei.Based Asp.net design and implementation of online examination system[J].Laboratory Research and Exploration,2007,26(2):4538-4540.