尹逸鐸 陳科
摘 ?要:隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,如學(xué)習(xí)、考試等教學(xué)工作也逐漸轉(zhuǎn)移到線上。經(jīng)過(guò)多年的發(fā)展,計(jì)算機(jī)考試系統(tǒng)早已由最初的判分功能發(fā)展為集網(wǎng)絡(luò)實(shí)時(shí)化、模擬化的多媒體試題庫(kù)。文章設(shè)計(jì)的系統(tǒng)基于B/S架構(gòu),該架構(gòu)維護(hù)工作集中在服務(wù)器端,方便快捷,B/S管理軟件的用戶不必下載任何軟件,使用瀏覽器即可訪問(wèn)系統(tǒng),大大提升了效率。該系統(tǒng)采用的主要技術(shù)有Vue、ElementUI等。
關(guān)鍵詞:網(wǎng)絡(luò)考試系統(tǒng);前后端分離;B/S架構(gòu);Java
中圖分類(lèi)號(hào):TP311 ? ? ?文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):2096-4706(2021)14-0021-04
Abstract: With the development of the internet industry, teaching work such as study and examination has gradually shifted to online. After years of development, the computer examination system has already developed from the initial grading function to a multimedia test question bank integrating network real-time and simulation. The system designed in this paper is based on B/S architecture, and the maintenance of the architecture is concentrated on the server side, which is convenient and fast. Users of B/S” management software do not have to download any software and can access the system using a browser, which makes the operation very convenient and greatly improves the efficiency. The main technologies used in this system are Vue, ElementUI and B/S architecture.
Keywords: examination system; separation of front and rear ends of network; B/S architecture; Java
0 ?引 ?言
隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展,多媒體資源、遠(yuǎn)程網(wǎng)絡(luò)、計(jì)算機(jī)系統(tǒng)等逐漸被應(yīng)用于教育教學(xué)之中。并且有日益深化的發(fā)展趨勢(shì)。在教育和科研中,更關(guān)鍵的評(píng)價(jià)教學(xué)水平的方法是考試??荚嚥粌H能反映學(xué)生的學(xué)習(xí)狀況,查漏補(bǔ)缺,還能督促教師調(diào)整教學(xué)計(jì)劃,使學(xué)生更快地吸收專(zhuān)業(yè)知識(shí)。眾所周知,紙筆考試會(huì)消耗更多的資源。不僅需要大量印刷試卷紙包裝,教師還必須花費(fèi)大量時(shí)間審閱試卷和對(duì)試卷結(jié)果進(jìn)行統(tǒng)計(jì)分析[1]。隨著考試的增多,如培訓(xùn)、比賽、問(wèn)卷調(diào)查等[2],人力和物質(zhì)資源消耗追案增多。因此,設(shè)計(jì)一個(gè)可以在線測(cè)試的網(wǎng)絡(luò)考試系統(tǒng)就顯得尤為重要。網(wǎng)絡(luò)考試系統(tǒng)的優(yōu)勢(shì)在于學(xué)生在線答題,節(jié)省紙張資源;計(jì)算機(jī)可以自動(dòng)審閱主觀題,減輕教師的工作壓力;網(wǎng)絡(luò)考試系統(tǒng)可以對(duì)學(xué)生的表現(xiàn)進(jìn)行梳理,并對(duì)每個(gè)學(xué)生的問(wèn)題狀況進(jìn)行統(tǒng)計(jì)分析。有利于教師發(fā)現(xiàn)班級(jí)學(xué)生的不足和教學(xué)計(jì)劃的漏洞;學(xué)生出錯(cuò)的題型也可以保存在系統(tǒng)中,有利于日后查漏補(bǔ)缺等。教學(xué)方式的智能化和類(lèi)型的多樣化,最終將推動(dòng)考試信息化管理和智能化管理的發(fā)展趨勢(shì)[3]。
1 ?主要技術(shù)以及介紹
1.1 ?Vue.js
Vue.js與DOM相比,更加便捷高效,不用考慮數(shù)據(jù)的結(jié)果和過(guò)程,僅注意其源頭即可。更不用擔(dān)心DOM元素變化之后引起的綁定變化。數(shù)據(jù)驅(qū)動(dòng)和DOM驅(qū)動(dòng)的差別就在于此[4]。
1.2 ?Element UI
Element UI是基于JS的框架,它為開(kāi)發(fā)人員提供了各種各樣的組件,使開(kāi)發(fā)人員可以更加便捷地進(jìn)行頁(yè)面的布局。
1.3 ?B/S架構(gòu)
B/S全部由預(yù)制組件組成,只需更修改網(wǎng)頁(yè)即可同時(shí)升級(jí)。它的大部分開(kāi)發(fā)、設(shè)計(jì)維護(hù)等工作都集中在服務(wù)器端。開(kāi)發(fā)者對(duì)系統(tǒng)進(jìn)行升級(jí)時(shí),只需要升級(jí)服務(wù)器端的系統(tǒng)。B/S由Java等混合開(kāi)發(fā)語(yǔ)言生成后,可以兼容所有主流數(shù)據(jù)庫(kù)查詢(xún)和計(jì)算機(jī)操作系統(tǒng)[5]。
2 ?需求分析
本軟件的主要服務(wù)范圍是針對(duì)校園內(nèi)部考試。有考生,教師,和管理員三類(lèi)主要用戶,故系統(tǒng)規(guī)模相對(duì)較小。
考試應(yīng)讓學(xué)生充分發(fā)揮自己的專(zhuān)業(yè)知識(shí)水平,不因客觀因素而危及學(xué)生的正常情況。為了方便、高效地進(jìn)行考試,在實(shí)現(xiàn)用戶登錄、試卷獲取、成績(jī)查詢(xún)等功能時(shí),應(yīng)快速響應(yīng)。就教師而言,可以查閱、刪除、添加、修改、檢查和維護(hù)試卷,并對(duì)試卷和測(cè)試信息進(jìn)行加密,系統(tǒng)對(duì)試卷信息的保密性、數(shù)據(jù)信息的安全保護(hù)和一致性有非常高的規(guī)定。對(duì)于管理員來(lái)說(shuō),需要提供方便、統(tǒng)一的監(jiān)管功能。其除了擁有教師的管理權(quán)限外,還對(duì)整個(gè)系統(tǒng)的正常運(yùn)行負(fù)責(zé)。
3 ?概要設(shè)計(jì)
在對(duì)系統(tǒng)軟件需求進(jìn)行調(diào)查分析的基礎(chǔ)上,將整個(gè)訓(xùn)練系統(tǒng)劃分為若干個(gè)控制模塊,每個(gè)控制模塊盡可能發(fā)揮單一作用,根據(jù)參數(shù)對(duì)控制模塊進(jìn)行調(diào)用,系統(tǒng)功能結(jié)構(gòu)圖如圖1所示。
系統(tǒng)軟件根據(jù)學(xué)生用戶和管理員權(quán)限分為兩大程序模塊:管理員后臺(tái)管理程序模塊和學(xué)生程序模塊。系統(tǒng)軟件控制模塊的主要功能為:
(1)管理員權(quán)限包括:管理員信息管理、考生信息管理、考試信息管理和成績(jī)管理。
(2)考生權(quán)限包括:參加考試、考生科目選擇和個(gè)人成績(jī)查詢(xún)功能。
4 ?詳細(xì)設(shè)計(jì)
4.1 ?登錄管理模塊設(shè)計(jì)以及平臺(tái)主界面
為了更好更快地提高數(shù)據(jù)庫(kù)的安全系數(shù),保證客戶的隱私信息內(nèi)容,避免非法賬號(hào)登錄,系統(tǒng)軟件在登錄界面設(shè)置了用戶賬號(hào)密碼輸入界面,賬號(hào)和密碼預(yù)先存儲(chǔ)在數(shù)據(jù)庫(kù)客戶狀態(tài)表中。用戶登錄前,需要輸入用戶和密碼,送至數(shù)據(jù)庫(kù)查詢(xún),驗(yàn)證客戶的真實(shí)身份。為了更好地維護(hù)考試系統(tǒng)的安全性,本系統(tǒng)的登錄系統(tǒng)分為候選人登錄控制模塊和管理員登錄控制模塊兩部分。在賬戶登錄提示框中設(shè)置一個(gè)文本框,供客戶輸入。用戶根據(jù)頁(yè)面上的文本框輸入客戶賬號(hào)和密碼,進(jìn)入操作系統(tǒng)。當(dāng)輸入的信息不正確時(shí),系統(tǒng)軟件會(huì)自動(dòng)返回登錄界面,要求客戶重新登錄,平臺(tái)登錄界面如圖2所示。
登錄模塊核心代碼為:
protected void Logi(object sender, EventArgs e)
{ ? ? ? ? ? ? ? Users user = new Users();
if (user.CheckPassword(txtCard.Text.Trim()))
{
lRegistMessage.Text = "此用戶已注冊(cè)!"; ? ? ? ? ? ? }
else
{
string Uid = DateTime.Now.Ticks.ToString();
user.UserID = Uid;
user.UserName = txtTrueName.Text;
user.UserPwd = txtPwd1.Text;
user.Card = txtCard.Text.Trim();
user.Email = txtEmail.Text.Trim();
user.Address = txtAddress.Text;
user.UserPower = 0;
if (user.InsertByProc())
{
else
{
}
}
4.2 ?試卷管理模塊
試題管理作為一個(gè)獨(dú)立的控制模塊,用于自動(dòng)生成試卷?;谠摬僮飨到y(tǒng)進(jìn)行在線考試時(shí),必須提前制定考試科目管理辦法,完成科目的增刪改查。為了更好地實(shí)現(xiàn)這一功能,設(shè)計(jì)時(shí)在欄目中安裝了添加考題的輸入框和多個(gè)功能按鈕,利用相關(guān)技術(shù)完成考題的增刪改查。教師或管理員登錄后可以添加考試科目,如果輸入錯(cuò)誤,可以立即修改,已經(jīng)通過(guò)的科目可以刪除。該組件設(shè)計(jì)方案包括試題的選擇、試題的設(shè)置、試題的訪問(wèn)、查詢(xún)等。試題管理模塊設(shè)計(jì)有安全保護(hù)措施,避免非法登錄系統(tǒng)后故意修改或刪除試卷。老師出卷后,試卷放出前,學(xué)生無(wú)法查看試卷。教師可在試卷出發(fā)布隨時(shí)更換試卷。試卷一經(jīng)發(fā)布,不得更改。整個(gè)發(fā)布過(guò)程是在學(xué)生端為每個(gè)學(xué)生準(zhǔn)備一張?jiān)嚲恚虞d所有的考試信息。整個(gè)發(fā)布過(guò)程按照公開(kāi)的基本考試原則進(jìn)行。試卷生成核心代碼為:
//試題類(lèi)型
if(單選”.equals(row.get(subjectTypeIndex).toString())){
subject.setSubject(0);
}else
if(“多選”.equals(row.get(subjectTypeIndex).toString())){
subject.setSubject(1);
}else{
subject.setSubject(2);
}
if (“簡(jiǎn)單”.equals(subject.toString())) {
subject.setSubjectEasy(0);
} else if (“普通”.equals(subject.toString())) {
subject.setSubject(1);
} else {
subject.setSubject(2);
}
subject.setCourse(new CourseInfo(courseId));
subject.setGrade(new GradeInfo(gradeId));
subject.setDivision(division);
subjects.add(subject);
}
4.3 ?考試最終成績(jī)查詢(xún)模塊
一旦學(xué)生進(jìn)入考試網(wǎng)頁(yè)并逐漸參加考試,計(jì)時(shí)器將逐漸計(jì)時(shí)。當(dāng)網(wǎng)頁(yè)跳轉(zhuǎn)時(shí),定時(shí)器會(huì)停止,在HTML頁(yè)面加載后定時(shí)器會(huì)再次計(jì)時(shí)。學(xué)生可以修改他們已經(jīng)回答的考試題目。最后,學(xué)生交卷,系統(tǒng)軟件完成包括(鑒別題、單選題、多項(xiàng)選擇、填空)在內(nèi)的自動(dòng)復(fù)習(xí),既提高了工作效率,又促進(jìn)了考試的權(quán)威、公平、公正性。即使是經(jīng)過(guò)系統(tǒng)審查的試卷,也需要經(jīng)過(guò)老師的審閱才能發(fā)布。因?yàn)槔蠋熆赡芤鶕?jù)學(xué)生的表現(xiàn)進(jìn)行一定的調(diào)整。試卷分?jǐn)?shù)確定后,所有分?jǐn)?shù)將發(fā)布給相應(yīng)的學(xué)生。這時(shí)候?qū)W生就可以查看結(jié)果了,成績(jī)查看控制模塊中安裝了試卷選擇下拉列表,供學(xué)生查看。學(xué)生還可以選擇已參加的考試,查看成績(jī)。設(shè)計(jì)方案的概念是:用戶登錄系統(tǒng)軟件,記錄用戶ID號(hào)。用戶查看結(jié)果時(shí),會(huì)從Session中取出用戶ID,然后將用戶ID和選中的試卷ID與評(píng)分表的UserID結(jié)合起來(lái)。從上到下比較數(shù)字和PaperID。當(dāng)查找匹配的數(shù)值數(shù)據(jù)時(shí),此項(xiàng)將返回到Web頁(yè)面并顯示在用戶面前。核心代碼為:
Public static void show(){
system.out.print(“\t”);
for(int i=0;i<score.length;i++ ){
system.out.print(score[i]+”\t”);
for(int j=0;j<score[i].length;j++)
system.out.print(score[i][j]+”\t”);
System.out.print();
}
5 ?防作弊監(jiān)測(cè)
在進(jìn)入考試的整個(gè)過(guò)程中,記錄考生的面部和手部、電腦屏幕以及附近的全景圖像。作弊識(shí)別可獨(dú)立識(shí)別提示并終止考試。發(fā)現(xiàn)作弊情況是要被終止考試的:一是考生低頭看手機(jī)或書(shū)籍,轉(zhuǎn)頭,不看電腦顯示器和數(shù)字鍵盤(pán)機(jī)械設(shè)備,手臂沒(méi)有動(dòng)作,但顯示屏有異常提示,如系統(tǒng)自動(dòng)解答題目;二是有人中途進(jìn)入考試空間,如在考場(chǎng)講話、上廁所、離開(kāi)座位等。如果反作弊系統(tǒng)的檢測(cè)到異常,會(huì)提醒考試監(jiān)控系統(tǒng)的檢查員手動(dòng)控制處理,并標(biāo)識(shí)違紀(jì)、作弊和違紀(jì)行為。監(jiān)考人員首先觀看考點(diǎn)現(xiàn)場(chǎng)視頻,根據(jù)提示對(duì)異常視頻進(jìn)行審核。如發(fā)現(xiàn)個(gè)人行為有作弊行為,可向考生提出異議或口頭警告,違反考試紀(jì)律嚴(yán)重的,監(jiān)考人員可以下令終止考試,通過(guò)系統(tǒng)終端提交試卷,終止考試,撤銷(xiāo)考試成績(jī)。
異常檢查包括:是否長(zhǎng)時(shí)間斷線(機(jī)械設(shè)備線下10秒以上),監(jiān)控?cái)z像頭是否有臟物擋住或被移動(dòng),麥克風(fēng)被擋住,調(diào)頻收音不好,多次切屏。一旦發(fā)生異常,系統(tǒng)會(huì)提醒監(jiān)考人員介入處理。例如:自動(dòng)停止考試、取消考試成績(jī)、從頭開(kāi)始新的考試等。當(dāng)系統(tǒng)接收到互聯(lián)網(wǎng)考試系統(tǒng)的考試結(jié)束數(shù)據(jù)信號(hào)時(shí),檢測(cè)設(shè)備自動(dòng)將圖像發(fā)送至測(cè)試核心服務(wù)平臺(tái)進(jìn)行數(shù)據(jù)存儲(chǔ),直到考試結(jié)束。
6 ?結(jié) ?論
網(wǎng)絡(luò)考試系統(tǒng)作為當(dāng)今網(wǎng)絡(luò)遠(yuǎn)程教育的一個(gè)子系統(tǒng),具有靈活、高效的特點(diǎn)。在線考試是未來(lái)高等教育的發(fā)展趨勢(shì),是保證教育教學(xué)水平的具體途徑??珊侠硖岣邔W(xué)生的學(xué)習(xí)能力,從而以更好的熱情投入到學(xué)習(xí)活動(dòng)中;在線考試系統(tǒng)能夠準(zhǔn)確反映教師的教學(xué)水平,及時(shí)調(diào)整教師的專(zhuān)業(yè)培養(yǎng)點(diǎn)和方向。眾所周知,數(shù)字化考試也有一些不足。只有與傳統(tǒng)考試制度有效結(jié)合,才能迅速融入現(xiàn)代社會(huì),為國(guó)家培養(yǎng)出一大批智慧型人才。
參考文獻(xiàn):
[1] 劉惠.一種嵌入式Web技術(shù)的在線測(cè)試研究 [J].電子設(shè)計(jì)工程,2017,25(5):138-141.
[2] 李湘一.基于PHP技術(shù)的計(jì)算機(jī)基礎(chǔ)考試系統(tǒng)的開(kāi)發(fā) [J].電子技術(shù)與軟件工程,2015(8):82-83.
[3] 朱佳軒,鄢雪梅.基于Php-Web技術(shù)的在線考試系統(tǒng)設(shè)計(jì) [J].電子設(shè)計(jì)工程,2017,25(8):127-130.
[4] 麥冬,陳濤,梁宗灣.輕量級(jí)響應(yīng)式框架Vue.js應(yīng)用分析 [J].信息與電腦(理論版),2017(7):58-59.
[5] 張友生,陳松喬.C/S與B/S混合軟件體系結(jié)構(gòu)模型 [J].計(jì)算機(jī)工程與應(yīng)用,2002(23):138-140.
作者簡(jiǎn)介:尹逸鐸(1999—),男,漢族,山西長(zhǎng)治人,本科在讀,研究方向:Java軟件開(kāi)發(fā)