張亞昕
(西安鐵路職業(yè)技術(shù)學(xué)院 陜西 西安 710014)
隨著計(jì)算機(jī)的普及和Internet的廣泛應(yīng)用,以及計(jì)算機(jī)遠(yuǎn)程教育網(wǎng)絡(luò)的建設(shè)與發(fā)展,網(wǎng)上教育已成為了現(xiàn)代教育發(fā)展的一種趨勢(shì)。而考試是教育的一個(gè)重要組成部分,教育的網(wǎng)絡(luò)化必然要求考試的網(wǎng)絡(luò)化。計(jì)算機(jī)網(wǎng)絡(luò)考試適合了目前社會(huì)的網(wǎng)絡(luò)化趨勢(shì),必將成為一種必不可少的考試方式。在此背景下,文中運(yùn)用先進(jìn)的J2EE架構(gòu)體系研究開(kāi)發(fā)了一個(gè)能夠進(jìn)行多學(xué)科課程考試的網(wǎng)上考試系統(tǒng),方便地實(shí)現(xiàn)試題的分值、難度管理,科學(xué)、快速地進(jìn)行試卷分析,提高考試的效率[1-3]。
J2EE為應(yīng)用Java技術(shù)開(kāi)發(fā)服務(wù)器端應(yīng)用提供一個(gè)獨(dú)立、多用戶的、可移植的、安全的和基于標(biāo)準(zhǔn)的企業(yè)級(jí)平臺(tái),在這個(gè)平臺(tái)上,可以快速、容易地建立融合了Internet技術(shù)的多層分布式企業(yè)應(yīng)用,簡(jiǎn)化了企業(yè)應(yīng)用的開(kāi)發(fā)、管理和部署[4]。J2EE保留了標(biāo)準(zhǔn)版中的許多優(yōu)點(diǎn),例如“編寫(xiě)一次、隨處運(yùn)行”的特性、方便的數(shù)據(jù)庫(kù)存儲(chǔ)技術(shù),同時(shí)還提供了多數(shù)標(biāo)準(zhǔn)定義了接口,如 JNDI.JDBC,Java Mail等,在Internet應(yīng)用中能夠保護(hù)數(shù)據(jù)的安全模式,得到了許多廠商的產(chǎn)品支持;降低了開(kāi)發(fā)中間層服務(wù)的成本和復(fù)雜程度,使得服務(wù)快速的展開(kāi),縮短產(chǎn)品開(kāi)發(fā)時(shí)間,提高產(chǎn)品的市場(chǎng)競(jìng)爭(zhēng)力[5]。
數(shù)據(jù)庫(kù)是整個(gè)系統(tǒng)的核心,系統(tǒng)數(shù)據(jù)庫(kù)平臺(tái)的選擇需要從數(shù)據(jù)容量、數(shù)據(jù)庫(kù)管理功能、安全性等全面綜合考慮,SQL Server數(shù)據(jù)庫(kù)管理系統(tǒng)一方面能完全滿足數(shù)據(jù)存儲(chǔ)量和功能的需要,另一方面有較完備的數(shù)據(jù)庫(kù)安全機(jī)制。系統(tǒng)數(shù)據(jù)庫(kù)訪問(wèn)采用JDBC技術(shù),JDBC是一套允許Java與SQL數(shù)據(jù)庫(kù)對(duì)話的程序設(shè)計(jì)接口,它是用于執(zhí)行SQL語(yǔ)句的Java API,是Java應(yīng)用程序連結(jié)數(shù)據(jù)庫(kù)、存取數(shù)據(jù)的一種機(jī)制,由Java語(yǔ)言編寫(xiě)的類和接口組成。JDBC使用已有的SQL標(biāo)準(zhǔn)并支持與其他數(shù)據(jù)庫(kù)連接標(biāo)準(zhǔn),如ODBC之間的橋接,實(shí)現(xiàn)了所有這些面向標(biāo)準(zhǔn)的目標(biāo)并且具有簡(jiǎn)單、嚴(yán)格類型定義且高性能實(shí)現(xiàn)的接口[6]。
本系統(tǒng)是基于B/S結(jié)構(gòu)的網(wǎng)絡(luò)應(yīng)用體系,按照J(rèn)2EE的體系架構(gòu),由4層組成:瀏覽器層、Web服務(wù)器層、業(yè)務(wù)處理層、數(shù)據(jù)層。瀏覽器層主要為所有用戶提供登錄界面,并對(duì)用戶輸入信息及使用權(quán)限進(jìn)行驗(yàn)證,完成驗(yàn)證后轉(zhuǎn)入相應(yīng)的Web瀏覽界面;Web服務(wù)器接受到來(lái)自客戶端的請(qǐng)求后,為不同身份的用戶分發(fā)不同的瀏覽界面,完成與用戶的交互;業(yè)務(wù)邏輯層接受Web服務(wù)器層的請(qǐng)求,實(shí)現(xiàn)網(wǎng)上考試系統(tǒng)的業(yè)務(wù)邏輯處理功能;數(shù)據(jù)庫(kù)服務(wù)器負(fù)責(zé)數(shù)據(jù)的存儲(chǔ),并集中管理這些數(shù)據(jù)[7]。
我們?cè)O(shè)計(jì)的網(wǎng)上考試系統(tǒng)主要針對(duì)3類用戶:教師、學(xué)生、系統(tǒng)管理員。學(xué)生、教師和系統(tǒng)管理員分別具有不同的權(quán)限,只有通過(guò)身份認(rèn)證的用戶,才可進(jìn)入系統(tǒng)完成相應(yīng)的功能。學(xué)生可以進(jìn)行新用戶注冊(cè),登陸系統(tǒng)參加在線考試,查詢考試成績(jī)。教師可以錄入試題,管理題庫(kù)、生成試卷、在線閱卷,統(tǒng)計(jì)本班次、本課程的考試成績(jī)。系統(tǒng)管理員可以設(shè)置用戶的訪問(wèn)權(quán)限、控制考試過(guò)程等[8]。如圖1所示。
圖1 系統(tǒng)功能架構(gòu)圖Fig.1 System function structure chart
根據(jù)系統(tǒng)的需要,本考試系統(tǒng)設(shè)計(jì)主要有3個(gè)功能模塊,分別是學(xué)生模塊,教師模塊,系統(tǒng)管理員模塊。
2.2.1 學(xué)生模塊
1)在線考試:系統(tǒng)向?qū)W生提供一個(gè)在線考試的電子平臺(tái),每個(gè)考生進(jìn)行身份驗(yàn)證后可進(jìn)入考試系統(tǒng),并獲得一份電子試卷。考試開(kāi)始后,系統(tǒng)自動(dòng)開(kāi)始考試計(jì)時(shí),控制考試時(shí)間,并提供考試時(shí)間結(jié)束前5分鐘提醒功能。考生可提前交卷或等考試時(shí)間到后系統(tǒng)自動(dòng)交卷,對(duì)于非法退出的考生,系統(tǒng)也進(jìn)行自動(dòng)交卷處理。為了避免在考試過(guò)程中由于停電、死機(jī)等原因造成的系統(tǒng)故障導(dǎo)致考試中斷,從而丟失考試信息,系統(tǒng)會(huì)自動(dòng)對(duì)考生答完的題目保存答案。對(duì)于動(dòng)態(tài)生成的試卷,系統(tǒng)會(huì)自動(dòng)保存每個(gè)考生的試卷,當(dāng)出現(xiàn)異常狀況導(dǎo)致考試中斷后,經(jīng)管理員重置后,考生仍可以重新獲得原來(lái)的試卷,在斷點(diǎn)處繼續(xù)答題,從而最大限度的保護(hù)已有的考試數(shù)據(jù),確保考試正常進(jìn)行??荚嚱Y(jié)束后,系統(tǒng)會(huì)對(duì)客觀題部分自動(dòng)進(jìn)行評(píng)分并保存,以備人工閱卷。
2)成績(jī)查詢:考生可以登錄自己的賬號(hào)查詢個(gè)人考試成績(jī),自己做題的答案、標(biāo)準(zhǔn)答案、教師評(píng)語(yǔ)等詳細(xì)信息,并查詢和打印參加考試課程總成績(jī)表。
3)密碼修改:該系統(tǒng)為每個(gè)學(xué)生查詢成績(jī)提供默認(rèn)密碼,學(xué)生也可以更改默認(rèn)密碼。
2.2.2 教師模塊
1)題庫(kù)管理:題庫(kù)的管理是按照考試科目-章節(jié)-知識(shí)點(diǎn)-試題的層次關(guān)系進(jìn)行,教師可預(yù)先建立章節(jié)結(jié)構(gòu)。題型主要有選擇題、判斷題、填空題、簡(jiǎn)答題和論述題等。根據(jù)題型不同可提供不同的錄入界面。每道題目的錄入信息主要有題干、知識(shí)點(diǎn)、難度、題型、分?jǐn)?shù)等??蛇M(jìn)行試題的添加、編輯、刪除、查詢操作。
2)試卷庫(kù)管理:試卷是考試環(huán)節(jié)中的一個(gè)重要對(duì)象,試卷庫(kù)管理模塊實(shí)現(xiàn)對(duì)歷史試卷的存儲(chǔ)和管理,教師可以瀏覽歷史試卷,了解試卷的屬性,同時(shí)也可以得到這份試卷的答案并進(jìn)行打印輸出等??蓪?duì)歷史試卷進(jìn)行刪除,將已經(jīng)不適應(yīng)考試需要的試卷刪除,確保考試系統(tǒng)考試的科學(xué)性、合理性。
3)試卷生成:試卷生成部分包括手動(dòng)組卷和自動(dòng)組卷兩種組卷方式。手動(dòng)組卷是組卷老師人工抽取出滿意的試題,組成一份試卷,存入到數(shù)據(jù)庫(kù)中。因此試卷難度、分?jǐn)?shù)就由組卷老師在選擇試題時(shí)進(jìn)行人工控制。試卷生成后,教師也可以根據(jù)客觀需要對(duì)試題進(jìn)行修改和刪除。自動(dòng)組卷是教師根據(jù)自己對(duì)試卷的要求,對(duì)題型、難度、知識(shí)點(diǎn)、題量、分值等指標(biāo)提出一定的要求,系統(tǒng)按照一定的組卷算法進(jìn)行自動(dòng)組卷,使其各項(xiàng)指標(biāo)的實(shí)際值與教師提出的目標(biāo)值盡可能接近,最大限度滿足教師的需求。若是需要?jiǎng)討B(tài)生成試卷,教師只需設(shè)定好試卷相關(guān)參數(shù),如:考試科目、題型、知識(shí)點(diǎn)、分值等,系統(tǒng)將在學(xué)生考試時(shí)自動(dòng)到題庫(kù)里隨機(jī)抽題生成試卷信息。
4)試卷批閱模塊:該模塊可對(duì)學(xué)生做完的試卷進(jìn)行批閱,包括自動(dòng)閱卷和手工閱卷。自動(dòng)閱卷:當(dāng)學(xué)生提交考試試卷后,系統(tǒng)根據(jù)評(píng)分規(guī)則和標(biāo)準(zhǔn)答案負(fù)責(zé)對(duì)客觀題部分進(jìn)行成績(jī)計(jì)算,如選擇題、判斷題等。手工閱卷:教師選擇手工閱卷,系統(tǒng)查詢出要批改的試卷,顯示出主觀題未批閱考生試卷、考生答案及標(biāo)準(zhǔn)答案;根據(jù)考生答題情況和正確答案,對(duì)主觀題部分如簡(jiǎn)答題、論述題等進(jìn)行主觀批改。
5)考試成績(jī)統(tǒng)計(jì):系統(tǒng)可按科目和班級(jí)統(tǒng)計(jì)平均分、最高分、最低分、個(gè)分?jǐn)?shù)段考生人數(shù)和考試通過(guò)人數(shù);也可統(tǒng)計(jì)試卷的信度、效度、平均難度等指標(biāo)??紕?wù)人員或教師可以查詢、統(tǒng)計(jì)和打印成績(jī)統(tǒng)計(jì)結(jié)果,為以后教學(xué)提供參考依據(jù)。
2.2.3 系統(tǒng)管理員模塊
1)人員管理 系統(tǒng)設(shè)置不同的用戶有不同的訪問(wèn)權(quán)限。系統(tǒng)管理員可以對(duì)所有用戶進(jìn)行管理,系統(tǒng)管理員也可以添加教師、修改教師信息、刪除教師。系統(tǒng)管理員選擇學(xué)生并將其添加為考生。也可以將管理權(quán)限授權(quán)給教師添加修改考生信息。
2)考試管理 系統(tǒng)可以實(shí)時(shí)監(jiān)測(cè)考試情況,包括應(yīng)考人數(shù)、實(shí)考人數(shù)、缺考人數(shù)、提交試卷人數(shù)。并且當(dāng)考試過(guò)程中出現(xiàn)異常情況時(shí),考務(wù)管理員可以更新學(xué)生的IP地址綁定允許學(xué)生重新登錄,保證學(xué)生可以從斷點(diǎn)處繼續(xù)進(jìn)行考試。
3)資源管理 對(duì)所屬考試課程的學(xué)習(xí)資源,系統(tǒng)管理員可以修改學(xué)生的使用權(quán)限,在考試過(guò)程中,禁止學(xué)生使用。當(dāng)考試結(jié)束后,恢復(fù)學(xué)生對(duì)這些資源的使用權(quán)限。
控制考試時(shí)間,是考試過(guò)程中不可缺少的條件,本系統(tǒng)中當(dāng)點(diǎn)擊開(kāi)始答題按鈕后,系統(tǒng)自動(dòng)開(kāi)始倒計(jì)時(shí),一旦剩余時(shí)間用完,系統(tǒng)會(huì)自動(dòng)提交試卷。時(shí)間控制功能部分偽代碼如下:
其中timeaa為考試所用時(shí)間,以分鐘為單位。
自動(dòng)組卷界面,教師可以設(shè)定好試卷的相關(guān)參數(shù),如:考試科目,試卷由哪些題型組成即可。當(dāng)確定一切試卷參數(shù)后,系統(tǒng)會(huì)自動(dòng)進(jìn)行判斷是否合法及題庫(kù)里的試題是否夠本次試卷所要求的題目量等等信息,并自動(dòng)到題庫(kù)里進(jìn)行隨機(jī)抽題生成試卷信息,系統(tǒng)自動(dòng)生成滿足條件的試卷。
本系統(tǒng)選擇J2EE技術(shù)作為系統(tǒng)的整體架構(gòu),采用客戶層、Web層、業(yè)務(wù)層和數(shù)據(jù)層的4層結(jié)構(gòu)來(lái)構(gòu)建網(wǎng)上考試平臺(tái)。通過(guò)對(duì)系統(tǒng)全面細(xì)致的分析,完成了系統(tǒng)主要功能模塊和數(shù)據(jù)庫(kù)的設(shè)計(jì),并實(shí)現(xiàn)了在線考試,智能組卷,自動(dòng)閱卷人工閱卷相結(jié)合,考試結(jié)果分析,考試監(jiān)控等功能。從系統(tǒng)運(yùn)行情況來(lái)看,效率很高,完全能夠進(jìn)行有效的考試,極大改善了教學(xué)環(huán)境,減輕了教師工作強(qiáng)度。
[1]王育勤,朱衛(wèi)東,陳楚湘,等.基于NET的考試平臺(tái)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與設(shè)計(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的高職院校教學(xué)管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),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的動(dòng)態(tài)配置開(kāi)發(fā)平臺(tái)研究與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),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]賈振華,褚燕春,何志學(xué).基于J2EE的網(wǎng)上考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].北華航天工業(yè)學(xué)院學(xué)報(bào),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的網(wǎng)絡(luò)考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用與軟件,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]思志學(xué).J2EE整合詳解與典型案例[M].北京:電子工業(yè)出版社,2008.
[7]王蓉,汪詩(shī)林.基于J2EE架構(gòu)的網(wǎng)絡(luò)考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與應(yīng)用,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的網(wǎng)上考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].實(shí)驗(yàn)室研究與探索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.