廣東石油化工學院 李亮超
?
基于Winsock技術的網絡考試系統設計與實現
廣東石油化工學院 李亮超
網絡考試是新式的考試方式。合理的網絡技術能完善網絡考試系統,有利于提高考試系統的管理。本文以VisualBasic.NET為開發環境進行網絡考試系統設計,使用Winsock技術,以Access為后臺數據庫格式,構建以C/S模式為基礎的網絡考試系統平臺,確保該考試系統的功能得以順利實現。
Winsock控件 C/S模式 網絡考試系統 報表生成
隨著信息化社會和計算機技術的發展,網絡考試系統被越來越多的學校采用,這種模式會影響將來的考試模式。由于網絡考試系統的設計和實現在我國起步較晚,如何落實系統每一步的設計成為網絡技術人員需要解決的問題。本文結合這方面的問題,討論分析網絡考試系統的設計。
網絡考試系統的開發環境:VisualBasic.NET程序的開發設計以面向對象為設計思想,把一些程序設計的問題逐步分解成為獨立個體,且相對容易的對象集合。
網絡考試系統的實際運行環境:使用Window XP或以上操作系統。
網絡考試系統的開發模式:該網絡考試系統的開發模式為C/S模式,該模式能在一定程度上減少網絡傳輸數據量(即“網絡流量”),從而提高系統處理數據的速度。
系統通信協議:傳輸控制協議/因特網互聯協議(即TCP/ IP協議),該協議在互聯網中占據十分重要的地位,在TCP/IP協議的基礎上,利用Winsock控件進行網絡通信。要實現數據傳輸,用戶要先進行TCP連接,以便建立和遠程計算機之間的聯系,方便用戶進行數據傳輸。
1.考試系統的整體性設計
該網絡考試系統有2個子系統,分別是主控端和被控端,數據在子系統中流轉。其中,學生端最主要的功能在于給學生輸入考試所需的基本信息、抽取考試套題、進行自主答題以及提交試卷。主控端最主要的功能是接收學生提交的答案、進行相應的考務管理、生成相關的表格檔案記錄以及利用局域網絡傳輸數據,具有安全可靠,準確高效的特點。
2.數據庫的實現
(1)關系型數據庫功能
關系數據庫比較常見的開發工具是Access表格,其有利于人們對各類信息進行分類匯總,從而方便使用者進行查詢、存儲信息以及檢索數據資料。數據庫利用數據表示圖或者自定義窗體,借以收集信息資料。數據表示圖提供的電子表格與Excel類似,使數據庫的信息一目了然。
(2)系統用ODBC連接數據庫(見下圖)
該網絡考試系統因使用了C/S模式,能根據計算機中的ODBC配置和管理相關開發工具,建立相關數據庫:①VB程序指定分布式業務網絡(DSN)名稱;②利用開放數據庫連接的數據源對分布式業務網絡進行解析;③使用用戶工作站對數據庫的服務器名稱進行相關解析;④對DSN的用戶名以及密碼,主要采用數據庫服務器進行驗證。

VB程序與數據庫的連接示意圖
3.網絡考試系統的功能模塊與關鍵技術實現
(1)網絡考試系統的模塊劃分
①記錄相關人員基本信息的用戶信息模塊;②記錄考試題目、學生答題情況、得分的試卷模塊;③包含基本信息庫、試卷與成績庫以及教務庫等在內的數據庫模塊;④包含固定形式的抽題、隨機抽題與恢復前一次考題的抽題模塊;⑤權限管理模塊:給不同的用戶(考試人員、系統管理人員等)提供與其身份相符的使用權限;⑥利用系統控件互相通信并實時檢測系統內的網絡狀態,接收客戶端數據庫的網絡通信模塊;⑦學生進行解答的答題模塊;⑧分主觀題評閱(考務人員協助完成評閱)、客觀題評閱(計算機評閱并建立數據庫)的閱卷模塊;⑨生成包含各類信息、成績并可進行打印存檔的報表生成模塊;⑩為學生提供考試計時器,并在學生的答題時間結束但還沒有提交試卷時激活強制提交考卷程序的時間管理模塊;?包含所有相關信息的檔案生成模塊。
(2)網絡考試系統的主要功能
第一,試題和題庫管理的功能模塊。
“申請答題”的代碼
Dim sql$
On Error Go To netyn
If Text1.Text=""Then
Text1.Text=""
Text1.SetFocus
MsgBox"您輸入的查詢值有誤,請重新輸入查詢值。請檢查是否輸入了空值。"
Exit Sub
End If
Data1.DatabaseName=("U:ksxt_ksjhksxt_ksjh_a1_97_ mi.mdb")'讀取數據庫
Data1.Connect=";pwd="&"visualc#2006"
sql="Select*Fromdatadb1Where準考證號='"&Trim(Text1. Text)&"'"

第二,通訊模塊的管理功能。測試網絡的實時狀態,并由主控端自動接收學生端提交的數據庫信息。通過設置和調試Winsock控件的屬性,簡化與其他設備的連接方式,同時互換不同客戶端的數據,從而實現網絡通信。應用傳輸控制協議時,只要設定本地端口號,隨后使Listen處于阻塞狀態,等待客戶發出的連接請求,就能建立網絡與實例相互連接的服務器端。
第三,時間控制管理的模塊功能。為學生提供考試計時器,并在學生的答題時間結束但還沒有提交試卷時激活強制提交考卷的程序,以確保考試工作的順利進行。整個網絡考試系統的日期顯示與標簽的CAPTION屬性的日期函數相關,并通過其實現,具體的有關代碼如下:

將計時器的timer1控件與能保存時間的外部變量a結合使用,可以顯示系統時間。將變量a的默認值設置為分鐘數,即a=100,而計時器的interval屬性則設置成60000,計時1m/次。代碼如下:

綜上所述,各個模塊綜合性建構,有可能確保該考試系統的有效性、安全性以及可靠性,使網絡考試系統呈現智能化。考試過程中,網絡考試系統可以利用計算機的有關程序代替人工操作完成相關工作,在很大程度上彌補了傳統考試的缺陷,實現考試信息化和科學化,這種模式值得我們探討運用。
[1]陳海蕊.基于VB的學生考試系統的設計與實現[J].福建電腦,2009
[2]鄧 緋,陳 印.使用Winsock控件開發服務器/客戶端程序[J].四川職業技術學院學報,2004
ISSN2095-6711/Z01-2016-09-0031