吳大非
摘要:隨著MOOC在高校教學(xué)中得到廣泛應(yīng)用,極大地提高了教學(xué)質(zhì)量。但是,對(duì)于普通教師來說,MOOC課程的開發(fā)和管理技術(shù)難度較大,影響了教師積極性。該文提出了一種操作簡單、功能實(shí)用的MOOC管理平臺(tái)設(shè)計(jì)方案,通過該平臺(tái)能幫助教師輕松地創(chuàng)建和管理自己的MOOC課程資源,有效地應(yīng)用到教學(xué)之中。
關(guān)鍵詞:MOOC;課程管理平臺(tái);自動(dòng)生成技術(shù);設(shè)計(jì)與開發(fā)
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2018)27-0047-03
1 背景
近幾年來,大規(guī)模開放在線課程(MOOC)在高校教學(xué)中得到了廣泛應(yīng)用,有效地提高了教學(xué)質(zhì)量。MOOC平臺(tái)中不僅提供課程教學(xué)視頻,還包括課程公告、課程大綱、教學(xué)效果分析、在線考試、課后作業(yè)、交流討論等模塊,實(shí)體課程所具備的要素在 MOOC平臺(tái)中均能完整地呈現(xiàn)。
但是,限于MOOC開發(fā)需要較高的專業(yè)技術(shù)水平,目前大部分MOOC課程平臺(tái)都是課程負(fù)責(zé)單位或任課教師聯(lián)系專業(yè)公司或?qū)I(yè)技術(shù)人員進(jìn)行前期制作和后期維護(hù)。在MOOC實(shí)際制作開發(fā)和運(yùn)行維護(hù)過程中,涉及雙方交流和溝通等問題,由此造成開發(fā)出來的MOOC課程在質(zhì)量上存在一些問題,例如:MOOC課程建設(shè)速度慢、開發(fā)效率低下、課程修改難、維護(hù)難、更新難,運(yùn)行維護(hù)成本較高。另外,國內(nèi)外一些公司和大學(xué)開發(fā)了一些高質(zhì)量的MOOC管理平臺(tái),如美國斯坦福大學(xué)的Coursera,清華大學(xué)的“學(xué)堂在線”,網(wǎng)易公司的網(wǎng)易大學(xué)MOOC平臺(tái),這些平臺(tái)功能全面,質(zhì)量較高。但是,普通教師要通過這些平臺(tái)來創(chuàng)建和管理自己的課程,供學(xué)生網(wǎng)上在線學(xué)習(xí),則要支付高昂的平臺(tái)使用費(fèi)用。
因此,高校教師迫切需要一個(gè)能免費(fèi)使用的MOOC管理平臺(tái),能自主創(chuàng)建課程、設(shè)置板塊欄目、自動(dòng)生成課程網(wǎng)站,能夠?qū)φn程網(wǎng)站進(jìn)行課件、教學(xué)視頻等教學(xué)資源進(jìn)行上傳,能進(jìn)行生成考試試卷、答疑、交流討論及作業(yè)批改等經(jīng)常性、實(shí)時(shí)性的維護(hù)工作。
該文立足于廣大高校教師的需求,主要研究如何設(shè)計(jì)開發(fā)一個(gè)簡單實(shí)用的MOOC管理平臺(tái),幫助教師輕松地生成和管理自己的MOOC課程網(wǎng)站,減輕教師在MOOC課程開發(fā)中面臨的技術(shù)壓力,有效地整合和共享高校教師的課程教學(xué)資源,提升大學(xué)教學(xué)質(zhì)量。
2 MOOC管理平臺(tái)實(shí)現(xiàn)原理及相關(guān)技術(shù)
2.1 MOOC管理平臺(tái)實(shí)現(xiàn)原理
要實(shí)現(xiàn)讓教師在MOOC管理平臺(tái)中通過簡單交互,輸入一些文字就能自主定義課程網(wǎng)站結(jié)構(gòu)、自行設(shè)置板塊欄目;通過單擊交互按鈕,上傳一些課程資源后,能通過管理平臺(tái)自動(dòng)生成教師所需的MOOC課程網(wǎng)站,其實(shí)現(xiàn)原理主要有如下三種技術(shù)方法:
2.1.1 參數(shù)法生成
參數(shù)法生成是目前MOOC管理平臺(tái)上自動(dòng)生成MOOC課程網(wǎng)站的最常用方法,其原理就是通過管理平臺(tái)操作界面,將用戶輸入或上傳的交互式描述數(shù)據(jù)(如文字、圖片、音頻、視頻等)進(jìn)行分類后,存入后臺(tái)數(shù)據(jù)庫。然后,將數(shù)據(jù)庫中的數(shù)據(jù)提取出來,替代已有的網(wǎng)頁模板中的參數(shù),通過程序接口來自動(dòng)生成MOOC課程網(wǎng)站。參數(shù)法生成需要使用課程管理平臺(tái)中已有的課程網(wǎng)站模板,需要后臺(tái)數(shù)據(jù)庫的支持。參數(shù)法生成非常適合不具備網(wǎng)站編程開發(fā)技術(shù)的普通教師,是建立MOOC課程網(wǎng)站的一種簡便高效的方法,不足之處就是生成的課程網(wǎng)站是一般是靜態(tài)頁面。
2.1.2 變換法生成
變換法生成,其實(shí)現(xiàn)原理是基于某種規(guī)則把功能和數(shù)據(jù)需求,通過一次或多次的轉(zhuǎn)換,得到課程網(wǎng)站生成代碼。變換法生成技術(shù),可以動(dòng)態(tài)地進(jìn)行數(shù)據(jù)的輸出,還可以改變數(shù)據(jù)輸出的順序,根據(jù)轉(zhuǎn)換規(guī)則輸出添加的計(jì)算結(jié)果。變換法生成可以處理各種復(fù)雜業(yè)務(wù)層邏輯的動(dòng)態(tài)頁面[1]。
2.1.3 過程法生成
過程法生成是一種動(dòng)態(tài)網(wǎng)頁生成方法,其原理就是在后臺(tái)內(nèi)置了網(wǎng)站代碼產(chǎn)生模式的一段程序,過程法生成需要分析生成網(wǎng)頁及服務(wù)端數(shù)據(jù)存取代碼的結(jié)構(gòu),最后根據(jù)網(wǎng)頁操作數(shù)據(jù)對(duì)象的不同來生成不同的網(wǎng)頁服務(wù)端程序代碼[1]。
2.2 MOOC管理平臺(tái)開發(fā)相關(guān)理論和技術(shù)
2.2.1 架構(gòu)模式
目前,國內(nèi)外知名的MOOC管理平臺(tái),其采用的架構(gòu)模式都是B/S模式,即瀏覽器和服務(wù)器網(wǎng)絡(luò)架構(gòu)模式。在這種架構(gòu)下,用戶工作界面通過WEB瀏覽器來實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實(shí)現(xiàn),主要事務(wù)邏輯在服務(wù)器端(Server)實(shí)現(xiàn)。這種模式統(tǒng)一了客戶端,將系統(tǒng)功能實(shí)現(xiàn)的核心部分集中到服務(wù)器上,簡化了系統(tǒng)的開發(fā)、維護(hù)和使用。
2.2.2 軟件設(shè)計(jì)模式
軟件設(shè)計(jì)模式是指一套被反復(fù)使用、多數(shù)人知曉,經(jīng)過分類編目、代碼設(shè)計(jì)經(jīng)驗(yàn)的總結(jié)。使用設(shè)計(jì)模式是為了可重用代碼,讓代碼更容易被他人理解,保證代碼的質(zhì)量。目前,國內(nèi)外大多數(shù)MOOC管理平臺(tái)的開發(fā),使用的是MVC設(shè)計(jì)模式。MVC全名是Model View Controller,即模型(model)-視圖(view)-控制器(controller)的縮寫,它用一種業(yè)務(wù)邏輯、數(shù)據(jù)、界面顯示分離的方法組織代碼,將業(yè)務(wù)邏輯聚集到一個(gè)部件里面,在改進(jìn)和個(gè)性化定制界面及用戶交互時(shí),不需要重新編寫業(yè)務(wù)邏輯。MVC設(shè)計(jì)模式十分適合進(jìn)行web開發(fā),它具有良好的軟件架構(gòu)、復(fù)用性和較高的維護(hù)性。
2.2.3 編程語言
目前,用于開發(fā)MOOC管理平臺(tái)的編程語言主要包括Python,Java和C#等;另外,用于開發(fā)MOOC平臺(tái)的主流腳本語言包括JSP,PHP和ASP.NET等。
2.2.4 數(shù)據(jù)庫技術(shù)
在開發(fā)MOOC管理平臺(tái)時(shí),需要用到一些結(jié)構(gòu)化數(shù)據(jù)和非結(jié)構(gòu)化數(shù)據(jù),對(duì)于結(jié)構(gòu)化數(shù)據(jù)可以通過SQL Server和Oracle等關(guān)系數(shù)據(jù)庫管理系統(tǒng)進(jìn)行存儲(chǔ)和管理。對(duì)于非結(jié)構(gòu)化數(shù)據(jù)可以使用非關(guān)系數(shù)據(jù)庫管理系統(tǒng),如Mongo DB 來進(jìn)行存儲(chǔ)和管理,將大量的非結(jié)構(gòu)化數(shù)據(jù)(圖形、圖像、視頻、音頻、動(dòng)畫)等文件的索引和實(shí)際物理路徑,通過索引服務(wù)器保存在 Mongo DB文檔數(shù)據(jù)庫中,其具體的物理文件則保存在分布式文件管理系統(tǒng)下對(duì)應(yīng)的文件服務(wù)器硬盤中[2]。
3 MOOC管理平臺(tái)需求分析
軟件需求分析所要做的工作是深入描述軟件的功能和性能,確定軟件設(shè)計(jì)的限制和軟件接口細(xì)節(jié),定義軟件的其它有效性需求。在進(jìn)行需求分析時(shí),應(yīng)注意一切需求都要從用戶的角度上考慮,這在一定程度上能決定整個(gè)系統(tǒng)開發(fā)的成敗。
3.1 功能需求分析
通過對(duì)國內(nèi)外知名MOOC管理平臺(tái)的深入使用來看,這些管理平臺(tái)的功能主要包括課程公告、課程教學(xué)視頻、測(cè)驗(yàn)與作業(yè)、課程考試、討論區(qū)、常見問題、學(xué)習(xí)進(jìn)度、后臺(tái)管理等模塊。通過對(duì)這些平臺(tái)仔細(xì)分析,發(fā)現(xiàn)MOOC平臺(tái)的功能主要分為三大塊:核心功能模塊,輔助教學(xué)模塊和后臺(tái)管理模塊。其中核心功能模塊是保證完成教學(xué)過程的模塊,如課程教學(xué)視頻、測(cè)驗(yàn)與作業(yè)、課程考試等。輔助教學(xué)模塊則是為學(xué)習(xí)者更好地學(xué)習(xí),提供必要的幫助,如學(xué)習(xí)進(jìn)度監(jiān)控、討論區(qū)、學(xué)習(xí)筆記等,輔助教學(xué)模塊可以根據(jù)實(shí)際情況進(jìn)行增加或刪除。后臺(tái)管理模塊主要是讓教師能輕松地設(shè)置課程欄目,上傳及修改課程資源等。
3.2 平臺(tái)用戶角色分析
MOOC管理平臺(tái)中的用戶主要包括三類人員,分別是管理員、教師和學(xué)生。
3.2.1 學(xué)生用戶
學(xué)生用戶在MOOC平臺(tái)免費(fèi)注冊(cè)后,可以登錄平臺(tái)自主選擇課程進(jìn)行學(xué)習(xí)。其學(xué)習(xí)過程一般是:觀看課程教學(xué)視頻→做章節(jié)練習(xí)題→向教師提問、查看教師解答→參加課程主題討論→在線參加課程期末考試→獲得課程形成性成績。
3.2.2 教師用戶
教師用戶主要是通過平臺(tái)進(jìn)行創(chuàng)建課程,編輯課程欄目,上傳課程各種教學(xué)資源(教學(xué)視頻、課程大綱、習(xí)題、課件等),對(duì)學(xué)生的提問進(jìn)行解答,批改作業(yè),獲取學(xué)生學(xué)習(xí)情況,對(duì)教學(xué)效果進(jìn)行分析等教學(xué)工作。
3.2.3 管理員用戶
管理員用戶主要是對(duì)教師和學(xué)生的信息進(jìn)行編輯和修改,對(duì)用戶設(shè)置初始密碼和權(quán)限,發(fā)布課程上線公告等。
4 MOOC管理平臺(tái)系統(tǒng)設(shè)計(jì)
4.1 系統(tǒng)設(shè)計(jì)方案
在進(jìn)行系統(tǒng)方案設(shè)計(jì)時(shí),通過綜合考慮平臺(tái)的系統(tǒng)兼容性、可擴(kuò)展性和易于維護(hù)性等方面因素,該平臺(tái)系統(tǒng)采用 B/S 架構(gòu),選擇J2EE 開發(fā)環(huán)境和 SSH 架構(gòu)(即struts+spring+hibernate集成框架)。系統(tǒng)采用分層設(shè)計(jì)原則,劃分為用戶視圖層、業(yè)務(wù)邏輯層、控制器層和數(shù)據(jù)層。另外,在課程視頻上傳、存儲(chǔ)和點(diǎn)播功能實(shí)現(xiàn)上,選擇了開源免費(fèi)的Flex5和 Red5 視頻服務(wù)器技術(shù);系統(tǒng)核心功能MOOC課程的自動(dòng)生成,則采用文中2.1所述的參數(shù)法生成技術(shù)來實(shí)現(xiàn)。
4.2 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)
通過前期的系統(tǒng)需求分析,開發(fā)團(tuán)隊(duì)設(shè)計(jì)的該MOOC管理平臺(tái)系統(tǒng)結(jié)構(gòu)劃分為十二個(gè)功能模塊,如圖1所示:
4.3 數(shù)據(jù)庫設(shè)計(jì)
該MOOC管理平臺(tái)中用到的數(shù)據(jù)實(shí)體主要包括:課程實(shí)體(課程id,課程名稱,學(xué)分,授課教師),課程視頻實(shí)體(視頻id,視頻名稱,視頻文件路徑,課程id(FK)),測(cè)試題實(shí)體(題號(hào)id,題干,答案A,答案B,答案C,答案D,正確答案,分值),答疑實(shí)體(問題id,提問內(nèi)容,提問時(shí)間,回復(fù)內(nèi)容,回復(fù)時(shí)間,學(xué)生id(FK)),教師實(shí)體(教師id,工號(hào),姓名,性別,出生日期,登錄名,密碼,權(quán)限),學(xué)生實(shí)體(學(xué)生id,,姓名,性別,出生日期,登錄名,密碼,權(quán)限),通知實(shí)體(通知id,標(biāo)題,內(nèi)容,發(fā)布時(shí)間)等,共有各類數(shù)據(jù)表26個(gè)。詳細(xì)的實(shí)體聯(lián)系模型(E-R圖),因篇幅所限在此不再贅述。
5 系統(tǒng)實(shí)現(xiàn)
5.1 開發(fā)環(huán)境設(shè)置
在開發(fā)MOOC管理平臺(tái)系統(tǒng)時(shí),可以根據(jù)技術(shù)團(tuán)隊(duì)的實(shí)際情況,選擇一些合適的開發(fā)工具來進(jìn)行系統(tǒng)開發(fā),該MOOC平臺(tái)系統(tǒng)的開發(fā)環(huán)境如表1所示:
5.2 系統(tǒng)主要功能實(shí)現(xiàn)
5.2.1 MOOC平臺(tái)后臺(tái)管理
在平臺(tái)系統(tǒng)中注冊(cè)后,輸入正確的用戶名和密碼登錄后,如果屬于教師權(quán)限用戶,則跳轉(zhuǎn)到MOOC平臺(tái)的后臺(tái)管理界面,如圖2所示。在該界面中,教師可以創(chuàng)建自己的MOOC課程、編輯課程欄目、進(jìn)行備課、上傳各種教學(xué)資料、建立輸入習(xí)題庫、建立試卷庫、進(jìn)行教學(xué)效果分析等操作,詳細(xì)編程代碼因篇幅所限,在此省略。
5.2.2 課程欄目設(shè)置
教師在系統(tǒng)管理后臺(tái)中創(chuàng)建一門課程之后,可以對(duì)課程欄目進(jìn)行設(shè)置和修改,界面如圖3所示。在確定好課程的框架結(jié)構(gòu)之后,系統(tǒng)通過程序代碼、采用參數(shù)法生成技術(shù),結(jié)合平臺(tái)中已內(nèi)置的網(wǎng)站模板,將會(huì)自動(dòng)生成MOOC課程網(wǎng)站。
5.2.3 課程欄目內(nèi)容設(shè)置
當(dāng)課程欄目設(shè)置好之后,教師就可以對(duì)各個(gè)欄目的詳細(xì)內(nèi)容進(jìn)行設(shè)置,該MOOC平臺(tái)主要是通過基于瀏覽器、功能強(qiáng)大、所見即所得的在線HTML編輯器eWebEditor插件來完成各欄目的文字輸入,動(dòng)畫、視頻等教學(xué)資料的上傳與編輯。圖4所示界面就是通過eWebEditor插件對(duì)MOOC課程課件中的第1講教學(xué)視頻進(jìn)行編輯和上傳,其他欄目內(nèi)容的設(shè)置操作過程基本與此類似,不再贅述。
6 系統(tǒng)測(cè)試
系統(tǒng)測(cè)試是指在規(guī)定的條件下對(duì)設(shè)計(jì)開發(fā)的軟件系統(tǒng)在真實(shí)環(huán)境下進(jìn)行操作,對(duì)其是否能滿足系統(tǒng)設(shè)計(jì)要求而進(jìn)行評(píng)估的過程。為了保證系統(tǒng)能符合用戶的功能需求和性能需求,通常需要進(jìn)行多方面的測(cè)試,測(cè)試方法主要包括黑盒測(cè)試和白盒測(cè)試、功能測(cè)試和非功能測(cè)試。開發(fā)團(tuán)隊(duì)在測(cè)試過程中使用的測(cè)試工具主要包括Apache Jmeter和badboy,圖5為該MOOC平臺(tái)在進(jìn)行功能測(cè)試時(shí)的某個(gè)測(cè)試界面,經(jīng)過團(tuán)隊(duì)的多次全面測(cè)試,發(fā)現(xiàn)了一些小BUG并進(jìn)行了修正,最終的測(cè)試結(jié)果證明該系統(tǒng)的功能和性能達(dá)到了用戶的要求。
7 結(jié)束語
文章中提出了一種MOOC管理平臺(tái)的設(shè)計(jì)方案,并選擇了合適的開發(fā)工具進(jìn)行了編程實(shí)現(xiàn),最后將該平臺(tái)上線在學(xué)校試用了一個(gè)學(xué)期,通過師生的反饋信息證明,在該MOOC管理平臺(tái)中,教師能輕松地創(chuàng)建和管理自己的課程資源,操作簡單方便,功能實(shí)用。當(dāng)然,該平臺(tái)系統(tǒng)還有一些需要改進(jìn)的地方,比如后期可以通過負(fù)載均衡技術(shù)對(duì)視頻服務(wù)器進(jìn)行優(yōu)化,通過對(duì)SQL 語句優(yōu)化提高平臺(tái)響應(yīng)速度等,以此提高平臺(tái)性能和用戶體驗(yàn)。
參考文獻(xiàn):
[1] 胡南湘. 基于改進(jìn)WebML建模的網(wǎng)站生成系統(tǒng)研究[D]. 長沙: 湖南大學(xué), 2006.
[2] 黃首昌. 面向成人教育的輕量級(jí)MOOC平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)[D]. 長沙: 湖南大學(xué), 2018.
[3] 李霞. 基于MOOC理念的在線學(xué)習(xí)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D]. 北京: 北京工業(yè)大學(xué), 2016.
[4] 白浩, 李新成. 基于MOOC的教師教育網(wǎng)絡(luò)課程平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 中國教育信息化, 2013(21):73-77.
[5] 陳慶章, 張鍵. 網(wǎng)上課程自動(dòng)生成系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 中國遠(yuǎn)程教育, 2000(11):45-48.
[6] 劉敏, 許伍霞, 任湘. 中英文MOOC平臺(tái)的對(duì)比研究[J]. 新世紀(jì)圖書館, 2017(2):43-48.
[通聯(lián)編輯:謝媛媛]