Examstack開源考試系統(tǒng)是一款基于JAVA與MYSQL開發(fā)的網(wǎng)絡(luò)考試系統(tǒng),在Exam++考試系統(tǒng)第一版的基礎(chǔ)上,ExamStack V2.0進(jìn)行了大量代碼重構(gòu),同時(shí)也對(duì)數(shù)據(jù)模型做了部分調(diào)整。為了減小學(xué)員考試交卷時(shí)大量并發(fā)帶來的系統(tǒng)風(fēng)險(xiǎn),我們嘗試采用成熟的消息隊(duì)列框架RabbitMQ來解決這一問題,因此我們的數(shù)據(jù)庫(kù)以及系統(tǒng)的架構(gòu)同第一版相比,發(fā)生了不小的變化。
【運(yùn)行環(huán)境】
Java 8
Tomcat 8
RabbitMQ
MySql 5.0以上
【更新日志】
1、系統(tǒng)架構(gòu):
管理后臺(tái)現(xiàn)在獨(dú)立成一個(gè)新項(xiàng)目,不再和第一版一樣和前臺(tái)合在一起。
引入RabbitMq,用于接受用戶提交的答題卡,通過ScoreMarker從消息隊(duì)列獲取答題卡并交卷,減小大量用戶提交導(dǎo)致的服務(wù)器故障幾率。
試題內(nèi)容存儲(chǔ)格式由xml改為json
增加教師角色,現(xiàn)在教師用戶可以正確地使用自己的權(quán)限管理學(xué)員、試題、試卷、考試以及培訓(xùn)。
優(yōu)化系統(tǒng)界面,新的界面看起來更加清爽、專業(yè)。
新增了DashBoard,管理界面看起來會(huì)更專業(yè)。
練習(xí)歷史現(xiàn)在專門用一張表記錄,使開發(fā)相關(guān)統(tǒng)計(jì)變得更容易。
2、考試和練習(xí):
考試現(xiàn)在分為正式考試和模擬考試兩種,正式考試需要教師或管理員審核,而模擬考試不需要審核。正式考試又分為公有和私有兩種類型,公有考試是可以申請(qǐng)的考試,私有考試則需要教師或管理員指定學(xué)員(這里由管理員指定也被我們認(rèn)為是審核的一種方式)。
新增審核功能,現(xiàn)在教師創(chuàng)建的試卷、考試都需要超級(jí)管理員審核。超級(jí)管理員自己創(chuàng)建的不需要審核。同時(shí),超級(jí)管理員和教師也可以審核學(xué)員的考試申請(qǐng)。
新增人工閱卷功能。包含主觀題的考試試卷,教師或超級(jí)管理員通過人工閱卷后可以確定最終分?jǐn)?shù)。全部是客觀題的試卷不需要閱卷。
新增考試成績(jī)統(tǒng)計(jì)功能,可以查看特定考試下學(xué)員的分?jǐn)?shù),同時(shí)可以對(duì)分?jǐn)?shù)進(jìn)行排序。
新增學(xué)習(xí)記錄查詢功能,教師和管理員現(xiàn)在可以方便地查看學(xué)員的練習(xí)記錄、培訓(xùn)記錄和考試記錄。
新增快速考試模式,通過輸入準(zhǔn)考證號(hào)即可直接進(jìn)入到對(duì)應(yīng)的考試頁(yè)面。
新增繼續(xù)考試功能,現(xiàn)在學(xué)員在考試過程中中斷考試后,繼續(xù)進(jìn)入考試后,學(xué)員的答題記錄會(huì)恢復(fù)到中斷前的狀態(tài)。
3、題庫(kù)管理:
優(yōu)化試題修改功能,現(xiàn)在可以正確地修改試題的基本信息。
4、其他:
新增培訓(xùn)功能,教師或超級(jí)管理員可以發(fā)布培訓(xùn)資料(視頻和pdf文檔)。學(xué)員可以選擇自己需要參加的培訓(xùn)進(jìn)行學(xué)習(xí),培訓(xùn)分為視頻和pdf格式的文檔兩種。
新增虛擬班級(jí)功能,教師或管理員現(xiàn)在可以通過虛擬班組很方便地管理學(xué)員。