宋雪亞,王傳安
(安徽科技學院 信息與網絡工程學院,鳳陽 233100)
?
基于JSP的在線考試系統(tǒng)設計與實現
宋雪亞,王傳安
(安徽科技學院 信息與網絡工程學院,鳳陽 233100)
為了減輕教師出卷、閱卷的工作量,設計了一種基于JSP的在線考試系統(tǒng),詳細闡述了在線考試系統(tǒng)的主要模塊組成以及各模塊實現的具體方法,實驗表明,該系統(tǒng)能夠滿足高校正常的考試需要,有效地減輕了教師的工作量.
在線考試系統(tǒng);模塊實現
隨著“互聯(lián)網+”技術在教育領域的不斷滲入,國內外掀起了網上培訓、遠程教學、MOOC學院等各種基于互聯(lián)網的教育熱潮,這種開放、便捷的互聯(lián)網教育正逐步挑戰(zhàn)傳統(tǒng)的授課模式和教育觀念,并得到越來越多的認可和推廣.互聯(lián)網教育的改革催生出在線考試和自動評分系統(tǒng)的需求,基于這種背景,結合自身教學中的《大學計算機基礎》課程,本文設計并實現了一種在線考試系統(tǒng).實際驗證表明,該系統(tǒng)提供了比較客觀、公正、公平且有效的考試模式,很好的解決了傳統(tǒng)考試模式中存在的一些弊端,能夠從技能方面真實客觀地反映考生的操作水平,有效減輕了教務人員和任課老師的工作量,提高了教學和考試效率.
本文設計的《大學計算機基礎》課程在線考試系統(tǒng)主要由以下幾個模塊組成:
1.1 基礎模塊
該模塊主要用來完成系統(tǒng)主界面的實現,并利用基礎模塊通過工具欄或菜單完成對其他模塊的調用.
1.2 選擇題編輯模塊
該模塊測試的內容要覆蓋《大學計算機基礎》這門課程教學大綱中所要求的所有基礎知識點,根據內容可分為四個部分:計算機基礎理論知識部分、Windows 基本操作、Office辦公軟件應用和網絡基礎.教師可以對不同的內容設置相應的分值.在本部分,既可以通過管理界面錄入題目也可以從題庫中進行題目的抽取.教師還可以對試題進行題干的描述、提供答案等,最后把相關信息寫到對應的“選擇題”表中[1].
1.3 管理Windows基本操作
在本部分主要按照大綱的要求,分析Windows 操作系統(tǒng)部分的知識點,考查考生對 Windows 操作系統(tǒng)的基本操作的掌握情況.
1.4 字處理軟件Word部分
《大學計算機基礎》課程的教學大綱中,其中比較重要的一部分就是關于Word文字處理軟件的使用,其中包含的基本操作比較多,是后期其它軟件學習的基礎.由于該模塊設計的好壞,直接影響后續(xù)的試卷抽取和試題的自動評分功能,因此要求把該部分要考查的內容分類,包括考查的內容和參考答案等,每題的分值要確定并保存,并且還要在自動組卷之前對整套試題進行檢查、核對,以免試題本身出現錯誤.
根據不同課程考試時的具體要求,在考生登錄考試系統(tǒng)后,系統(tǒng)可以通過調用本模塊從題庫中隨機抽取試題自動組成試卷,還能夠為同時參加考試的考生隨機分配試卷.
考試系統(tǒng)中電子表格Excel的應用和演示文稿PowerPoint,與word文字處理部分很相似,在此不再贅述.
在一個好的考試系統(tǒng)中,試題的管理、試卷的組成、考生考試和試卷的自動評分是最主要的功能.以下就試題的管理、自動組卷和考生考試模塊進行詳細介紹.
2.1 管理試題部分
試題管理是本系統(tǒng)極其重要的一個部分,考試系統(tǒng)運行的好壞、試題的自動評分功能的實現都是以該部分功能為基礎的.該部分首先要保證題目正確無誤的存儲到數據庫中,另外考生參加考試和題目自動評分也與該部分緊密相關.
作為特權用戶的系統(tǒng)管理員可以根據教材的更改,教學大綱的更新和考試內容的變化,對之前創(chuàng)建好的試題庫中的試題進行一系列的操作:更新、刪除以及修改等.以便于考試系統(tǒng)能適應教學改革的需求[2].試題管理部分的主要功能實現描述如下.
2.1.1 Windows 基本操作題自動生成子模塊
通過分析和歸納該考試系統(tǒng),在Windows 基本操作題自動生成子模塊的設計過程中,將Windows 基本操作題按要求進行分類,并且能到做到自動、隨機抽取試題.
試題管理中的所有題型都可以先錄入,錄入之后可以進行修改、查詢、刪除等操作.Windows 基本操作也一樣,首先可以通過試題管理系統(tǒng)錄入題目.在進行題目錄入的時候,首先選擇題目的難度等級,然后在題干下方的文本框中依次錄入題目的要求,接著在考生初始環(huán)境選項設置題目的初始化環(huán)境以及相應的屬性設置要求,最后在答案選項后面給出評分時的判斷標準,單擊“添加”按鈕該題目就被成功添加,如果對添加的題目不滿意可以通過單擊“撤銷”按鈕來撤銷,最后通過保存按鈕保存新增的題目.
2.1.2 客觀題的維護和管理界面
本文實現的考試系統(tǒng)對客觀題進行維護的方式有很多,一是可以通過題目的錄入創(chuàng)建一個新的題庫,也可以使用之前建立好的套題題庫,還可以把需要的題目通過SQL 數據庫或Excel 表格導入到題庫當中.
選擇題題目錄入界面如圖1所示.
圖1 選擇題題目錄入界面
2.1.3 操作題部分
系統(tǒng)中的操作題比較多,處理方法都基本相同,這里僅以字處理軟件Word的處理方法進行描述.
由于字處理軟件Word題目本身就比較麻煩,所以該部分題目的處理比較繁瑣.不管是答題界面還是試題隨機抽取、修改等都相對麻煩.字處理軟件Word試題的維護界面如圖2所示.
圖2 字處理軟件Word試題的維護界面
要想實現Word 字處理軟件部分操作試題維護與管理,可以通過以下方式進行:
(1)使用管理界面中“修改”、“刪除”按鈕來實現對選中題目的修改、刪除操作;
(2)“保存”按鈕用來對修改的試題進行保存,“撤銷修改”按鈕用來取消試題的修改;
(3)直接單擊試題編號實現題目的選擇;
(4)“修改導入文件”按鈕來導入其他文件中的試題到題庫中.
2.2 自動生成試卷模塊
試題該模塊的具體功能描述如下:
特權管理員通過考試系統(tǒng)的題庫管理子系統(tǒng),完成題庫中所有客觀題、操作題的錄入并保存在SQL 數據庫中.不同的課程在確定了考試方案之后,就根據考試要求,按照組卷的原則和算法,自動生成各位考生的試卷.
2.2.1 自動抽題算法的設計
自動抽題的實現是由考試系統(tǒng)中的智能組卷部分完成的.因此該部分要把題目的隨機抽取考慮到算法中,也需要考慮到算法的適用性和實用性等等,包括題目的個數、題目的難易程度的選擇以及題目的題型和教材中各章節(jié)知識點所占的比重,以適應不同測試的不同需求[3].
本考試系統(tǒng)以安徽科技學院《大學計算機基礎》課程為例,試題有打字測試題、單項選擇和多項選擇題、操作測試題和主觀題四種類型.其中試題的分類用兩位數字表示,題目的難易程度用另外兩位數字來表示.試題庫的類型可以用英文字母表示.例如T代表試題分類庫.以本文設計的考試系統(tǒng)為例:如果用T代表其中一個試題分類庫,04代表題型為操作題,01代表該試題難度為較難,則用來表示該試題分類庫中較難操作題的試題號應為T0401.
2.2.2 試題自動抽取原理
主考教師按照課程的教學大綱、教材的知識點分布以及考查重點,會對要考試課程設定一些考試要求,系統(tǒng)要能夠根據主考教師設定的特殊需求,自動轉換成跟某門課相對應的題型、難易程度、試題的分數等基數.然后再根據設定好的抽題原則合理的從題庫中選擇試題,根據組卷的方法組成試卷.抽取試題后,把抽取的試題與設定的算法中的條件相比較,如果所抽題目不符合設定的條件和要求則需要重新進行試題的抽取.在組成一套試卷的所有試題確定后,再依據自動組卷模塊中的算法按照相應規(guī)則對試卷中試題的分值進行調整,以上工作完成后,對試卷進行保存.以下對在該系統(tǒng)在題庫中進行試題的隨機抽取算法進行詳細、重點的描述.在確定了自動生成試卷的方案后,可以完成試卷的自動生成,并且可以進行試卷的校驗.試卷校驗圖如圖3所示.
2.2.3 自動抽題算法實現
考試時考生試卷要求自動生成,其中要實現能夠隨機抽取題目是本部分的一個難點,因為它直接影響到考試時考生自動生成的考卷的質量.
按照試題的難易程度來設計試題的隨機抽取的原則,先要把不同題型的不同難易程度的題目的數量確定下來,然后再進行抽取相對應數量的試題.
圖3 試卷校驗界面圖
其中抽題步驟如下:
試題自動抽取的算法思路描述如下:
采用模塊化,逐級求精的方法將試題的自動抽取的全部經過做以下描述:
第一層:第一層是關于數據庫的相關操作函數,也是整個算法的最底層,該層可以為中間層也就是第二層的操作輸出數據.
第二層:根據最高層也就是第三層的需求,利用最底層中[5]定義的函數以獲取不同難度題目對應的值以及對應的題集,之后再去題庫中進行按照原則進行抽題.
第三層:該層是試題自動抽取全過程的最上層.該層的功能是根據主考教師對要考試課程試卷的要求,對不同類型的試題進行不同數量的自動抽取.
算法步驟:
1.1 子宮病變 子宮相關病變導致的不孕占不孕癥的10%~15%[5],精子運輸、胚胎著床等均受子宮相關病變的影響,常見因素包括子宮發(fā)育畸形、宮腔粘連、子宮肌瘤、子宮內膜息肉及子宮腺肌病等。
第一層設計思路:
該層的設計是相對容易的,只需要按照所需題目的題型,在題庫中找到對應的題目集,在符合標準的題集中查詢全部符合標準的難易程度的題目,然后將找到的題目的序號返給第二層.
第二層設計思路:
第一步:先對抽取出的題數目Max進行初始化為,初始化值為0,并把所抽取出來的試題對應的題目序號存放在數組QuestionsSet中然后對其進行初始化[6].
第二步:按照該過程的最高層的相關需要,利用第一層的原理,把對應的數量所相應的題目的序號賦值給GetQuesSetFromDB.
第三步:隨機取一數,對上一步的值做取余算法并把結果賦值給Index.接然后把上一步最后一個函數的值相應的題目序號賦值給CurQuesNo 中.
第四步:在存放抽取出的試題對應的題目序號的數組 QuesSet 中,用遍歷算法查找變量CurQuesNo中是否有當前題目的序號.如果有,回到上一步,繼續(xù)查找下一題;如果沒有,則將變量CurQuesNo中存放的試題的題號 存入變量 QuestionsSet[Count]中,并將保存試題總量的變量Max在原來的基礎上加17].
第五步:如果Max的值小于所需題目數量,則轉至第三步反復第三到五步的操作,
否則結束函數并把QuestionsSet的值返回給上一層.
第三層設計思路:
第一步:對當前類型試題的難度系數進行分析,并分別計算出以下各個難度系數βX1、βX2、βX3、……βXL相對應的試題個數,并把計算結果分別保存在變量TX1、TX2、TX3、……TXj中.
第二步:對當前類型試題的難度索引變量Index進行初始化并把初值設為0,同時對當前類型題集數組變量CurQuestionsSet 進行初始化.
第三步:使變量Index增加 1,如果變量 Index的值小于當前類型試題的難度級數,則跳轉到第二步反復執(zhí)行,否則結束函數,數組變量CurQuestionsSet 集合中就是當前類型試題在數據庫中對應的題號.這樣就生成了一種類型的試題.
以上算法的優(yōu)點有:簡單、易實現,占用內存少,不會出現盲點,并且題目重復的可能小比較小,題庫中的選中每道題目的可能性大致相同,通用性強.
2.3 考試模塊
試題管理模塊為考生進行考試模塊提供了堅實的基礎,系統(tǒng)的考試模塊需要完成以下功能:提供考生登錄、檢查身份、自動組卷、生成考試界面以及把考生在考試過程中對試卷的作答情況以及過程保存在數據庫中相應的數據表中.
考試模塊是考生直接面對的模塊,是考生與整個系統(tǒng)的接口,考生在整個考試過程中將一直使用該模塊,這就要求該模塊必須做到用戶界面直觀、方便、友好,考生在考試的過程中要可以利用該模塊方便的查看題目,可以在考試界面直接打開用到的各類文檔.本部分具有以下功能:考生登錄、試卷組成、自動計時等.下面對各主要功能進行描述.
2.3.1 考生登陸系統(tǒng)功能
考生要進行考試,首先要通過錄入自己的學號和姓名進行驗證,如果考生信息數據庫中有該考生的信息,則考生輸入學號和姓名后可以正常登錄,否則沒有資格參加考試.如果考生在考試過程當中由于各種原因退出了考試,需要輸入二次登陸密碼才可以登錄.考生登錄考試系統(tǒng)的過程流程圖如圖4所示.
圖4 考生登錄考試系統(tǒng)流程
2.3.2 試題的自動抽取功能
在考生登陸考試系統(tǒng)成功后,系統(tǒng)要能夠隨機從題庫中按照之前的算法抽取試題自動組成考生考試用的試卷,具體的組卷過程前面已做介紹,這里不再贅述.
2.3.3 生成考試環(huán)境功能
該部分要能實現各位考生正確登錄后,針對生成的試卷產生一個模擬考試的環(huán)境.考試環(huán)境包括生成考生考試的界面、生成字處理軟件Word需要的文檔、電子表格處理Excel用到的表格和試卷中需要的圖片和表格等.本部分中要能夠形成考生進行考試時使用到的目錄結構以及所需相關的文件等.
2.3.4 考生答題
該模塊應該具有以下功能:首先應該具有友好的考試界面;其次要能滿足考生隨時看到試題的要求,并且能夠在考試界面直接啟動 Office 系列應用程序[8].該模塊可以分為選擇題、打字題、操作題以及簡答題四個模塊,具體描述如下:
(1)選擇題:選擇題答題界面中,考生考試時只需要在認為正確的答案前面單擊選中所對應選項的單選按鈕即可,本系統(tǒng)我們還提供了平時可以供學生進行模擬考試的模擬系統(tǒng),在模擬考試系統(tǒng)中,考生可以自己進行評分,在題目下方有“答案”按鈕,可以自行單擊查看.選擇題的答題界面如圖5所示.
圖5 客觀題答題界面
(2)打字題:打字題部分的答題比較簡單,考生在登錄考試系統(tǒng)以后,直接用鼠標單擊考試界面上方的打字題就可以進入到打字題的答題界面.如圖6所示.
圖6 打字題答題界面
(3)操作題:操作題部分包括Windows基本操作題和Office操作題兩個部分,其中Windows基本操作題是在考試界面直接單擊“基本操作”按鈕就可以進入到Windows基本操作題的答題界面,進入以后將會看到該部分試題的題目要求,考生可以通過考試界面右上角的“打開考生文件夾”打開該部分試題所需要用到的文件.Windows基本操作題答題界面如圖7所示.
圖7 Windows基本操作題答題界面
Office操作題部分包括字處理軟件word、電子表格應用excel和演示文稿ppt三個部分內容的考查,跟Windows基本操作題類似,考生在考試界面分別通過單擊“字處理”、“電子表格”和“演示文稿”三個圖標就進入到對應題目的答題界面.這里僅以電子表格為例,來介紹Office操作題的答題過程.當考生在答題界面單擊“電子表格”圖標后就進入到電子表格應用excel的答題界面如圖8所示.
圖8 電子表格答題界面
進入到該界面以后,考生可以通過單擊答題界面右上角的“打開excel文檔”來打開所對應的excel文檔并開始答題.打開excel文檔以后的界面如圖9所示.
圖9 Excel文檔打開界面
(4)主觀題:主觀題的答題界面跟打字題比較相似,上方是主觀題的題目,本考試系統(tǒng)中主觀題為三道簡答題,當考生在正常登錄考試系統(tǒng),單擊“開始考試”按鈕的時候,系統(tǒng)會自動組卷,隨機從主觀題的題庫里面按照抽題的算法抽取三道簡答題.考試作答的時候直接在答題界面的下方給出該試題的答案就可以了.主觀題答題界面如圖10所示.
圖10 主觀題答題界面
本文主要根據《大學計算機基礎課程》在線考試系統(tǒng)應該具有的功能,詳細的從試題管理模塊、試卷的自動生成以及考生考試三個方面詳細的闡述了系統(tǒng)各部分的功能以及具體實現.本系統(tǒng)通過多次細致的測試及鑒定,證明平臺完全具有可行性與可擴充性.但是平臺還有待進一步升級,如設計結構上不太科學,窗口界面和系統(tǒng)功能不夠完善,用戶界面不夠美觀等,今后還要實現課程內容的客觀題部分和作業(yè)習題庫.因此,仍有大量的工作需要開展.
[1] Lan Sommerville.Software Engineering.(Seventh Edition). England: Pearson Edueation Limited,2013,266-283.
[2] C.Chou,Construeting a Computer-assisted Testing and Evaluation System on the World Wide Web-the CATES Experience[J].IEEE Transaetions on Edueation 43,2000:266-272.
[3] 劉 暢.《大學計算機基礎》無紙化考試系統(tǒng)的設計與實現[D].黑龍江大學碩士學位論文,2010:37-38.
[4] 陸垂偉,周松林,李 芳,等.基于JZEE 的網絡考試系統(tǒng)的設計與實現[J].計算機應用與軟件,2011,23(10):139-141.
[5] 王育勤,朱衛(wèi)東,陳楚湘,等.基于NET 的考試平臺管理系統(tǒng)的設計與實現[J].計算機工程與設計,2012,28(10):2475-2477.
[6] 許海燕,張小東.軟件需求分析中的用例建模研究與應用[J].計算機工程與設計,2012,28(18):404-406.
[7] 謝樹煌.程序員教程同步輔導[M].北京:清華大學出版社,2012:136-137.
[8] 吳 彥.網上作業(yè)系統(tǒng)的設計與實現[J].電腦與信息技術,2004,14(8):1-4.
Design and Realization of Online Examination System Based on JSP Technology
SONG Xue-ya, WANG Chuan-an
(College of Information and Network Engineering, Anhui Science and Technology University, Fengyang 233100, China)
In order to reduce the workload of teachers, this article designs an online examination system based on the JSP technology, this paper mainly expounds the main modules of the online examination system and the specific methods of each module. Experiments show that the system is able to meet the normal needs of the college entrance examination, reducing the workload of teachers effectively.
online examination system; module implementation
2016-11-22
安徽科技學院教學研究資助項目(X2016072).
宋雪亞(1983-),女,碩士,講師,研究方向:計算機科學與技術.
TP39
A
1671-119X(2017)02-0033-06