王寶龍
(天津輕工職業(yè)技術(shù)學(xué)院 天津市 300350)
現(xiàn)階段,由于在傳統(tǒng)教學(xué)模式當(dāng)中,教師的教學(xué)平臺具有有限的受眾范圍,資源利用效率明顯不夠,不能夠開展更加便捷且高效的資源共享、開發(fā)成本不斷提高、運維效率大打折扣等問題,針對以云計算為基礎(chǔ)的在線教育系統(tǒng)研究越來越豐富。在以下內(nèi)容中,所研究設(shè)計實現(xiàn)的平臺系統(tǒng)結(jié)合教學(xué)實踐流程,以系統(tǒng)用戶、主要用例兩個角度出發(fā),著重分析在線教育系統(tǒng)平臺設(shè)計的具體需求,并整理出了更加詳細(xì)的基于云計算在線教育平臺系統(tǒng)當(dāng)中的技術(shù)架構(gòu)、系統(tǒng)設(shè)計目標(biāo)、邏輯架構(gòu)以及功能架構(gòu)等。
在運行以往的在線教育教學(xué)系統(tǒng)過程中,絕大部分系統(tǒng)開發(fā)期間都無法脫離自主開發(fā)與企業(yè)委托這兩種方式。還有少部分會選擇直接購買成品系統(tǒng)。但是不論何種工作方式,都存在許多優(yōu)點,比如:
(1)具有較高的資金成本。包括構(gòu)建軟件環(huán)境與硬件環(huán)境,以及系統(tǒng)后期維護、保養(yǎng)、管理,都要求用戶投入較多成本。
(2)系統(tǒng)后期維護困難,系統(tǒng)運行的穩(wěn)定性、需求的不斷變化,這都都需要用戶耗費較多資金和精力來開展維護與管理。
(3)擴展性有待提升。因為現(xiàn)階段的教育體制正隨著我國經(jīng)濟發(fā)展而不斷轉(zhuǎn)型,用戶在應(yīng)用網(wǎng)絡(luò)教育平臺過程中,也有了越來越多的功能需求,所以現(xiàn)有系統(tǒng)必須要不斷完善并優(yōu)化自身功能,確保能夠做到與時俱進(jìn),滿足用戶需求。
(4)功能不健全。大多數(shù)在線教育系統(tǒng)都不能夠根據(jù)教學(xué)流程對教學(xué)任務(wù)進(jìn)行合理化設(shè)計,而是往往只可以提供有關(guān)服務(wù)的簡易化功能,不能夠獲取更多受眾的信賴。而本研究中的系統(tǒng)則與傳統(tǒng)系統(tǒng)大有不同,在本系統(tǒng)設(shè)計過程中,融入了“軟件、服務(wù)相同步”這種設(shè)計理念,以云計算以及大數(shù)據(jù)一類先進(jìn)技術(shù)為基礎(chǔ),充分展現(xiàn)出云計算的重要優(yōu)勢,對以往系統(tǒng)中存在的缺陷進(jìn)行有效優(yōu)化,從而為更多用戶提供更加充足的教育服務(wù)。為此,本系統(tǒng)在設(shè)計開發(fā)過程中制定了多個目標(biāo),包括投資成本較低、靈活擴展、維護簡單、功能齊全、服務(wù)可配置。如圖1所示。
圖1:系統(tǒng)設(shè)計目標(biāo)
圖2:系統(tǒng)功能
(1)用戶管理。本系統(tǒng)當(dāng)中的用戶主要包括教師、學(xué)生以及管理人員三種。用戶管理這一模塊能夠確保用戶合法的訪問與操作該系統(tǒng)。主要功能包括用戶登錄、權(quán)限分配以及用戶注銷。
(2)教學(xué)資源管理模塊。這一模塊結(jié)合系統(tǒng)用戶角色不同時出現(xiàn)的不同功能需求來設(shè)計。該模塊還能夠作為一個單獨小系統(tǒng)來設(shè)計。該模塊的主要功能包括教學(xué)資源上傳、教學(xué)資源發(fā)布、資源信息增刪與修改、文件檢索、文件下載等。
(3)學(xué)習(xí)任務(wù)。在線教育過程中,主要的學(xué)習(xí)任務(wù)都是借助于測試或作業(yè)的形式實現(xiàn),既有助于促進(jìn)學(xué)生們的學(xué)習(xí)與成長,也有助于強化他們對知識的理解與掌握,更有利于教師掌握每一個學(xué)生的學(xué)習(xí)情況。結(jié)合用戶角色以及具體的功能來提高需求標(biāo)準(zhǔn)。對大學(xué)生來說,在線教育期間主要包括信息瀏覽、作業(yè)提交、在線作答這些任務(wù),以及查看評語任務(wù)等。就教師而言,學(xué)習(xí)任務(wù)則主要包括作業(yè)構(gòu)建、任務(wù)發(fā)布、任務(wù)上傳、在線批改以及答題卡設(shè)置等等。
(4)互動交流模塊?;咏涣饕约敖獯鹨苫蠖茧x不開論壇這個版塊。主要功能如下:發(fā)帖、抽檢、回復(fù)以及查詢等?;咏涣鬟@一模塊當(dāng)中的功能可以與大學(xué)生心理訴求更加契合,從而有效激發(fā)他們的興趣,提高他們的學(xué)習(xí)效率。
本系統(tǒng)選擇SaaS模式。應(yīng)用本身存放于云端當(dāng)中,致使數(shù)據(jù)層通常也會出現(xiàn)公開化的特征,帶來較大的數(shù)據(jù)安全隱患。同時為進(jìn)一步提高資源共享水平,不同租戶之間存在的數(shù)據(jù)同樣需要得到共享。目前常見多租戶數(shù)據(jù)主要隔離方案有三種。
(1)獨立的數(shù)據(jù)庫。在該模式當(dāng)中,大部分租戶都帶有一個單獨的數(shù)據(jù)庫實例,也就是每一個租戶都能夠作為單獨的數(shù)據(jù)庫系統(tǒng)而存在。主要的優(yōu)勢就是能夠具有更強大的分離程度,租戶們的數(shù)據(jù)相互獨立,具有更好的安全性,能夠有效避免發(fā)生數(shù)據(jù)篡改等問題,同時也能夠更好的擴張與實現(xiàn),可以滿足不同用戶的個性功能需求[1]。缺點則是不具備較高的共享效率、租戶數(shù)量相對較少,而一旦租戶數(shù)量相較于以往變多,則數(shù)據(jù)庫也會隨之?dāng)?shù)量增加,因此會增加數(shù)據(jù)庫成本。
擬定設(shè)計方案的時候還要顧慮到建筑的美觀性以及經(jīng)濟性,同時也需要考慮到建造過程中的可操作性,綜合各個方面選出最佳的方案,制定金額的限制,通過各種手段來達(dá)到詳細(xì)的分析設(shè)計細(xì)節(jié)的目的。再進(jìn)行詳細(xì)的測量后,選擇最佳的方案,并且確認(rèn)所選方案的可用性,一旦選擇了方案,就應(yīng)該謹(jǐn)慎的執(zhí)行,不能隨便的更換方案,為了避免產(chǎn)生錯誤,應(yīng)該全程檢查并且跟蹤建筑工程的進(jìn)行,隨時發(fā)現(xiàn)問題解決問題,將所需要的成本降到最低。擬定最佳的方案,合理的調(diào)配金額,對工作進(jìn)行細(xì)致的劃分。
(2)共享數(shù)據(jù)庫以及相對獨立的一個Schema。這種模式下,各個租戶能夠相互關(guān)聯(lián)與協(xié)作,也就是大家都擁有一個相同的數(shù)據(jù)庫系統(tǒng),當(dāng)租戶不同,則數(shù)據(jù)表也明顯不同。以該角度來看,租戶絕大多數(shù)業(yè)務(wù)數(shù)據(jù)都可以有效存儲到自己的數(shù)據(jù)表當(dāng)中當(dāng)中存放,主要的優(yōu)勢就是每一個租戶之間的數(shù)據(jù)邏輯是不可見的,相較于上一種模式,這種模式具有更多的與租戶支持量,有效減少了數(shù)據(jù)庫運行成本。缺陷則對于數(shù)據(jù)備份與恢復(fù)十分不利,因為有限的數(shù)據(jù)數(shù)量,導(dǎo)致租戶數(shù)量也急劇減少。
(3)共享數(shù)據(jù)庫、共享數(shù)據(jù)表與共享Schema。在這種模式當(dāng)中,大部分租戶數(shù)據(jù)都能夠?qū)崿F(xiàn)高度的共享,也就是說所有租住的數(shù)據(jù)都能夠存儲到一個數(shù)據(jù)表當(dāng)中。主要的優(yōu)勢就是能夠促進(jìn)提高租戶數(shù)據(jù)共享水平,從而優(yōu)化資源利用效果,減少成本。主要缺陷則是不具備較強的安全性,從租戶定制的數(shù)據(jù)來看,個性化特征明顯,會導(dǎo)致編程更加復(fù)雜。
數(shù)據(jù)訪問這一層可以提供業(yè)務(wù)層所需數(shù)據(jù),主要能夠?qū)崿F(xiàn)對連接各個數(shù)據(jù)庫的職責(zé),業(yè)務(wù)層當(dāng)中的設(shè)計則更多為實體對象都需要做好持久化的數(shù)據(jù)存儲,一個對象都會有一個對應(yīng)的表與記錄在數(shù)據(jù)庫當(dāng)中。通常情況下,數(shù)據(jù)訪問與業(yè)務(wù)這兩層當(dāng)中的實體都屬于對應(yīng)存在,業(yè)務(wù)對象都比較復(fù)雜,同時不同的對象可以與多張表相對應(yīng),此時就應(yīng)當(dāng)整合在一個對象中,負(fù)責(zé)映射數(shù)據(jù)庫與業(yè)務(wù)對象存在的聯(lián)系。本系統(tǒng)設(shè)計的主要數(shù)據(jù)表包括:
(1)用戶管理模塊數(shù)據(jù)。在該表當(dāng)中,詳細(xì)記錄了用戶們的基本信息,主要功能為用戶注冊與用戶登錄;
(2)教學(xué)資源數(shù)據(jù)表。在這個表格當(dāng)中,主要記錄著各種基礎(chǔ)性的教學(xué)資源數(shù)據(jù),可以為廣大用戶提供檢索、瀏覽、下載等功能;
(3)在線學(xué)習(xí)任務(wù)表。在線學(xué)習(xí)過程中的任務(wù)通常為在線作業(yè)和在線測試這兩部分。在線學(xué)習(xí)過程中,相關(guān)任務(wù)信息會直接存儲到信息表中,并交由教師直接上傳至系統(tǒng)當(dāng)中后進(jìn)行在線批改,其中也包括任務(wù)信息、題目信息以及學(xué)生個人信息等??梢杂行ПU蠈W(xué)生們的在線測試、在線作業(yè)以及教師的在線上傳、在線批改等功能實現(xiàn);
(4)互動討論模塊信息表。這一該模塊中同樣離不開論壇的幫助,互動討論主要負(fù)責(zé)對用戶發(fā)布的各種信息進(jìn)行保存。主要功能就是評論、恢復(fù)以及跟帖等等,從而實現(xiàn)更好的交流與探討目的[2]。
2.1.1 開發(fā)環(huán)境搭建
本系統(tǒng)主要采取Java開發(fā)語言,應(yīng)用MyEclipse這種開發(fā)工具以及關(guān)鍵插件功能,通過Java SDK版本完成開發(fā)系統(tǒng)功能的目標(biāo)。搭建開發(fā)環(huán)境包括以下步驟:
(1)Java軟件開發(fā)與安裝。將jdk1.7安裝到oracle管網(wǎng)中。安裝結(jié)束后,將Java SDK這一目錄配置到系統(tǒng)環(huán)境當(dāng)中,最終借助于將java-version指令輸入到命令提示符當(dāng)中,即可驗證是否成功安裝了Java SDK;
(2)在Apache Tomcat管網(wǎng)當(dāng)中下載32位壓縮包,而后解壓至本地的目錄中;
(3)下載安裝MyEclipse2014。完成后,利用菜單欄當(dāng)中的指令將安裝完成的java SDK當(dāng)做默認(rèn)運行環(huán)境來運行Java。而后借助于其他指令流程,在系統(tǒng)當(dāng)中配置tomcat7.0;
(4)安裝谷歌插件。利用該插件可以更有助于實現(xiàn)測試、部署與生成所有工作應(yīng)用。借助于在谷歌插件當(dāng)中輸入網(wǎng)站安裝正版軟件。由此,便能夠完成完整的系統(tǒng)所需開發(fā)環(huán)境搭建工作[3]。
2.1.2 工程目錄結(jié)構(gòu)
在Google App Engine當(dāng)中,Java Web應(yīng)用程序當(dāng)中的文件,主要包括已經(jīng)完成編譯的Java類、配置文件以及靜態(tài)文件這幾種,屬于以一種Web為主要應(yīng)用程序檔案作為標(biāo)準(zhǔn)目錄構(gòu)建組織而來的工程目錄結(jié)構(gòu)。在本文中,以GAE平臺為基礎(chǔ),采取標(biāo)準(zhǔn)的JAVA網(wǎng)絡(luò)技術(shù),主要包括servle與JSP,設(shè)計實現(xiàn)了一個多種能的在線教育平臺系統(tǒng)。采取MyEclipse創(chuàng)建得來的App Engine Java工程目錄結(jié)構(gòu)相對來說較為復(fù)雜。其中名為src/的子目錄當(dāng)中包含著Java源代碼數(shù)據(jù),war/子目錄包含系統(tǒng)頁面JSP文件和系統(tǒng)配置文件。
2.1.3 用戶管理模塊
用戶在運行該系統(tǒng)時,可以將信息直接輸入到登錄頁面,即輸入自己的用戶名與設(shè)置的用戶密碼。系統(tǒng)結(jié)合不同的信息符號可以直接登錄到頁面當(dāng)中,再由用戶根據(jù)自己的用戶名與密碼直接向系統(tǒng)發(fā)送請求。系統(tǒng)通過對配置文件的查詢,能夠把用戶的登錄請求直接發(fā)送至LoginAction中進(jìn)行處理。LohinAction首先能夠獲取到的用戶信息主要為用戶名、密碼以及驗證碼等,通過userCheck()方法能夠直接獲取緩存,若沒有緩存,則可以通過對RegisterSrevie中的login()直接調(diào)用來查詢所需的用戶信息,而后根據(jù)查詢所得的具體用戶信息能夠返回到對應(yīng)的頁面當(dāng)中。用戶在成功登陸到個人中心當(dāng)中之后,會由Action user_saveInfo負(fù)責(zé)對用戶已經(jīng)完成修改表單當(dāng)中的信息進(jìn)行接收,利用對模型層中的saveInfo()方法直接調(diào)用對用戶信息進(jìn)行保存[4]。用戶修改個人信息流程圖如圖3所示。
圖3:用戶修改個人信息流程圖
2.1.4 學(xué)習(xí)任務(wù)模塊
在這一模塊當(dāng)中,結(jié)合不同用戶角色,發(fā)揮出的模塊功能也各不相同。教師用戶可以通過系統(tǒng)直接進(jìn)行作業(yè)上傳與批改;同時學(xué)生用戶也可以直接實現(xiàn)在線作與作業(yè)提交,還能夠直接查看自己的分?jǐn)?shù),這些都屬于模塊中的有效功能。在教師進(jìn)入到作業(yè)這一模塊當(dāng)中之后,系統(tǒng)借助于調(diào)取教師設(shè)置的各種類型作業(yè),同時直接在列表當(dāng)中展示。通過點擊其中的鏈接實現(xiàn)不同操作需求。教師發(fā)布作業(yè)主要有以下流程:借助于控件完成作業(yè)上傳、處理請求,保存作業(yè)信息、處理下一步請求,保存答題卡信息、處理保存發(fā)布記錄請求,保存發(fā)布記錄、處理發(fā)布請求,查詢出班級或小組信息、處理下一步請求,保存題目屬性信息[5]。針對學(xué)生們已經(jīng)完成并提交的測試或者作業(yè),教師可以直接進(jìn)行批改操作,結(jié)合學(xué)生們的作業(yè)與答案給出具體分?jǐn)?shù)。主要包括如下流程:發(fā)出批改請求、處理請求、查詢學(xué)生作答信息與正確答案、批改完成,提交分?jǐn)?shù)、接受處理請求,保存教師批閱信息。最后,還有學(xué)生在線任務(wù)的實現(xiàn),主要包括以下流程:用戶登錄、進(jìn)入學(xué)習(xí)任務(wù)、查看任務(wù)內(nèi)容、是否完成、是否在線作答、提交、查看分?jǐn)?shù)。
2.1.5 教學(xué)資源模塊
這一模塊能夠得以實現(xiàn)結(jié)合用戶角色能夠劃分為兩大部分,分為是學(xué)生搜索與下載教學(xué)資源、教師發(fā)布各類教學(xué)資源、其中教師發(fā)布各類教學(xué)資源主要包括如下流程:在控件中上傳教學(xué)資源、處理文件信息、處理發(fā)布請求。如圖4所示。而學(xué)生們搜索與下載教學(xué)資源則主要包括如下流程:初始化查詢條件、查詢滿足查詢條件的教學(xué)資源、是否有結(jié)果、有則將結(jié)果以列表分頁形式返回,頁面顯示、結(jié)合資源路徑處理下載請求,如果沒有則直接結(jié)束。通過教學(xué)資源模塊當(dāng)中這兩項重要功能的實現(xiàn),可以讓該在線教育平臺系統(tǒng)充分發(fā)揮出教育過程中的自主性,提高教師的教學(xué)效率、緩解教師的教學(xué)壓力,同時也能夠提高學(xué)生們學(xué)習(xí)的主動性與學(xué)習(xí)能力[6]。
圖4:教師資源發(fā)布流程圖
2.1.6 互動討論模塊
互動討論模塊大多包括發(fā)表帖子、瀏覽其中內(nèi)容以及恢復(fù)帖子評論這些功能。用戶發(fā)表帖子的流程主要如下:初始化添加主題頁面、用戶借助于頁面填寫帖子內(nèi)容,設(shè)置帖子信息、接收參數(shù)并處理保存帖子請求、保存帖子內(nèi)容[7]。具體位:用戶直接發(fā)出新建的帖子申請后,由系統(tǒng)影響處理請求,對發(fā)帖頁面進(jìn)行初始化處理。用戶借助于新建主題頁面,將帖子的主題內(nèi)容填寫到當(dāng)中,同時設(shè)置好帖子里的其他重要信息,將保存請求直接提交到負(fù)責(zé)接收用戶提交的帖子信息當(dāng)中,同時借助于調(diào)用模型層當(dāng)中的savaLpost()方法在數(shù)據(jù)庫當(dāng)中保存詳細(xì)的帖子信息。用戶檢索與瀏覽帖子當(dāng)中的內(nèi)容實現(xiàn)的流程如下:初始化查詢條件、查詢滿足查詢條件的主題帖子、是否有結(jié)果,如果有的將結(jié)果按照列表分頁形式返回到頁面當(dāng)中顯示、結(jié)合帖子id查詢帖子當(dāng)中的詳細(xì)內(nèi)容,如果沒有則直接結(jié)束。
本次系統(tǒng)測試針對主要的功能模塊開展測試。比如:
(1)用戶登錄。在登錄頁面直接輸入用戶名和密碼,然后點擊登錄。測試發(fā)現(xiàn)可以直接進(jìn)入到個人中心當(dāng)中,實現(xiàn)了設(shè)計預(yù)期;
(2)信息修改。首先找到個人信息這個頁面,而后將個人信息填寫完整并保存。測試發(fā)現(xiàn)用戶的個人信息在修改后能夠完整保存,實現(xiàn)了設(shè)計預(yù)期;
(3)在線作答。首先由學(xué)生登錄到系統(tǒng)當(dāng)中,點擊在線作業(yè),而后選擇自己未完成部分作業(yè)部分進(jìn)行作答,最終提交作業(yè)。測試實現(xiàn)了學(xué)生借助于成功完成作業(yè)作答并提交,教師受到學(xué)生提交的作業(yè)。滿足了預(yù)期效果[8]。等等。
綜上所述,在上述內(nèi)容中,設(shè)計實現(xiàn)了一個基于云計算在線教育平臺系統(tǒng),通過合理的設(shè)計與科學(xué)的測試試驗,最終實現(xiàn)了多種功能,滿足了預(yù)期設(shè)計效果與需求。