許秀云 姚冬 丁凰
摘 要:為了打破傳統(tǒng)的師生問答式英語口語考試模式,設計了一種SSM架構的計算機英語口語測評平臺。該平臺應用JAVAWEB語言進行開發(fā),服務器采用MySQL數(shù)據(jù)庫創(chuàng)建,并結合了多媒體軟件實現(xiàn)平臺的功能??谡Z考試平臺通過英語短文朗誦、回答問題、英語論述三個環(huán)節(jié)來評估考生的英語口語水平。平臺功能主要依靠用戶登錄管理、學生管理、班級管理、題庫管理、在線考試、閱卷管理、成績預測、成績查詢等模塊實現(xiàn)。所設計的英語口語考試平臺功能完善,考試結果符合實際,對于釋放教學資源、提高教學水平具有非常重要的意義。
關鍵詞:在線考試;SSM框架;成績預測;成績管理
中圖分類號:G 643
文獻標志碼:A
文章編號:1007-757X(2020)11-0147-03
Abstract:In order to break the traditional mode of teacher-student question and answer oral English test, this paper designs and proposes a computer oral English test platform based on SSM. The platform is based on Java Web language for application development. MySQL database is used to create the server, and multimedia software is used to realize the functions of the platform. The oral English test platform assesses the oral English level of the candidates through three links:reading English passages, answering questions and discussing. The functions of the platform mainly depend on the modules of user login management, student management, class management, question bank management, online examination, marking management, score prediction, score query, etc. The oral English test platform designed in this paper has perfect functions and practical test results, and is of great significance to release teaching resources and improve teaching level.
Key words:online examination;SSM framework;performance prediction;performance management
0?引言
目前學校英語教學的口語教學、訓練、考試等項目都是通過教師與學生面對面的形式進行的,尤其是英語口語考試,師生一對一問答交流,學生成績由教師主觀判定,這種模式不僅極度消耗教師資源,也難以在成績上保證評分標準的一致性。為了解決這些問題,本文以實現(xiàn)智能化口語考試為目標設計并提出了一種基于SSM(Spring+SpringMVC+MyBatis開源框架集)架構的計算機英語口語考試平臺,并通過整體設計、關鍵功能模塊設計過程完成了平臺的設計, SSM框架作為標準MVC設計模式集成了多個開源框架,實現(xiàn)簡單、功能全面,能夠在全面實現(xiàn)設計目標的前提下極大地提升平臺開發(fā)效率。平臺包含學生管理、班級管理、題庫管理、在線考試、閱卷管理、成績預測、成績查詢等模塊,能夠在英語教學過程中大大降低口語教學資源的消耗,實現(xiàn)口語考試的智能化,保證口語考試的公平性。該系統(tǒng)開發(fā)周期為四個月,開發(fā)成本大致為5萬元左右,其中本人負責系統(tǒng)總體設計和代碼編寫,課題組其他成員負責界面設計。開發(fā)完成后在網(wǎng)絡教育學院進行為期三個月的運行測試,以驗證系統(tǒng)應用效果。
1?平臺總體設計
從功能需求的角度出發(fā),英語考試平臺通過應用層、邏輯層、數(shù)據(jù)層三個層級完成平臺整體架構的搭建,其總體結構和內(nèi)部工作流程,如圖1所示。
應用層是平臺與用戶進行信息交互的窗口,在該層中教師、學生和管理員用戶基于系統(tǒng)提供的功能進行相關操作,完成各自的任務。
應用層通過JSP、CSS以及超文本標記語言等技術呈現(xiàn)多視圖客戶端界面,基于JavaScript協(xié)議進行網(wǎng)絡通信。
邏輯層用以接收用戶的操作請求,并按照已有的業(yè)務規(guī)則對請求進行邏輯處理,將得到的結果發(fā)送給平臺數(shù)據(jù)庫,數(shù)據(jù)庫按照要求返回的數(shù)據(jù)也要經(jīng)邏輯層的轉換才能在應用層得以顯示。
數(shù)據(jù)層的主要功能是處理文件訪問、內(nèi)存數(shù)據(jù)訪問、其它LDAP訪問和數(shù)據(jù)庫訪問,通過創(chuàng)建SQL語句執(zhí)行用戶的操作請求。
用戶進入平臺后,操作請求VO被封裝進一個HTTP協(xié)議數(shù)據(jù)包內(nèi),struts控制器接收到該請求后將其發(fā)送給業(yè)務控制器,業(yè)務控制器根據(jù)請求內(nèi)容搜索對應的處理規(guī)則,對其進行定位并發(fā)送給數(shù)據(jù)庫,數(shù)據(jù)庫按照請求內(nèi)容及控制器指定的規(guī)則選取數(shù)據(jù),返回給邏輯層由其進行數(shù)據(jù)轉換后經(jīng)應用層向用戶顯示。
2?平臺功能設計
2.1?功能模塊設計
高中英語口語考試平臺用戶主要包括教師和學生兩個部分,同時平臺的維護和管理需要通過管理員用戶進行,依據(jù)平臺用戶的各項功能需求,本平臺可具體劃分成用戶登錄管理、學生管理、班級管理、題庫管理、在線考試、閱卷管理、成績預測、成績查詢以及系統(tǒng)管理等功能模塊。平臺功能模塊構成及歸屬關系,如圖2所示。
2.2?平臺關鍵功能設計
對于英語口語考試平臺,在其多個功能模塊中,學生管理、在線考試及成績預測模塊是整個平臺設計的關鍵模塊,這三個模塊的功能完整性決定了平臺的設計質量。
(1)學生管理模塊設計
教師通過該模塊將其所任教班級的所有學生信息錄入到平臺中,以便進行統(tǒng)一的管理。
學生信息的錄入包括以下兩種方式。
批量錄入學生信息。教師在其客戶端界面選擇“批量錄入學生信息”,界面會出現(xiàn)“學生列表模板”選項,點擊下載該模板,在本地計算機中打開模板并按照表頭內(nèi)容逐項填寫學生信息,完成后在客戶端界面選擇“導入學生列表”,將表格上傳至平臺服務器中存儲。平臺具備學生信息列表校驗功能,如果教師導入的列表中填寫內(nèi)容有誤,平臺會通過界面進行提示并附加校驗報告,教師按照報告中的標注做出修改即可。
逐人錄入學生信息。教師可通過平臺界面將每個學生的信息逐個錄入平臺數(shù)據(jù)庫,錄入信息包括學生的姓名、性別、學號等。
學生管理模塊的工作流程,如圖3所示。
(2)在線考試模塊設計
學生通過其客戶端界面在多個模擬考試選項中選擇其一,點擊對應的“考試”按鈕進行模擬測驗??荚囌介_始前平臺會通過界面提示學生進行試音,以保證硬件設備及軟件程序都處于正常運行狀態(tài)。戴上耳機,在客戶端界面點擊“測試耳機”選項,通過播放的音頻質量判斷耳機是否正常;點擊“測試話筒”并讀出平臺所示短文,根據(jù)平臺辨識的結果判斷話筒是否正常。
試音結束即可進入模擬測驗。學生用戶可根據(jù)測驗進行的具體情況選擇“繼續(xù)練習”以重新測驗,或點擊“返回”選擇其它試卷。測驗完成后,用戶可通過平臺界面查看成績、得分項與失分項、參考答案等。
(3)成績預測模塊設計
平臺的成績預測功能是基于其所創(chuàng)建的DNN(Deep Neural Networks,深度神經(jīng)網(wǎng)絡)學習模型實現(xiàn)的,DNN模型中包含了三層神經(jīng)網(wǎng)絡,即輸入層、隱藏層和輸出層,層與層之間為全連接模式,通過前向傳播算法基于上一層的輸出結果來計算下一層的輸出結果,如式(1)。
平臺會將學生以往的多次測驗和考試成績保存并匯總成一個歷史成績數(shù)據(jù)集存儲于數(shù)據(jù)庫中,進行成績預測時,平臺調(diào)取出這個數(shù)據(jù)集并按照所設定的考試內(nèi)容與特征將其轉化為一個訓練數(shù)據(jù)集,之后通過該數(shù)據(jù)集對DNN深度學習模型進行訓練,即可得出針對用戶所設定考試的成績預測結果。
3?平臺功能實現(xiàn)
3.1?學生管理功能的實現(xiàn)
如前文所述,學生信息錄入可分為批量錄入和逐個錄入兩種方式進行。若選擇批量添加模式,需要首先下載學生列表模板,所有學生信息填寫完成后再上傳模板;若選擇單個添加模式,則在錄入界面直接填寫信息,完成后點擊“添加”即可完成信息錄入。
教學過程中可能隨時需要對學生的信息進行更改,包括學生姓名、性別、學號的變更或整條信息的刪除等。可以通過學生列表選擇目標學生,點擊“編輯”修改已錄入的學生信息。點擊移除則可整條刪除學生信息。
3.2?在線考試功能實現(xiàn)
試音完成后,學生點擊“開始考試”即出現(xiàn)考試界面,界面左側是要求學生朗讀的英語短文,學生點擊“錄制”后開始朗讀,根據(jù)實際情況選擇是否中止錄制,朗讀完成后點擊“停止”,繼續(xù)點擊“上傳”即可將錄音保存至平臺服務器中,同時平臺界面右側會出現(xiàn)根據(jù)學生發(fā)音智能辨識的短文內(nèi)容。
3.3?成績預測功能實現(xiàn)
成績預測功能通過創(chuàng)建DNN模型、建立歷史成績數(shù)據(jù)集、創(chuàng)建訓練數(shù)據(jù)集、訓練DNN模型、驗證模型功能、加載模型、預測成績七個環(huán)節(jié)完成。各環(huán)節(jié)執(zhí)行代碼如下。
1)創(chuàng)建DNN模型
inputs=Input(shape=(size,),dtype='float32')
dropout=Dropout(0)(inputs)
ouput=Dense(512,activation='relu')(dropout)
dropout=Dropout(0.15)(ouput)
ouput=Dense(256,activation='relu')(dropout)
ouputs=Dense(1)(ouput)
model=Model(input=inputs,output=ouputs)
2)建立歷史成績數(shù)據(jù)集
optimizer=Adam(1r=0.002,beta_1=0.9,beta_2=0.999,epsilon=1e-08)
model.compile(loss='mae',metrics=['mape','mae','acc'],optimizer=optimizer)
3)將歷史成績數(shù)據(jù)集轉換為訓練數(shù)據(jù)集
'g_dir='./logs',histogram_freq=0,write_graph=True,write_images=False,embeddings_freq=0,
s_layer_name=None,embeddings_metadata=None)
abels,batch_size=2000,epochs=1000,validation_data=(np.array)(eval_features),eval_labels),callback
4)通過訓練數(shù)據(jù)集訓練DNN模型
tensorboard-logdir=/logs
5)驗證DNN模型功能
cost=model.evaluate(np.array(eval_features),eval_labels,batch_size=100)