王萍利
(西安職業(yè)技術(shù)學(xué)院, 動漫軟件學(xué)院, 陜西 西安 710077)
2020年初受疫情的影響, 網(wǎng)絡(luò)教學(xué)涉及到大、中、小學(xué)生的教學(xué)活動中,各個網(wǎng)絡(luò)教學(xué)平臺都給教師和學(xué)生提供了方便,但也是漏洞百出,不是網(wǎng)絡(luò)堵塞,就是資料無法上傳等問題,給學(xué)生的學(xué)習(xí)和教師的教學(xué)產(chǎn)生了影響。因此,設(shè)計和開發(fā)了適合高職院校學(xué)生和教師群體的網(wǎng)絡(luò)教學(xué)系統(tǒng)。通過該網(wǎng)絡(luò)教學(xué)平臺的開發(fā)和使用,提高學(xué)生自主學(xué)習(xí)的積極性和主動性,提高網(wǎng)絡(luò)教學(xué)系統(tǒng)的穩(wěn)定性和教學(xué)資源的共享性。
(1) B/S設(shè)計模式
本系統(tǒng)采用B/S(服務(wù)器/瀏覽器)設(shè)計模式[1],B/S 也分為客戶機和服務(wù)器兩層,但客戶機上不需要安裝軟件(軟件和操作系統(tǒng)一起安裝的),只需要瀏覽器就可以, 具體交互模式如圖1所示。
圖1 瀏覽器端與服務(wù)器端的交互模式
(2) MVC 模式
M(Model),封裝應(yīng)用程序的數(shù)據(jù)結(jié)構(gòu)和事務(wù)邏輯,集中體現(xiàn)應(yīng)用程序的狀態(tài),當(dāng)數(shù)據(jù)狀態(tài)改變的時候,能夠在視圖中體現(xiàn)出來。
V(View),是M 的外在表現(xiàn),模型狀態(tài)改變時有顯示。
C(Controller),對用戶的輸入進(jìn)行響應(yīng),將模型和視圖聯(lián)系到一起,負(fù)責(zé)將數(shù)據(jù)寫到模型中,并調(diào)用視圖, 如圖2所示。
圖2 MVC 思想
(3) 三大框架技術(shù)
2020年初受疫情的影響,大多數(shù)學(xué)院動手開發(fā)適合自己學(xué)院的網(wǎng)絡(luò)教學(xué)平臺,導(dǎo)致在教學(xué)中網(wǎng)絡(luò)堵塞和數(shù)據(jù)共享差的問題。為了解決這樣的問題,采用3大框架結(jié)構(gòu)開發(fā),分為表現(xiàn)層、中間層和持久層。中間層處理數(shù)據(jù)訪問、業(yè)務(wù)處理等任務(wù),客戶端不和數(shù)據(jù)庫發(fā)生數(shù)據(jù)的交互,提高了數(shù)據(jù)庫的安全,同時提高了網(wǎng)絡(luò)教學(xué)平臺的穩(wěn)定性。
具體操作如下。前端采用Struts框架來完成,后端采用Hibernate訪問數(shù)據(jù)庫[2-6]。而Spring主要運行在Struts和Hibernate 的中間,Spring負(fù)責(zé)降低Web 層和數(shù)據(jù)庫層之間的耦合性,Struts中的Action 在調(diào)用Hibernate 中的DAO時,盡量降低耦合性。再者,Spring 和Hibernate 整合實現(xiàn)業(yè)務(wù)邏輯的管理和業(yè)務(wù)對象的持久化,主要對網(wǎng)絡(luò)在線教學(xué)的集中管理。
高職院校網(wǎng)絡(luò)教學(xué)系統(tǒng)的系統(tǒng)分析,從業(yè)務(wù)需求、功能需求兩方面來設(shè)計分析。
(1) 系統(tǒng)業(yè)務(wù)需求
本系統(tǒng)的業(yè)務(wù)需求是教師、學(xué)生、管理人員對系統(tǒng)的需求。高職院校教師業(yè)務(wù)需求,包括教師的教學(xué)資料的上傳和使用,在線教學(xué)、答疑、考試、布置和批改作業(yè)等。 高職學(xué)院的學(xué)生業(yè)務(wù)需求,選擇課程在線學(xué)習(xí)、考試、做作業(yè)等。高職院校管理員業(yè)務(wù)需求,控制非法用戶的登錄。
(2) 系統(tǒng)功能需求分析
系統(tǒng)功能需求,其中高職院校教師功能模塊,可以通過系統(tǒng)進(jìn)行網(wǎng)絡(luò)教學(xué)的正常實施[7-9]。高職院校學(xué)生功能模塊,可以通過系統(tǒng)獲取必須掌握的知識。高職院校的管理員通過系統(tǒng)對教師和學(xué)生進(jìn)行管理。
網(wǎng)絡(luò)教學(xué)系統(tǒng)除以上需求外,還需要達(dá)到系統(tǒng)穩(wěn)定、數(shù)據(jù)共享等的要求。
通過系統(tǒng)需求分析, 本系統(tǒng)分為教師功能模塊、學(xué)生功能模塊、系統(tǒng)功能模塊。 系統(tǒng)的功能圖如圖3所示。
圖3 高職院校網(wǎng)絡(luò)教學(xué)系統(tǒng)功能模塊圖
部分模塊的功能描述如下。
(1) 教師教學(xué)功能模塊
在本系統(tǒng)中教師模塊的功能如下:教師登錄網(wǎng)絡(luò)教學(xué)系統(tǒng)進(jìn)行建課、上傳教學(xué)資料、 在線教學(xué)、在線答疑、在線布置、批閱作業(yè)等功能的操作實現(xiàn)[10-13]。對于在線考試模塊,教師可以在題庫中選擇各類題型后生成階段考試或期末考試的試題, 或者由題庫自動生成試題。
具體的功能圖如圖4所示。
圖4 高職教師教學(xué)功能模塊
(2) 學(xué)生學(xué)習(xí)功能模塊
本系統(tǒng)中學(xué)生學(xué)習(xí)模塊的功能如下:登錄網(wǎng)絡(luò)教學(xué)系統(tǒng)找到所學(xué)課程進(jìn)行在線學(xué)習(xí)、簽到、作業(yè)、回答老師的問題和向教師探討問題,在線參加考試、學(xué)習(xí)積分等。學(xué)習(xí)積分模塊統(tǒng)計學(xué)生作業(yè)、答疑、簽到等學(xué)習(xí)完成情況,積分達(dá)到規(guī)定的分?jǐn)?shù),本學(xué)期的平時分給增加。學(xué)習(xí)積分模塊給學(xué)生學(xué)習(xí)提供激勵,使學(xué)生養(yǎng)成自主學(xué)習(xí)的能力。達(dá)到現(xiàn)場教學(xué)和線上教學(xué)相結(jié)合的教學(xué)方式。
(3) 管理員模塊
管理員分系統(tǒng)管理員和普通管理員。系統(tǒng)管理員登錄系統(tǒng)給各個用戶分配權(quán)限;普通管理員進(jìn)行用戶的管理工作,輸出教師和學(xué)生的上課情況[14]、打印輸出各類教學(xué)和學(xué)習(xí)的信息。
高職院校網(wǎng)絡(luò)教學(xué)系統(tǒng)采用MySQL數(shù)據(jù)庫設(shè)計。MySQL是最流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)之一,在Web應(yīng)用方面,MySQL是最好的應(yīng)用軟件之一。在高職院校網(wǎng)絡(luò)教學(xué)系統(tǒng)中可以設(shè)計十多張數(shù)據(jù)表:系統(tǒng)管理員信息表、普通管理員信息表、教學(xué)課程表、在線考試表、資料上傳表、簽到表、作業(yè)表等。對部分?jǐn)?shù)據(jù)庫表的描述如下。
(1) 系統(tǒng)管理員信息表如表1所示。
表1 系統(tǒng)管理員信息表
(2) 教學(xué)課程如表2所示。
表2 教學(xué)課程表
通過系統(tǒng)需求分析、詳細(xì)功能設(shè)計,完成了系統(tǒng)教學(xué)功能模塊、學(xué)生功能模塊、管理員模塊的功能設(shè)計,系統(tǒng)部分功能的實現(xiàn)方式如下。
(1) 教師功能模塊
教師功能模塊主要設(shè)計的功能有創(chuàng)建課程[15]、上傳教學(xué)資源、在線教學(xué)、答疑、布置和批改作業(yè)、在線考試等操作,以下為教師上傳教學(xué)資源內(nèi)容的主要代碼。
String fname=ff.getFileName());
String size=Integer.toString(ff.getFileSize())+”字節(jié)”;
InputStream streamIn=ff.getInputStream();
java.io.OutputStream out=new FileOutputStream(dir+”/”+fname);
int bytesRead=0;
byte[] buffer=new byte[6166];
while((bytesRead=streamIn.read(buffer,0,6166))!=-1
{out.write(buffer,0,bytesRead);
}
(2) 學(xué)生學(xué)習(xí)功能模塊
學(xué)生學(xué)習(xí)功能模塊設(shè)計的主要功能有學(xué)生在線學(xué)習(xí)、在線答疑、在線作業(yè)、在線考試、在線簽到、學(xué)習(xí)統(tǒng)計等功能。 系統(tǒng)的實現(xiàn)流程圖如圖5所示。
圖5 學(xué)生功能模塊流程圖
本項目前臺由MyEclipse 10進(jìn)行開發(fā),該語言具有多線程、可移植性、動態(tài)性、安全性等特點,可實現(xiàn)復(fù)雜程序的個性化編寫。后臺數(shù)據(jù)庫使用MySQL進(jìn)行設(shè)計,提高了數(shù)據(jù)安全性。系統(tǒng)測試如下。
網(wǎng)絡(luò)教學(xué)系統(tǒng)穩(wěn)定性和數(shù)據(jù)共享性是系統(tǒng)的重要指標(biāo)。當(dāng)教師們都在上課時, 對系統(tǒng)響應(yīng)時間、資源的利用等進(jìn)行測試。 測試結(jié)果如表3所示。
表3 系統(tǒng)性能測試登記表
測試結(jié)果表明,使用外網(wǎng)的網(wǎng)絡(luò)教學(xué)首次響應(yīng)時間和多用戶使用的首次響應(yīng)時間都低于22 ms, 經(jīng)過多次測試,響應(yīng)時間符合要求且穩(wěn)定。在網(wǎng)絡(luò)教學(xué)的高峰時段,CPU 的占有率低于15%,符合系統(tǒng)的性能指標(biāo)。通過測試表明,該系統(tǒng)能穩(wěn)定、安全可靠地運行。
本文從高職院校網(wǎng)絡(luò)教學(xué)的實際需求出發(fā),采用J2EE開發(fā)平臺、MySQL數(shù)據(jù)庫進(jìn)行開發(fā)。通過MVC 體系架構(gòu)、B/S設(shè)計模式實現(xiàn)了高職網(wǎng)絡(luò)教學(xué)系統(tǒng)的設(shè)計。并針對教師、學(xué)生、管理員的需求,實現(xiàn)了系統(tǒng)管理模塊、教師教學(xué)功能模塊、學(xué)生學(xué)習(xí)功能模塊的設(shè)計。系統(tǒng)測試表明該網(wǎng)絡(luò)教學(xué)系統(tǒng)穩(wěn)定、共享性能好,值得推廣使用,將對實現(xiàn)信息化網(wǎng)絡(luò)教學(xué)具有重要意義。