趙守才 楊校慶
(河南大學計算機與信息工程學院 河南省開封市 475001)
學校在教書育人的過程中一個重要的環節就是考試。傳統的線下考試方式越來越跟不上學校信息化發展速度[1]。目前學校以及社會上的考試大部分都是采用傳統的線下方式。在這種方式下組織一次考試需要經過老師研討出題、組織學生考試、教師評卷、分析試卷等環節,大大增加了老師們的工作量,除此之外人工閱卷出錯率高的現象又時有發生,已有的測試方式已越來越不能夠適應現在考試的需要。伴隨著計算機技術的飛快發展,人們也越來越迫切需求將這些技術應用到線上的考試之中,提高老師們的工作效率,減輕老師的工作負擔,彌補線下考試周期長、效率低的劣勢。除此之外,線上評卷更加標準化也更加客觀公正。伴隨著計算機應用技術在教育領域的普及,線上考試模式逐漸展露出越來越多的優越性。
2.1.1 Spring 框架
該框架是使用控制反轉容器(IOC)來實現對象的注入、管理不同對象間的依賴關系,運用XML 文件進行配置Bean,在項目需要的地方進行引用即可。這種方式可以大大降低應用開發的復雜度,從而提升了系統的可維護性并且降低了系統的開發復雜度[2]。
2.1.2 Spring MVC 框架
以請求為驅動的SpringMVC 框架,圍繞著Servlet 設計。在實際的項目開發中,用來接收瀏覽器的請求響應,同時對數據進行處理,最后返回到頁面進行顯示。其中的核心類是DispatcherServlet,是一個Servlet 類,最上層是實現的Servlet 接口[3]。
2.1.3 MyBatis 框架
MyBatis 框架不僅支持普通的SQL 語句查詢及存儲的過程,而且可以支持高級映射。MyBatis 框架取消了JDBC 代碼,不再需要手動設置某些參數和對結果集的搜索。功能架構共包含基礎的支持層、對數據的處理層以及應用程序接口層。該框架主要運用注解或XML 進行配置和映射,開發時只需定義好XML 配置文件便可以對數據庫進行操作,這樣可以明顯的提高開發者工作效率。
2.1.4 MySQL 數據庫
該數據庫是關系型數據庫管理系統,這種類型的數據庫在不同的表中存在一定的關聯。MySQL 將數據保存在不同表中,這種方式大大提高了數據庫的讀取速度并提高數據操作的靈活性。
2.1.5 EasyExcel
EasyExcel 框架對數據進行按行讀取,逐個分析。這種讀取數據的方式造就了EasyExcel 使用簡單、節省內存的特點,是excel數據處理得力助手。
2.1.6 Echarts
Echarts 是一個純JavaScript 的圖表庫。能夠同時在移動的設備和PC 端運行,底層依賴ZRender 庫,可以依據用戶喜好,為用戶提供數據可視化圖表。
本系統采用模塊化的設計方法,首先將用戶分為不同角色,不同角色中又將功能分為不同模塊,各模塊功能相對獨立,本系統包含教師端和學生端[4]。
2.2.1 教師端
教師端系統功能結構圖如圖1 所示。

圖1:教師端系統功能結構圖
(1)學生管理模塊:教師可批量導入學生信息,對導入的學生列表進行分班管理,可查看學生信息列表,在學生列表的操作欄可查看每個學生的具體詳細信息,除此之外能夠對個別學生班級,信息進行調整,或批量刪除已畢業學生信息。
(2)公告管理模塊:教師在該模塊可以編寫公告通知內容,本模塊集成了文本編輯器,支持編輯文本、插入圖片、切換字體樣式、切換段落樣式等操作,讓文章更加美觀。教師也可上傳已編輯好的新聞稿件Word 文檔,除此之外教室管理員還可對已有新聞列表中的新聞進行錯誤編輯,刪除無效新聞。
(3)試卷管理模塊:該模塊中老師可導入試題文件到試題庫,或逐一單個添加題目,可從按照不同難度設置,從試題庫中隨機的產生試題卷。系統將試卷分為已考試卷和未考試卷,教師可對未考試卷設置考試時間及使用班級,或編輯更改尚未進行的考試信息,可對已有的試卷列表中的試卷進行增刪改查等基本操作。
(4)考試管理模塊:教師可從數據庫中已按要求生成的試題卷中挑選其中一份作為某個班級或專業的待考試卷,然后設置相應的考試日期及起止時間,到達考試結束時間后,系統自動提交試卷,并關閉作答頁面。待考試結束后,學生可到考試中心模塊查看個人試卷得分情況,教師可查看班級學生作答情況。
2.2.2 學生端
學生端系統功能結構圖如圖2 所示。

圖2:學生端系統功能結構圖
(1)個人信息模塊:除管理員批量導入外學生信息外,學生用戶也可以自己使用學號及手機號進行注冊,并選擇填寫班級等信息。注冊完成后即可進行登錄操作并可查看登錄信息。登錄后的學生點擊用戶名即可查看個人詳細信息,在詳細信息界面點擊用戶名便可編輯更改用戶名,點擊修改密碼后,需要正確輸入原有密碼,然后再輸入兩次相同的新密碼,即顯示修改密碼成功。待所需全部操作完成后,點擊退出按鈕,將退出考試系統。
(2)學術公告模塊:學生登錄后,在學生用戶主頁面顯示有學術公告通知模塊,用戶可以查看相關的公告內容、規章制度及警示案例,或點擊“更多”按鈕,獲取更多新聞資訊,方便學生及時獲取相關通知內容。
(3)考試中心模塊:專門為學生考試設計,學生登錄后,點擊考試中心即可查看個人待考信息,同時查看考試的時間及要求。待考試時間到達后出現“參加考試”按鈕,點擊即可參加考試,操作簡單、可一鍵考試??荚嚱Y束后,用戶可以瀏覽已經考試結束并且自己參與的考試記錄,查看自己的考試成績及每題的正誤,學生通過回顧試題試卷,進行查漏補缺,加深印象。
教師端的后臺管理的主界面中,左側為各子模塊的管理功能,右側顯示系統當前所有的試卷數、試題卷數、教師總人數以及學生人數。點擊左側對應的子模塊就能夠進入其對應的頁面對班級學生、試題試卷、學術公告、考試信息等內容進行具體操作管理。
在學生管理功能模塊內,教師可以管理學生的信息、批量上傳學生名單、查看學生考試記錄等功能。在學生考試信息頁面,系統借助Echarts 技術,對本班級學生已參加考試次數和平均分的總體情況進行可視化顯示,方便教師統計每次測試班級的詳細情況。假如教師想要查看某位學生的成績,只需點擊界面左側顯示的學生姓名,即可查看該學生歷次考試的科目、分數等詳細信息,學生的學習動態一目了然。系統支持班級可視化數據導出圖片進行下載。
在試題管理模塊,目前系統僅支持選擇題和填空題兩種題型,并將題目難度進行了劃分,保證試卷的難度結構更加合理化。同時系統可以進行對試題增刪改查、借助easyExcel 技術進行批量試題錄入等操作。試卷管理模塊可以根據教師意愿將數據庫中已有的試題進行組合生成試卷,如果教師覺得試題不符合預期,則可對試卷中的題目進行增加刪除操作。當教師整理出試卷之后,就可以在考試安排管理模塊發布待考信息。
學生端學術公告主頁面中共分為學術公告、考試安排、警示案例、規章制度四個部分。學生通過點擊相應的文字就可以跳轉到相關部分。右側部分顯示該模塊的消息列表,可根據需要按照發布時間進行正序或倒敘顯示,單擊標題即可查看詳細內容,底部使用分頁查詢來幫助學生快速找到自己所需要的信息。
在學生端考試中心界面,教師發布待考信息之后,學生才可查看相關考試內容。單擊“進入考試”按鈕,進入考試界面,本頁整體分為左右兩部分,左側為當前試題的題目和題干,學生在做完本題目后可選擇下一題。右側顯示本場考試的剩余時間和所做題目情況,其中紅色代表已做題目,綠色為未做題目,在考生做完題目并核查無誤后,點擊提交按鈕即可完成本次考試。學生在考試結束即可在考試歷史模塊查看以往考試記錄及成績,單擊回顧試卷,就可以獲得考試答案及試題難度,方便學生進行總結。
本文前端利用bootstrap 渲染頁面、后端運用SSM 框架設計并完成了一個適用于學校線上考試的考試系統,經過測試該系統界面優良,功能操作執行順暢。本系統真實完成了無紙化的考試,減輕老師工作中的負擔,也使考試更趨于科學、合理、公平、客觀,更大程度激起學生的學習愛好,老師可以及時掌握班級整體學習成果,也方便查看每個學生歷次考試成績波動情況,為每名學生都建立了個人檔案,從而使老師有更多的精力和時間投入到教育和試題的編寫工作之中。