朱巍 ,譚峰
(1.黑龍江八一農墾大學信息技術學院,大慶 163319;2.黑龍江省人事考試中心)
在計算機網絡應用技術逐漸滲入社會生活各個層面的今天,無紙化考試與無紙化辦公一樣已成為大勢所趨。無紙化考試也越來越成為各學校、企業(yè)和事業(yè)單位考核學生與員工的一種趨勢,它的優(yōu)勢不但體現(xiàn)在人力上也體現(xiàn)在物力上,無紙化考試系統(tǒng)的自動評閱、計分、成績存檔功能將有效地避免資源的浪費,有利于環(huán)保,減少人力,提高效率。傳統(tǒng)的考試方式也面臨著變革,而網絡考試則是一個很重要的方向。試卷可以根據題庫中的內容即時生成,可避免考試前的壓題;而且可以采用大量標準化試題,從而使用計算機閱卷,大大提高閱卷效率;還可以直接把成績送到數據庫中,進行統(tǒng)計、排序等操作。所以現(xiàn)在較好的考試方法為網絡考試,試題內容放在服務器上,考生通過姓名、準考證號碼和口令進行登錄,考試答案也存放在服務器中,這樣考試的公平性、答案的安全性可以得到有效的保證。因此,采用網絡考試方式將是以后考試發(fā)展的趨勢[1]。
計算機應用是每一個大學生必須具備的能力,這是每一個大學生必修的課程,因為學生量大,因此各高校一般采用傳統(tǒng)的紙制試卷考試方式,考試監(jiān)考、閱卷繁雜,需要大量的教師,且易出錯,效率低下。采用高校局域網考試系統(tǒng)不僅或以節(jié)省大量的人力、物力和財力,而且極大地提高了考試進程及效率。
根據高??荚囈?,為保障考試的順利進行,系統(tǒng)應具備下列功能[2]:
(1)考生通過局域網進行考試,考生登陸后自動從服務器上讀取試題并答題,考試結束后將試卷及答案通過局域網回傳給服務器。
(2)教師可以事先或考前制定考試方案,并根據考試方案以自動或手動方式從題庫中選出符合要求的試題生成電子考試試卷,快速搭建考試平臺。
(3)管理員能通過服務器進行試卷分發(fā),并能控制整個考試的流程。
根據系統(tǒng)功能要求,將系統(tǒng)分為服務器端和客戶端兩部分。服務器端主要負責考生信息管理、試題庫管理、試卷信息管理、數據庫備份及考試控制等,其功能模塊圖如圖1 所示。
圖1 服務器端功能模塊圖Fig.1 The function models in server side
客戶端主要負責為考生提供一個友好的答題界面,并在答題完畢后將答案提交回傳給服務器,其工作流程為:登錄→答題→交卷。
系統(tǒng)采用C/S 三層結構開發(fā),采用Microsoft SQL Server2000 作為其數據庫,采用.NET Remoting 技術實現(xiàn)了遠程分布式開發(fā)與通信處理,總體結構圖為圖2。
圖2 系統(tǒng)總體結構圖Fig.2 Global structure chart of the system
三層架構是目前軟件開發(fā)采用的主要架構,這種架構比傳統(tǒng)的C/S 架構增加了一個應用程序服務器,應用程序服務器包括了統(tǒng)一的界面、業(yè)務規(guī)則和數據處理邏輯等等,這樣客戶端程序就可以做得比較小,也就是常說的瘦客戶,由于業(yè)務規(guī)則和數據處理邏輯的集中在服務器上統(tǒng)一管理,客戶端無須進行復雜的計算,也不會因為錯誤的操作而影響到其他的用戶,所以三層架構具有更高的可靠性、穩(wěn)定性、安全性和效率[3]。三層架構示意圖如圖3 所示。
圖3 三層架構示意圖Fig.3 Schematic diagram of the 3-tier
為使系充分發(fā)揮服務器端和客戶端網絡的協(xié)作能力,系統(tǒng)采用Windows 平臺下的Windows DNA(Distributed interNet Application Architecture,分布式網絡應用結構)策略模型[4],通過該策略模型建造一個在局域網絡上運行的可伸縮的多層應用軟件,并把COM+作為Windows DNA 策略中的中間件。COM+為中間層提供了負載平衡、對象池(Object Pooling)、事務特性等一系列的強力支持,并且在COM+中工作的程序受到操作系統(tǒng)的保護,從而最大的保證了系統(tǒng)的安全、穩(wěn)定和高效。
為了保障服務器端和客戶端順暢、實時的通信,系統(tǒng)采用.NET 平臺提供的.NET Remoting 技術。其實質就是:客戶端創(chuàng)建服務端對象的代理并調用其方法,通過信道網絡傳輸到服務端,在服務端上處理客戶端傳遞過來的參數數據并返回處理結果(如果有的話)給客戶端的接收變量。這種方式與傳統(tǒng)上的方法調用明顯不同,它輕松實現(xiàn)了數據的分布式處理。
Remoting 的通道主要有兩種:TcpChannel 和HttpChannel,HttpChannel 提供了一種使用 Http 協(xié)議,使其能在Internet 上穿越防火墻傳輸序列化消息流,因此具有更好的互操作性。系統(tǒng)采用HttpChannel實現(xiàn)服務器端和客戶端之間的通信。
在高??荚囅到y(tǒng)中,多采用教師制定試卷生成方案,由系統(tǒng)自動生成試卷的策略,這樣既可以保證出卷的公平性,又可以大大減輕了老師的勞動強度。但在制定試卷生成方案時,必須考慮要考核的章節(jié)、各章節(jié)所占的比重、考試題型、考題的難度系數、題的數量及分值等參數。系統(tǒng)的“自動生成試卷”模塊很好地實現(xiàn)了該項功能。其思路是先由教師根據教學要求及考核要求制定試卷生成方案,再由系統(tǒng)按方案自動從試題庫中隨機制取試題,組成一套試卷流程圖如圖4 所示[5-6]。
系統(tǒng)提供了三種試卷生成規(guī)則,即按考核知識點優(yōu)先、按難度優(yōu)先及混亂生成。制定試卷生成方案運行界面如圖5 所示。
在線考試模塊是系統(tǒng)的最重要的一個模塊,它完成了服務端與客戶端的在線考試部分,并能夠及時監(jiān)控客戶端狀態(tài),監(jiān)視客戶端完成考試,并可以設置任何已經生成的試卷,按照考試指定的時間完成收回試卷的功能,當試卷接收完畢后,能夠將試卷答案按Word、Excel 等格式進行保存[7]。
圖4 自動生成試卷流程圖Fig.4 Flow of automatically generating test papers
圖5 試卷生成方案運行界面Fig.5 Interface of scheme of generating test paper
系統(tǒng)采用了Remoting 框架,采用的三層體系設計結構。詳細設計過程如下。
(1)建立遠程分布式對象,作為業(yè)務邏輯層,把服務器和客戶端所用到的所有業(yè)務邏輯及方法按照劃分放在遠程對象中,所有的服務器和客戶端的調用都由遠程對象統(tǒng)一管理。Remoting 的設計中,采用客戶端激活模式。
(2)在服務器端,設置了一個回調類MyCallbackClass,它負責注冊遠程對象的事件,并將它和服務器相連,當遠程對象觸發(fā)事件后,通知服務器事件到達,此時會調用窗體線程傳遞事件代碼,在線程間必須設置同步或異步方式,以達到不同的響應效果。
(3)服務器和遠程對象以及客戶端通訊時,會設置事件參數,在它們之間調用,這樣把所有的信息封裝到參數中,包括環(huán)境變量和試卷信息等,可以保證數據的安全性。
(4)客戶端中也設置了一個回調類MyCallbackClass,它同樣注冊了遠程對象的事件,這樣服務器、遠程類和客戶端之間可以通過事件的觸發(fā)而響應不同的操作而不需要手工加以干預。
圖6 為考試過程中服務器端的運行界面。
圖6 服務器端運行界面Fig.6 Interface of the server side
圖7 為考試過程中為四名學生答題在客戶端的運行界面。
圖7 客戶端運行界面Fig.7 Interface of the client side
系統(tǒng)實現(xiàn)了高校局域網考試系統(tǒng)的設計與開發(fā),通過服務器端進行考生信息管理、試題庫管理、試卷的生成及考試過程的全程控制,客戶端為考生提供了友好的答題環(huán)境,能滿足高校考試由教師直接命題考試和由題庫按考試內容、難度系統(tǒng)等隨機抽取試題的考核方式要求,并采用.NET Remoting 技術實現(xiàn)了分布式開發(fā),同時保障了服務器端和客戶端的順暢實時的通信,從而保障了考試的順利進行。經對“計算機文化基礎”課程的考試的實際運行,效果良好。
[1] 馬曉丹,祁廣云,關海鷗,等.計算機基礎課網絡教學平臺的設計與實現(xiàn)[J].黑龍江八一農墾大學學報,2010,22(6):62-64.
[2] 李偉為.基于ASP.NET2.0 的在線考試系統(tǒng)的設計與實現(xiàn)[J].計算機應用與軟件,2011,28(9):163-165.
[3] 高軍,馬鐵民,高云麗.高校監(jiān)考管理系統(tǒng)的設計與實現(xiàn)[J].黑龍江八一農墾大學學報,2011,23(3):65-67.
[4] 袁冰,楊棖.基于考試任務的分布式考試系統(tǒng)設計[J].計算機工程與設計,2011,32(10):3530-3533.
[5] 鄧慧琴,魏樹峰,蔣榮.《計算機應用基礎》Web 考試系統(tǒng)的自動化測試方案[J].齊齊哈爾大學學報,2012,28(1):10-13.
[6] 陳澤琳,張慶彪.基于JAVA 的考試系統(tǒng)中題庫設計及組卷算法[J].重慶理工大學學報:自然科學版,2010,24(3):48-55.
[7] 劉娜,楊新.基于Web 和智能Agent 的網上考試系統(tǒng)的實現(xiàn)[J].西華大學學報:自然科學版,2008,27(2):20-22.