劉丹 遼寧錦州渤海大學(xué)信息科學(xué)與技術(shù)學(xué)院
基于JAVA的在線(xiàn)考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
劉丹 遼寧錦州渤海大學(xué)信息科學(xué)與技術(shù)學(xué)院
本論文主要介紹了對(duì)JAVA在線(xiàn)考試系統(tǒng)的分析、設(shè)計(jì)和開(kāi)發(fā)的全部過(guò)程。運(yùn)用ER圖,程序流程圖等對(duì)在線(xiàn)考試系統(tǒng)的設(shè)計(jì)過(guò)程進(jìn)行詳細(xì)的說(shuō)明。本系統(tǒng)采用MyEclipse6.5作為開(kāi)發(fā)工具,使用MVC開(kāi)發(fā)模式,框架使用了目前流行的Struts+Spring+Hibernate,數(shù)據(jù)庫(kù)使用MySQL。該系統(tǒng)主要有三大模塊:管理員模塊主要包括對(duì)四種考題的增刪查改操作;老師模塊主要完成對(duì)學(xué)生考完的試題進(jìn)行批閱,完成打分;學(xué)生模塊主要是完成在線(xiàn)考試,查看自己的考試成績(jī)。
考試系統(tǒng) JAVA MVC
1.1 研究背景與意義
手工出卷、考生考試、試卷分析、人工閱卷與成績(jī)?cè)u(píng)估組成了傳統(tǒng)的測(cè)試。跟著測(cè)試要求的不停提升,老師的工作量也隨之越來(lái)越大。隨著計(jì)算機(jī)的廣泛應(yīng)用并迅猛發(fā)展,無(wú)紙化考試系統(tǒng)重復(fù)利用數(shù)據(jù)庫(kù)的作用,大大簡(jiǎn)化了傳統(tǒng)考試的反復(fù)瑣碎的過(guò)程。
1.2 開(kāi)發(fā)工具
本系統(tǒng)使用MyEclipse作為研發(fā)工具,采用MySQL開(kāi)源數(shù)據(jù)庫(kù),并運(yùn)用Tomcat作為應(yīng)用服務(wù)器。在線(xiàn)考試系統(tǒng)選擇運(yùn)用jsp頁(yè)面請(qǐng)求技術(shù),以MVC模式為基礎(chǔ),并在其上進(jìn)行系統(tǒng)研發(fā),采用SSH框架以提高系統(tǒng)研發(fā)的速度。
2.1 系統(tǒng)需求分析
圖1 系統(tǒng)功能需求分析圖
2.2 功能模塊劃分
2.2.1 系統(tǒng)管理員模塊
本模塊主要描述了管理員登錄考試系統(tǒng)后的相關(guān)功能。系統(tǒng)管理員的主要任務(wù)是用戶(hù)管理、科目管理、試題庫(kù)管理、試卷管理、成績(jī)查詢(xún)。作為管理員,其任務(wù)比較繁多。首先要添加老師用戶(hù)和學(xué)生用戶(hù),以便教師和學(xué)生能夠通過(guò)賬號(hào)跟密碼登錄此系統(tǒng)并執(zhí)行相應(yīng)的功能。其次要添加考試科目信息,并將試題錄入試題庫(kù)以便篩選試題和創(chuàng)建試卷系。
①用戶(hù)管理:實(shí)現(xiàn)用戶(hù)的添加、刪除、功能。
②科目管理:實(shí)現(xiàn)考試科目的添加、刪除。
③試題庫(kù)管理:對(duì)于單個(gè)試題的增、刪、改、查等基本維護(hù),針對(duì)不同題型、不同應(yīng)用范圍及不同科目對(duì)試題進(jìn)行維護(hù)。
④試卷管理:對(duì)試題進(jìn)行篩選然后組合形成考試用卷。
我們跑進(jìn)廚屋,見(jiàn)水缸里倒插著兩只小腳,僵直地指向低矮的黑暗的天空!大梁哎呀大叫一聲,沖了過(guò)去。我也跟著跑上前,見(jiàn)她奶奶半個(gè)身子都栽進(jìn)缸里,水漫得滿(mǎn)地都是。大梁把油燈放到灶臺(tái)上,伸手去水缸里撈人。缸里的水猛地漲出來(lái),響亮地砸在地上,流水不停漫過(guò)我的腳背。
⑤成績(jī)管理:對(duì)每次考試的學(xué)生成績(jī)的基本信息進(jìn)行維護(hù),并提供學(xué)生成績(jī)的統(tǒng)計(jì)管理。
2.2.2 老師功能模塊
本模塊描述了教師在考試系統(tǒng)中的相關(guān)功能。主要能夠讓教師了解學(xué)生的考試情況并進(jìn)行打分和點(diǎn)評(píng)試題。方便老師了解學(xué)生平時(shí)學(xué)習(xí)方面的不足和改善自己授課方式。教師的主要功能權(quán)限是閱卷管理、成績(jī)管理,即閱卷打分、點(diǎn)評(píng)試題和提供學(xué)生成績(jī)統(tǒng)計(jì)。
①閱卷管理:對(duì)分配試卷的評(píng)卷人可以在此進(jìn)行評(píng)卷打分。
②成績(jī)查詢(xún):老師可對(duì)已閱卷過(guò)的學(xué)生進(jìn)行成績(jī)查詢(xún)。
③修改密碼:老師可以修改自己的登錄密碼。
2.2.3 學(xué)生的功能模塊
學(xué)生的主要任務(wù)是參與考試,并能夠在老師閱卷過(guò)后登錄系統(tǒng)查詢(xún)考試成績(jī)和試卷相關(guān)情況。學(xué)生用戶(hù)登錄系統(tǒng)后選擇需要考試的科目,在規(guī)定時(shí)間內(nèi)完成測(cè)試并提交試卷。
①參加考試:學(xué)生登錄考試系統(tǒng),對(duì)需要測(cè)試的試卷進(jìn)行填寫(xiě)、提交,以供老師評(píng)閱。
②成績(jī)查詢(xún):待老師閱卷過(guò)后,學(xué)生可登錄系統(tǒng)對(duì)自己的成績(jī)查詢(xún),并查看老師對(duì)試題的打分和點(diǎn)評(píng)情況。
③修改密碼:學(xué)生可以修改自己的登錄密碼。
2.3 數(shù)據(jù)庫(kù)設(shè)計(jì)
數(shù)據(jù)庫(kù)是信息管理系統(tǒng)中一個(gè)重要的組成部分。數(shù)據(jù)庫(kù)概念模型設(shè)計(jì)首先要考慮實(shí)體之間的聯(lián)系。一般情況下我們選擇使用E—R圖的方法來(lái)建立實(shí)體的聯(lián)系。使用E—R圖,我們可以客觀(guān)的描繪系統(tǒng)管理員,學(xué)生,老師三者之間存在的聯(lián)系。系統(tǒng)管理員管理用戶(hù)、科目、試題庫(kù)、試卷、成績(jī)。學(xué)生參加考試并填寫(xiě)試卷。老師參加閱卷并評(píng)出成績(jī)。本系統(tǒng)E-R圖如圖2所示。
根據(jù)系統(tǒng)的設(shè)計(jì)需要,數(shù)據(jù)庫(kù)應(yīng)包含七張表,分別用來(lái)存儲(chǔ)考試相關(guān)信息,考試記錄相關(guān)信息,課程表相關(guān)信息,試卷表相關(guān)信息,試卷?xiàng)l目相關(guān)信息,試題表相關(guān)信息和用戶(hù)相關(guān)信息。因此我們可以建表如下:
(1)t_kaoshi(2)t_kaoshijilu,(3)t_kecheng,(4)t_shijuan,(5)t_ shijuanitem,(6)t_shiti等,以t_kaoshi為例,考試表主要負(fù)責(zé)用來(lái)存儲(chǔ)考試相關(guān)信息,具體如表1所示。
圖2 系統(tǒng)E-R圖
表1 考試表t_kaoshi
3.1 系統(tǒng)登錄模塊
該模塊主要是驗(yàn)證系統(tǒng)用戶(hù)登錄進(jìn)系統(tǒng)并實(shí)現(xiàn)相關(guān)功能的權(quán)限。用戶(hù)登錄系統(tǒng)后,系統(tǒng)界面會(huì)顯示管理員或者教師或是學(xué)生三個(gè)其中之一的用戶(hù)角色。管理員用戶(hù)進(jìn)入系統(tǒng)后顯示管理員角色,可以進(jìn)行如下操作:①用戶(hù)管理;②科目管理;③試題庫(kù)管理;④試卷管理;⑤成績(jī)查詢(xún)。教師用戶(hù)進(jìn)入系統(tǒng)后顯示教師角色,可以進(jìn)行如下操作:①閱卷管理;②考試查詢(xún)。當(dāng)然教師還可以修改自己的登錄密碼。對(duì)于學(xué)生用戶(hù)登錄系統(tǒng)后顯示用戶(hù)角色為學(xué)生。學(xué)生可以參加考試或者查詢(xún)成績(jī)。學(xué)生也可以修改自己的登錄密碼。
3.2 用戶(hù)管理模塊
登錄系統(tǒng)后,系統(tǒng)界面提示用戶(hù)信息角色。登錄用戶(hù)管理模塊后,我們可以看見(jiàn)用戶(hù)名、真實(shí)姓名、用戶(hù)角色、添加時(shí)間等信息記錄。在添加新用戶(hù)之前,首先要輸入用戶(hù)名和其真實(shí)姓名進(jìn)行查詢(xún)??纯磳⒁砑拥挠脩?hù)是否已經(jīng)存在,若不存在我們便可點(diǎn)擊添加用戶(hù)信息,待頁(yè)面跳轉(zhuǎn)到添加用戶(hù)信息界面后,按照用戶(hù)姓名,真實(shí)姓名,選擇用戶(hù)角色三個(gè)方面進(jìn)行添加。填寫(xiě)完成后,點(diǎn)擊“提交”完成用戶(hù)添加。添加用戶(hù)后我們還可以查詢(xún)?cè)撚脩?hù)是否已經(jīng)添加。
3.3 試題庫(kù)管理模塊
登錄系統(tǒng)后,系統(tǒng)界面顯示用戶(hù)登錄信息角色。登錄試題庫(kù)管理模塊后,我們可以看見(jiàn)科目名稱(chēng)和對(duì)其試題管理操作。點(diǎn)擊試題管理后我們可以看見(jiàn)科目名稱(chēng)、題型、問(wèn)題、答案、知識(shí)點(diǎn)、出題時(shí)間幾個(gè)信息記錄。此時(shí),我們可以完成填空題、判斷題、選擇題、問(wèn)答題的添加和修改。完成添加試題后便可生成試題庫(kù),模塊最下面顯示記錄數(shù)目。
3.4 試卷管理
登錄系統(tǒng)后,系統(tǒng)界面提示管理員角色。進(jìn)入試卷管理模塊后我們可以看見(jiàn)卷名、科目、考試時(shí)間、總分、試卷使用狀態(tài)、出卷時(shí)間、題目管理等相關(guān)信息記錄。我們可以對(duì)已存在的試卷進(jìn)行刪除和修改以及是否啟用試卷操作。我們也可以創(chuàng)建試卷,根據(jù)卷名、科目、考試時(shí)間依次按要求填寫(xiě)。完成后就可以生成一個(gè)新試卷了。注意這時(shí)還是一張空試卷,還要進(jìn)行題目管理添加試題。
3.5 考試查詢(xún)模塊
登錄系統(tǒng)后,系統(tǒng)界面提示用戶(hù)以及管理角色。進(jìn)入考試查詢(xún)模塊,管理員可以根據(jù)考試編號(hào)和用戶(hù)名即學(xué)生學(xué)號(hào)進(jìn)行考試記錄查詢(xún)。教師和學(xué)生查詢(xún)考試成績(jī)只需直接登錄自己的帳號(hào),直接查看考試記錄以及試卷得分。
3.6 閱卷管理模塊
登錄該模塊后,有權(quán)限的教師就可以參與評(píng)卷了。教師可以按學(xué)生提交試卷的先后順序逐人閱卷打分。教師登入系統(tǒng)后,顯示用戶(hù)信息角色為教師。進(jìn)入閱卷管理模塊,在本模塊我們可以看見(jiàn)閱卷相關(guān)信息,例如考生姓名、試卷名稱(chēng)、題目、作答、分值和得分情況。教師對(duì)試卷的選擇、判斷、填空、問(wèn)答進(jìn)行閱卷,然后根據(jù)答案在給出的分值范圍內(nèi)進(jìn)行打分。
[1]馮燕奎,趙德奎.JSP實(shí)用案例教程[M].清華大學(xué)出版社,2014.7
[2]王宜貴.軟件工程[M].北京:機(jī)械工業(yè)出版社,2012.5
[3]孫衛(wèi)琴.精通hibernate[M].電子工業(yè)出版社,2011.2
[4]張洪斌.java2高級(jí)程序設(shè)計(jì)[M].中科多媒體出版社,2011.8