彭亮清 吳耀群 陳瑋
摘要:該文針對(duì)當(dāng)前在線考試系統(tǒng)和計(jì)算機(jī)考試系統(tǒng)的缺點(diǎn),提出了通用標(biāo)準(zhǔn)網(wǎng)絡(luò)考試系統(tǒng)設(shè)計(jì)的原則和功能,然后介紹了系統(tǒng)設(shè)計(jì)中常用的關(guān)鍵技術(shù),最后對(duì)系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)進(jìn)行了概要的介紹,對(duì)通用標(biāo)準(zhǔn)網(wǎng)絡(luò)考試系統(tǒng)的開(kāi)發(fā)具有一定的參考價(jià)值。
關(guān)鍵詞:通用標(biāo)準(zhǔn)網(wǎng)絡(luò)考試系統(tǒng);系統(tǒng)設(shè)計(jì);關(guān)鍵技術(shù)
中圖分類(lèi)號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)18-0080-03
Design of Network Examination System Common Criteria
PENG Liang-qing1, WU Yao-qun1, CHEN Wei2
(1.School of Information Engineering, Shaoyang University, Shaoyang 422000, China;2. Department of Electrical Engineering, Shaoyang University, Shaoyang 422000, China)
Abstract: This article is for the shortcomings of the current online examination system and the computer examination system, put forward the principles and features common standard network test system design, then introduces the system design commonly used in key technologies, and finally the system design and realization of the summary introduction, develop a common standard for network test system has a certain reference value.
Key words: General Standard Network Test System; system design; key technology
隨著現(xiàn)代計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)技術(shù)的快速發(fā)展,傳統(tǒng)的考試方式也發(fā)生了前所未有的深刻變革,越來(lái)越多的考試采用計(jì)算機(jī)答題的方式進(jìn)行,比如現(xiàn)在的托福、計(jì)算機(jī)資格認(rèn)證等,這種基于網(wǎng)絡(luò)的計(jì)算機(jī)考試系統(tǒng)可以實(shí)現(xiàn)試題分發(fā)以及準(zhǔn)確和嚴(yán)格的時(shí)間控制,有些系統(tǒng)還能夠進(jìn)行即時(shí)的成績(jī)統(tǒng)計(jì)和評(píng)判,大大提高了考試組織的效率。但目前的考試系統(tǒng)存在著明顯的不足,主要表現(xiàn)在專(zhuān)業(yè)性不強(qiáng)、考試和答題界面不友好、試后統(tǒng)計(jì)分析項(xiàng)目偏少等,本文針對(duì)這些缺點(diǎn),力求設(shè)計(jì)并實(shí)現(xiàn)一種界面友好、配置靈活、安全健壯的考試系統(tǒng),同時(shí)在數(shù)理統(tǒng)計(jì)的基礎(chǔ)上對(duì)考生的答案進(jìn)行相關(guān)性分析,并將分析結(jié)果及時(shí)反饋到題庫(kù)維護(hù)模塊,提高了題庫(kù)的有效性和準(zhǔn)確性,能夠更加準(zhǔn)確地反映考生的真實(shí)水平。
1 通用標(biāo)準(zhǔn)網(wǎng)絡(luò)考試系統(tǒng)設(shè)計(jì)的原則和功能
通用標(biāo)準(zhǔn)網(wǎng)絡(luò)考試系統(tǒng)設(shè)計(jì)的基本原則應(yīng)滿足以下幾個(gè)方面[1]:一是通用性原則。系統(tǒng)應(yīng)能克服目前考試系統(tǒng)通用性差的缺點(diǎn),數(shù)據(jù)的結(jié)果和試題的顯示模式應(yīng)能滿足試題內(nèi)容和類(lèi)型分離的要求,對(duì)主觀題、客觀題、不同領(lǐng)域的試題內(nèi)容具有較強(qiáng)的適應(yīng)性。 二是友好性原則。現(xiàn)有軟件的用戶體驗(yàn)關(guān)注不夠,在考試過(guò)程中容易給考生帶來(lái)額外的負(fù)擔(dān),部分考生可能因?yàn)楹?jiǎn)單的操作失誤無(wú)法完成考試,所以通用性的考試系統(tǒng)應(yīng)該克服這樣的缺點(diǎn)。三是便于擴(kuò)展和維護(hù)原則。通用的考試系統(tǒng)應(yīng)充分考慮系統(tǒng)的可擴(kuò)展性,在系統(tǒng)結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)和系統(tǒng)后臺(tái)數(shù)據(jù)庫(kù)都應(yīng)盡可能采用模塊化、組件化的結(jié)構(gòu),便于系統(tǒng)靈活配置系統(tǒng)模塊和客戶端工具。四是安全性原則。多數(shù)情況下,考試試題要求一定的保密性,考試系統(tǒng)應(yīng)能保證在考試的各個(gè)階段都有完備的安全保密措施,避免試題外泄??赏ㄟ^(guò)加裝秘鑰、控制客戶端底層調(diào)用程序等手段,保證試題不被帶出考場(chǎng)。五是可靠性原則。考試系統(tǒng)一旦出現(xiàn)故障,會(huì)給考生帶了嚴(yán)重的心理壓力和時(shí)間和精力損失,通用考試系統(tǒng)在設(shè)計(jì)時(shí)應(yīng)充分考慮系統(tǒng)的冗余度,確保系統(tǒng)故障時(shí)能夠自動(dòng)恢復(fù)系統(tǒng)數(shù)據(jù)和考生的答題數(shù)據(jù),盡量避免系統(tǒng)的整體性癱瘓。
通用標(biāo)準(zhǔn)網(wǎng)絡(luò)考試系統(tǒng)應(yīng)具備以下幾個(gè)功能:一是用戶管理功能。系統(tǒng)應(yīng)能管理所有用戶的類(lèi)別、認(rèn)證信息、權(quán)限等信息。二是考試功能。包括試卷的生成、傳輸、顯示,同時(shí)還應(yīng)具有試卷評(píng)判和統(tǒng)計(jì)功能。三是題庫(kù)維護(hù)功能。包括題庫(kù)的創(chuàng)建、錄入和刪除,同時(shí)應(yīng)能動(dòng)態(tài)調(diào)整試卷難度。四是系統(tǒng)配置和維護(hù)功能。系統(tǒng)應(yīng)能自動(dòng)適應(yīng)不同考試環(huán)境,靈活配置考試系統(tǒng)各個(gè)模塊,支持主流的數(shù)據(jù)庫(kù)產(chǎn)品。在工作模式上,系統(tǒng)既要能支持基于遠(yuǎn)程服務(wù)器的大型互聯(lián)網(wǎng)考試,也要能支持基于本地服務(wù)器的小型局域網(wǎng)考試。通用標(biāo)準(zhǔn)考試系統(tǒng)的功能具體應(yīng)劃分為5個(gè)模塊:在線考試模塊、考試管理模塊、題庫(kù)管理模塊、管理員管理模塊、成績(jī)?cè)u(píng)判和統(tǒng)計(jì)模塊。
2 通用標(biāo)準(zhǔn)網(wǎng)絡(luò)考試系統(tǒng)設(shè)計(jì)的關(guān)鍵技術(shù)
2.1 B/S 結(jié)構(gòu)
B/S 結(jié)構(gòu)是一種三層(3-Tier)體系結(jié)構(gòu),就是將傳統(tǒng)的應(yīng)用程序的任務(wù)邏輯分為三個(gè)服務(wù)“中間層”,如圖 1所示。
如上圖所示,客戶層主要負(fù)責(zé)終端用戶應(yīng)用程序組件的處理,主要由客戶端的網(wǎng)頁(yè)瀏覽器組成,中間層主要提供應(yīng)用程序和系統(tǒng)級(jí)的處理能力,客戶端的應(yīng)用程序通過(guò)中間層的組件來(lái)實(shí)現(xiàn)數(shù)據(jù)的處理,數(shù)據(jù)庫(kù)層主要為應(yīng)用程序提供數(shù)據(jù)管理服務(wù),可以為應(yīng)用程序進(jìn)行批量的數(shù)據(jù)處理,SQL Server 和 Oracle 8i 是Web系統(tǒng)中主流的數(shù)據(jù)庫(kù)工具。在B/S 結(jié)構(gòu)的應(yīng)用程序中,由于大量的具體業(yè)務(wù)規(guī)則、數(shù)據(jù)訪問(wèn)和任務(wù)的處理都可通過(guò)封裝的方式進(jìn)行,所以大多數(shù)情況下客戶端通過(guò)中間層與數(shù)據(jù)庫(kù)連接進(jìn)行信息的交互,其優(yōu)點(diǎn)主要有:1)封裝后的中間層可以承擔(dān)大量的數(shù)據(jù)訪問(wèn)功能,這樣就可以大大減少服務(wù)器的連接數(shù)量,并且動(dòng)態(tài)的數(shù)據(jù)連接和釋放方式使得客戶端數(shù)量可以不受服務(wù)器數(shù)據(jù)處理能力的限制。2) 提高可維護(hù)性。業(yè)務(wù)規(guī)則和校驗(yàn)業(yè)務(wù)都通過(guò)中間層實(shí)現(xiàn),所以當(dāng)業(yè)務(wù)規(guī)則改變時(shí)只需改變中間層的封裝組件,不需改變客戶端程序,提高了系統(tǒng)維護(hù)的效率。3)提高系統(tǒng)的配置靈活性。因?yàn)榛贐/S三層結(jié)構(gòu)的考試系統(tǒng),其大量的業(yè)務(wù)通過(guò)訪問(wèn)和調(diào)用中間層實(shí)現(xiàn),所以重新配置系統(tǒng)時(shí),不需要重新進(jìn)行開(kāi)發(fā),直接改變中間層的封裝就可實(shí)現(xiàn),增加了系統(tǒng)配置和事務(wù)處理的靈活性。
2.2 ASP 技術(shù)
ASP(Active Server Pages)是微軟公司推出的動(dòng)態(tài)網(wǎng)頁(yè)開(kāi)發(fā)技術(shù),支持多種主流的網(wǎng)頁(yè)腳本語(yǔ)言,通過(guò)向頁(yè)面嵌入動(dòng)態(tài)的組件和元素,能夠有效減少對(duì)客戶端要求,減少后期的維護(hù)工作[2]。ASP 的主要特點(diǎn)有:一是編輯方便。通過(guò)記事本等常用的文本編輯器就可進(jìn)行網(wǎng)頁(yè)的編輯設(shè)計(jì)。二是編譯快捷。腳本程序編輯完成后可直接在服務(wù)器端執(zhí)行,無(wú)需進(jìn)行二次編譯。三是兼容性強(qiáng)?;赪indows系統(tǒng)的優(yōu)勢(shì),ASP能與絕大多數(shù)的控件和描述語(yǔ)言兼容,通過(guò) plug-in 的方式,還可使用第三方廠商的腳本語(yǔ)言。四是程序安全性高。客戶端無(wú)法看到ASP 源程序,這就避免了程序腳本的外泄。五是可擴(kuò)展性強(qiáng)。ASP可以與主流的高級(jí)編程語(yǔ)言結(jié)合,比如VC++、VB、COBOL 等,進(jìn)行基于網(wǎng)頁(yè)的程序開(kāi)發(fā)。
2.3 組件技術(shù)
1)COM 和 OLE 技術(shù)
COM(Component Object Model)是微軟開(kāi)發(fā)的組件對(duì)象模型,該模型使多個(gè)應(yīng)用程序和組建對(duì)象進(jìn)行協(xié)同和信息交換成為可能,它以動(dòng)態(tài)鏈接庫(kù)或可執(zhí)行文件(EXE)的形式發(fā)布的無(wú)需編譯即可執(zhí)行的二進(jìn)制代碼,遵循通用的COM通信規(guī)范,這就使得使組件和應(yīng)用、組件與組件兼容性大大提高,相互間的通信更為方便,系統(tǒng)的伸縮彈性更大。
2)ActiveX 技術(shù)
ActiveX 是指由控件、動(dòng)態(tài)鏈接庫(kù)和 ActiveX 文檔所組成的組件,它通常以DLL的形式存在,必須以某種獨(dú)立軟件作為容器運(yùn)行。ActiveX是 OLE 技術(shù)在IE上的擴(kuò)展,其核心基礎(chǔ)和技術(shù)是OLE。
2.4 ADO 數(shù)據(jù)庫(kù)訪問(wèn)技術(shù)
ADO(Active Data Object)是內(nèi)置于ASP的服務(wù)器組建和數(shù)據(jù)庫(kù)訪問(wèn)技術(shù),通過(guò)與ASP結(jié)合,建立網(wǎng)頁(yè)數(shù)據(jù)庫(kù)信息,并支持網(wǎng)頁(yè)上對(duì)數(shù)據(jù)庫(kù)進(jìn)行訪問(wèn)和操作,具有操作方便、配置靈活、運(yùn)行高效的優(yōu)點(diǎn)。ADO 對(duì)遠(yuǎn)程數(shù)據(jù)庫(kù)的操作主要包括三步:建立連接、數(shù)據(jù)處理和斷開(kāi)連接。ADO 對(duì)象庫(kù)中包括了 7 個(gè)對(duì)象(Connection、Command、Parameter、Recordset、
Field、Error、Property)和 4 個(gè)集合(Errors、Parameters、Fields、Properties)。
3 通用標(biāo)準(zhǔn)網(wǎng)絡(luò)考試系統(tǒng)的概要設(shè)計(jì)
3.1 軟件系統(tǒng)結(jié)構(gòu)設(shè)計(jì)
根據(jù)上文的分析和系統(tǒng)設(shè)計(jì)的需求,設(shè)計(jì)出通用考試系統(tǒng)的業(yè)務(wù)流程[3]。在通用標(biāo)準(zhǔn)網(wǎng)絡(luò)考試系統(tǒng)中,其軟件體系結(jié)構(gòu)和系統(tǒng)層次要根據(jù)考試系統(tǒng)的用戶(管理員、教師、考生)的實(shí)際需求和現(xiàn)實(shí)業(yè)務(wù)進(jìn)行設(shè)計(jì),本文設(shè)計(jì)的系統(tǒng)功能劃分為在線考試、考試管題庫(kù)管理、管理員管理、成績(jī)統(tǒng)計(jì)五大部分,功能模塊如圖2所示。
3.2 系統(tǒng)的文件設(shè)計(jì)
ges為存放通用考試系統(tǒng)文件的文件夾,存放在根目錄文件夾下;css為存放 css 文件的文件夾;data為存放數(shù)據(jù)庫(kù)數(shù)據(jù)的文件夾; examsys為存放系統(tǒng)程序文件的文件夾; exam為存放 word 試卷文件的文件夾; conn為存放數(shù)據(jù)庫(kù)連接文件的文件夾;images為存放圖片和 Flash 文件的文件夾;user為存放用戶相關(guān)程序文件的文件夾,上述文件均存放在 ges 目錄下。
3.3 接口設(shè)計(jì)
接口設(shè)計(jì)包括人機(jī)交互的界面設(shè)計(jì)、內(nèi)部和外部接口設(shè)計(jì)等,本文重點(diǎn)對(duì)內(nèi)部和外部接口設(shè)計(jì)進(jìn)行介紹。根據(jù)上文的功能設(shè)計(jì)和技術(shù)應(yīng)用,在線考試功能的內(nèi)部接口為考生和管理模塊,外部接口為考試系統(tǒng)數(shù)據(jù)庫(kù)接口,考試管理功能的內(nèi)部接口為考生、考卷和考場(chǎng)管理模塊,外部接口為考試系統(tǒng)數(shù)據(jù)庫(kù)接口,題庫(kù)管理功能的內(nèi)部接口為試卷管理模塊,外部接口同考試管理功能,管理員管理內(nèi)部接口為考試管理、題庫(kù)管理和成績(jī)統(tǒng)計(jì)模塊,外部接口同考試管理功能,成績(jī)統(tǒng)計(jì)接口內(nèi)部接口為考試管理,外部接口為考試系統(tǒng)數(shù)據(jù)庫(kù)接口和 WORD 軟件接口,上述接口的硬件接口暫時(shí)為無(wú)[4]。
3.4 數(shù)據(jù)庫(kù)設(shè)計(jì)
本文重點(diǎn)對(duì)數(shù)據(jù)庫(kù)設(shè)計(jì)的外部設(shè)計(jì)和結(jié)構(gòu)設(shè)計(jì)進(jìn)行介紹,在外部設(shè)計(jì)中,重點(diǎn)是做好類(lèi)型劃分和表示符號(hào)約定,在類(lèi)型劃分中,將首先將數(shù)據(jù)分為用戶表、答題表、試卷表、題庫(kù)表、考試過(guò)用戶表和成績(jī)表等,具體每個(gè)類(lèi)型的要素因?yàn)槠P(guān)系不再述。在符號(hào)約定中,首先確定數(shù)據(jù)庫(kù)表命的命名規(guī)則:采用中文拼音或者英文單詞,或者兩者的結(jié)合來(lái)命名,具體表名的標(biāo)識(shí)規(guī)則為用戶表(users),學(xué)生答題表(studati),試卷表(exam),題庫(kù)表(question),考過(guò)試用戶表(kgsyh),成績(jī)表(chengji)
在系統(tǒng)的結(jié)構(gòu)設(shè)計(jì)中,采用了瀏覽器和服務(wù)器的(B/S)三層體系結(jié)構(gòu),表示層/事務(wù)層/數(shù)據(jù)庫(kù)層,其中表示層基于ASP技術(shù)和ActiveX實(shí)現(xiàn),位于客戶端,表示網(wǎng)絡(luò)上的任何一臺(tái)具有網(wǎng)絡(luò)瀏覽器的算機(jī),考生通過(guò)瀏覽器登錄考試系統(tǒng),考生和系統(tǒng)交互的信息傳輸協(xié)議基于TCP/IP 協(xié)議實(shí)現(xiàn)。事物層是基于Web的服務(wù)器,對(duì)考生和系統(tǒng)數(shù)據(jù)的處理集中在事物層,操作系統(tǒng)基于windows 2000 Server。數(shù)據(jù)庫(kù)層是數(shù)據(jù)庫(kù)服務(wù)器,數(shù)據(jù)庫(kù)軟件采用微軟的SQL Server 2000實(shí)現(xiàn),主要負(fù)責(zé)數(shù)據(jù)庫(kù)的管理、更新及訪問(wèn)查詢(xún)要求和存儲(chǔ)過(guò)程等,它接受來(lái)自 Web 服務(wù)器的請(qǐng)求,實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的操作,并將處理結(jié)果返回 Web 服務(wù)器[5]。系統(tǒng)的運(yùn)行流程圖如圖3所示。
4 結(jié)束語(yǔ)
本文針對(duì)現(xiàn)有的考試系統(tǒng)的缺點(diǎn),設(shè)計(jì)了一種通用標(biāo)準(zhǔn)網(wǎng)絡(luò)考試系統(tǒng),由于篇幅所限,主要對(duì)系統(tǒng)的概要設(shè)計(jì)(結(jié)構(gòu)設(shè)計(jì)、文件設(shè)計(jì)、接口設(shè)計(jì)和數(shù)據(jù)庫(kù)設(shè)計(jì))進(jìn)行了介紹,該系統(tǒng)的設(shè)計(jì)對(duì)通用標(biāo)準(zhǔn)網(wǎng)絡(luò)考試系統(tǒng)的開(kāi)發(fā)具有一定的借鑒意義。
參考文獻(xiàn):
[1] 王鷹,趙躍龍,劉中宇.基于 C/S 模式的計(jì)算機(jī)等級(jí)考試上機(jī)考試系統(tǒng)[J].計(jì)算機(jī)與現(xiàn)代化,2006,126(2):70-72.
[2] 王奕軍.基于三層結(jié)構(gòu)的網(wǎng)上動(dòng)態(tài)考試系統(tǒng)設(shè)計(jì)與相關(guān)技術(shù)的分析[J].安徽機(jī)電學(xué)院學(xué)報(bào),2002,17(l):44-45.
[3] 孫波成.基于 B/S 結(jié)構(gòu)的網(wǎng)上考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].信息技術(shù),2001,33(5):35-36.
[4] 楊競(jìng).基于 Internet/Intranet 的分布式動(dòng)態(tài) Web 應(yīng)用系統(tǒng)開(kāi)發(fā)技術(shù)[J].計(jì)算機(jī)應(yīng)用研究,1999,12(9):50-51.
[5] 王海龍.基于 Web 的在線考試系統(tǒng)開(kāi)發(fā)設(shè)計(jì)[J].固原師專(zhuān)學(xué)報(bào):自然科學(xué),1999,26(6):50-53.