羅翌陳,張文輝,李靈巧
(桂林電子科技大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,廣西 桂林 541004)
網(wǎng)絡(luò)教育軟件的設(shè)計(jì)通常利用當(dāng)前主流的網(wǎng)絡(luò)服務(wù),以應(yīng)用技術(shù)為支撐,結(jié)合多媒體資源和網(wǎng)絡(luò)教育資源的豐富性、先進(jìn)性和等認(rèn)知特性,在一定的信息化教學(xué)設(shè)計(jì)理念下進(jìn)行完整而精確的集成的方法和過程。為此而生的計(jì)算機(jī)描述與表示為網(wǎng)絡(luò)教育軟件的建模。
目前網(wǎng)絡(luò)教育軟件建模與設(shè)計(jì)的缺陷主要在于網(wǎng)絡(luò)教育資源缺乏統(tǒng)一的格式標(biāo)準(zhǔn),使得網(wǎng)絡(luò)教育資源和應(yīng)用的集成存在重復(fù)和低效率,不能發(fā)揮其優(yōu)勢(shì)。通常情況下,網(wǎng)絡(luò)教育軟件的創(chuàng)作采用.NET、JSP、PHP等網(wǎng)絡(luò)開發(fā)軟件作為開發(fā)工具,并用Photoshop、Director、Premier等軟件進(jìn)行多媒體素材的組織與編輯,最后以多媒體網(wǎng)頁的形式發(fā)布,而且通過部署和配置形成網(wǎng)絡(luò)教育網(wǎng)站。這類網(wǎng)絡(luò)教育軟件的優(yōu)點(diǎn)主要是多媒體表現(xiàn)力強(qiáng),人機(jī)界面成熟,設(shè)計(jì)方便,但存在較為典型缺陷。具體如下:
由于網(wǎng)絡(luò)教育應(yīng)用與服務(wù)模塊通常用專用的工具開發(fā),數(shù)據(jù)封閉,有防火墻和用戶權(quán)限等安全措施,無法靈活地對(duì)數(shù)據(jù)資源進(jìn)行共享,網(wǎng)絡(luò)教育信息的價(jià)值將不能體現(xiàn)出來。
服務(wù)與應(yīng)用的設(shè)計(jì)關(guān)系到網(wǎng)絡(luò)前后臺(tái)的軟件連接,通過采用前、后臺(tái)對(duì)象與中間件進(jìn)行關(guān)聯(lián),服務(wù)與應(yīng)用則以代碼方式存在,這些都是無法直接抽取出來并進(jìn)行移植的。
網(wǎng)絡(luò)教育應(yīng)用與服務(wù)由服務(wù)器提供,類似于服務(wù)器上開發(fā)的應(yīng)用程序,而客戶端則無需關(guān)心開發(fā)過程。如此一來,普通的客戶將難以修改或維護(hù)。
服務(wù)器平臺(tái)獨(dú)有的應(yīng)用接口和環(huán)境將使其程序難以跨平臺(tái)移植。通常服務(wù)器上的應(yīng)用程序和服務(wù)只能用適于該服務(wù)器平臺(tái)的工具開發(fā),普遍具有較強(qiáng)的專業(yè)性。
此外,網(wǎng)絡(luò)教育應(yīng)用軟件共享與集成方面也存在較多問題:其一,在網(wǎng)絡(luò)教育應(yīng)用與服務(wù)不復(fù)雜時(shí),可移植部分代碼以實(shí)現(xiàn)應(yīng)用服務(wù)共享,但由于沒有統(tǒng)一的標(biāo)準(zhǔn),只能手工抽取和移植,而且在服務(wù)應(yīng)用較為復(fù)雜時(shí)無法移植;其二,軟件和資源難以實(shí)現(xiàn)網(wǎng)絡(luò)管理,海量的服務(wù)和多媒體資源的管理將是個(gè)重要的問題;其三,集成的程度和規(guī)模很有限,多平臺(tái)下的應(yīng)用服務(wù)在沒有一定的統(tǒng)一標(biāo)準(zhǔn)下將難以深度集成,如.NET與J2EE的應(yīng)用集成將很困難。
教育服務(wù)軟件和教育應(yīng)用軟件與校園網(wǎng)的整合促使現(xiàn)代網(wǎng)絡(luò)教育教學(xué)向協(xié)作化、分布化和探究式的方向發(fā)展,這就需要對(duì)網(wǎng)絡(luò)教育軟件進(jìn)行更深化的變革和演化。目前校園網(wǎng)已經(jīng)成為相當(dāng)成熟的開發(fā)與應(yīng)用平臺(tái),現(xiàn)代網(wǎng)絡(luò)教育與校園網(wǎng)的重要發(fā)展目標(biāo)之一就是構(gòu)建開放式教育網(wǎng)絡(luò),這就必須保證教育應(yīng)用軟件和服務(wù)軟件具有開發(fā)統(tǒng)一性和部署的智能化。具體來說,網(wǎng)絡(luò)教育與服務(wù)的軟件必須具備以下特點(diǎn):
將教育應(yīng)用軟件與服務(wù)軟件分布于不同地點(diǎn)、不同社區(qū)的服務(wù)器,有利于用戶快速訪問服務(wù)和提高應(yīng)用服務(wù)的效率,同時(shí)通過負(fù)載的均衡使整體效率得以提高。
在大量的網(wǎng)絡(luò)教育應(yīng)用服務(wù)中快速找到所需要的應(yīng)用或服務(wù),需要一個(gè)完整統(tǒng)一的服務(wù)發(fā)布、部署和應(yīng)用的標(biāo)準(zhǔn)框架,其中為了有利于用戶的發(fā)現(xiàn)和應(yīng)用,教育應(yīng)用軟件與服務(wù)軟件的發(fā)布、部署的智能化是關(guān)鍵。
網(wǎng)絡(luò)應(yīng)用軟件與服務(wù)軟件基本采用B/S或C/S模式開發(fā),處理用戶請(qǐng)求并完成任務(wù)的部分都在服務(wù)器端,但不同的服務(wù)器大多提供不同的功能和服務(wù),互不重復(fù),因此必須保證這些應(yīng)用軟件和服務(wù)通過某種機(jī)制為網(wǎng)絡(luò)用戶所調(diào)用,以實(shí)現(xiàn)功能的共享與重用。
在網(wǎng)絡(luò)教育逐步成熟的今天,海量的網(wǎng)絡(luò)教育應(yīng)用與服務(wù)仍然缺乏統(tǒng)一的標(biāo)準(zhǔn)和共享機(jī)制,造成大量網(wǎng)絡(luò)教育網(wǎng)站的重復(fù)建設(shè)和浪費(fèi),不少系統(tǒng)無法共享和交換應(yīng)用功能和教學(xué)信息。有效共享和集成基于Web的遠(yuǎn)程教學(xué)系統(tǒng)資源是關(guān)鍵問題。教學(xué)軟件和教學(xué)服務(wù)設(shè)施容易形成信息倉庫式的重復(fù)、冗余和浪費(fèi),并在教學(xué)服務(wù)搜索及應(yīng)用上造成迷航。鑒于此,基本的Web Service的網(wǎng)絡(luò)教育應(yīng)用能實(shí)現(xiàn)與終端平臺(tái)、服務(wù)器端平臺(tái)和應(yīng)用設(shè)計(jì)工具無關(guān)的標(biāo)準(zhǔn)化教育軟件模式,通用瀏覽器即可獲得教育應(yīng)用與服務(wù)。Web Service具有完整規(guī)范的協(xié)議框架,完全可以實(shí)現(xiàn)標(biāo)準(zhǔn)化教育應(yīng)用軟件的目標(biāo)。
Web Service是一個(gè)公共的網(wǎng)際間對(duì)象互操作的標(biāo)準(zhǔn)協(xié)議。它是分布式的、基于網(wǎng)絡(luò)的和接口標(biāo)準(zhǔn)化的模塊化組件,這些組件遵循具體的技術(shù)規(guī)范,使用標(biāo)準(zhǔn)的互聯(lián)網(wǎng)協(xié)議,通過簡(jiǎn)潔的互操作,實(shí)現(xiàn)廣泛的基于互聯(lián)網(wǎng)的、企業(yè)內(nèi)部網(wǎng)的功能訪問。與傳統(tǒng)的HTML網(wǎng)頁或者JSP、ASP網(wǎng)頁相比,具有明顯的優(yōu)勢(shì):
基于Web Service的應(yīng)用框架是按照標(biāo)準(zhǔn)協(xié)議SOAP、WSDL、UDDI等多種協(xié)議構(gòu)建的開放式分布系統(tǒng)應(yīng)用,它的擴(kuò)展性具有先天的優(yōu)勢(shì),其他系統(tǒng)應(yīng)用很難與之比較。這些協(xié)議不針對(duì)任何一種開發(fā)語言,可以用C#實(shí)現(xiàn),也可以用Java實(shí)現(xiàn),而且它們提供的Web Service模塊可以相互調(diào)用,其他語言也可以在遵循上述協(xié)議的情況下訪問和調(diào)用。Web Service不針對(duì)系統(tǒng)平臺(tái)開發(fā),可以根據(jù)實(shí)際情況配置資源和服務(wù),以便調(diào)用。如小型移動(dòng)平臺(tái)上調(diào)用Web Service可獲得小而精的數(shù)據(jù)返回,大型終端上則可以獲得全面且豐富的數(shù)據(jù)流服務(wù),這些都不必考慮使用平臺(tái)的異構(gòu)性,服務(wù)的部署和發(fā)布也不需要停止其他服務(wù)的使用,各個(gè)Web Service模塊之間的松耦合使之?dāng)U展和消減靈活自如。
松散耦合性是Web Service的核心思想之一。Web Service的發(fā)布、發(fā)現(xiàn)、調(diào)用是完全基于規(guī)范化的XML文檔,某一個(gè)Web Service細(xì)節(jié)的改變和調(diào)整,不會(huì)對(duì)調(diào)用者發(fā)生任何影響。為了實(shí)現(xiàn)Web Service組件及其功能的機(jī)器可識(shí)別,Web Service使用標(biāo)準(zhǔn)化的描述語言WSDL描述組件的交互細(xì)節(jié),并通過規(guī)范的發(fā)布機(jī)制公開。經(jīng)過多年努力,標(biāo)準(zhǔn)的Web Service協(xié)議框架實(shí)現(xiàn)了服務(wù)提供者、服務(wù)注冊(cè)中心和服務(wù)調(diào)用者的相互獨(dú)立。
Web Service實(shí)現(xiàn)了跨平臺(tái)的雙向交流,在不同網(wǎng)絡(luò)狀態(tài)下均可獲得暢通的信息獲取與反饋,使受教育者與知識(shí)傳播者之間的區(qū)別能進(jìn)一步演化,在這種情況下,學(xué)習(xí)者甚至可以參與到教學(xué)信息的構(gòu)建過程中來。
Web Service通過多年的設(shè)計(jì)與應(yīng)用逐漸形成了完整的協(xié)議框架,在理論和功能上都是完備的。如服務(wù)訪問與返回,業(yè)務(wù)邏輯的應(yīng)用與修改,事務(wù)處理的構(gòu)建與執(zhí)行,通用性與安全性的集成,QoS的設(shè)計(jì)及應(yīng)用等等,是Web Service作為一種功能完備系統(tǒng)設(shè)計(jì)的體現(xiàn)。
使用Web Service創(chuàng)建并集成網(wǎng)絡(luò)教育軟件的主要優(yōu)點(diǎn)有:
Web Service具有完整的應(yīng)用服務(wù)生命周期協(xié)議,可以根據(jù)統(tǒng)一的協(xié)議簇來實(shí)現(xiàn)網(wǎng)絡(luò)教育應(yīng)用和服務(wù)軟件的廣泛共享。不同終端和用戶只要獲得訪問許可,均可以在任意網(wǎng)絡(luò)終端訪問到服務(wù)。鑒于此,國(guó)際教育組織將學(xué)習(xí)支持整合化,特別是將學(xué)習(xí)者支持的思想和方法整合到高校的網(wǎng)絡(luò)課程、網(wǎng)絡(luò)教學(xué)中,強(qiáng)化和促進(jìn)各種層次的交互。從趨勢(shì)上看,Web Service將是構(gòu)建在線學(xué)習(xí)支持、在線知識(shí)社區(qū)、探究共同體和實(shí)踐共同體的框架,國(guó)際教育組織在該框架下注重教學(xué)過程、學(xué)習(xí)過程中各種影響因素的分析,分析學(xué)生的參與、學(xué)生與教師以及學(xué)生與學(xué)生之間的交互情況,通過Web Service使交互信息顯性化,并為分析學(xué)習(xí)者模型提供數(shù)據(jù)。這些研究和應(yīng)用具有很強(qiáng)的實(shí)用性,逐漸成為網(wǎng)絡(luò)教育研究中理解社會(huì)協(xié)商和意義建構(gòu)的重要的方法。
多媒體課件或小型網(wǎng)絡(luò)教育軟件的信息量小,形式各異,難以發(fā)展為大型軟件,而Web Service構(gòu)建在嚴(yán)整的分布式平臺(tái)上,有嚴(yán)格統(tǒng)一的接口標(biāo)準(zhǔn),允許系統(tǒng)實(shí)現(xiàn)真正意義上的分布式應(yīng)用。通過其制作的網(wǎng)絡(luò)教育軟件可部分、按階段放在互聯(lián)網(wǎng)上,學(xué)生或老師利用瀏覽器就可以查詢到所需要的教育信息,并可以通過瀏覽器上傳到服務(wù)器。Web Service的一系列標(biāo)準(zhǔn)完全開放且大部分已經(jīng)標(biāo)準(zhǔn)化,這些對(duì)網(wǎng)絡(luò)教育軟件的有效集成和優(yōu)化提供了強(qiáng)有力的平臺(tái)。
分布式的教學(xué)信息允許教學(xué)內(nèi)容以知識(shí)點(diǎn)為單位,實(shí)現(xiàn)教學(xué)內(nèi)容的分布式添加、修改和維護(hù),知識(shí)結(jié)構(gòu)的樹狀拓?fù)?、分層結(jié)構(gòu)和超鏈接結(jié)構(gòu)都易于形成和實(shí)現(xiàn),這是傳統(tǒng)教學(xué)組織所不能比擬的。
Web Service作為一種高效、方便的網(wǎng)絡(luò)開發(fā)工具,將給網(wǎng)絡(luò)教育的形式帶來變革。例如,Web Service的搜索功能直接以數(shù)據(jù)庫操作為依托,以數(shù)據(jù)庫指令直接執(zhí)行,使原有的基于HTML的復(fù)雜而且低效的搜索變得快捷、簡(jiǎn)單化,不需要對(duì)搜索功能創(chuàng)建特征庫和算法等復(fù)雜的設(shè)計(jì),讓智能搜索、模糊搜索和精確搜索變得簡(jiǎn)單和方便。
進(jìn)行智能搜索時(shí),首先由客戶端輸入需要搜索的關(guān)鍵詞,輸入的信息將提交給Web Service模塊,再由Web Service調(diào)用數(shù)據(jù)庫中的存儲(chǔ)過程,而在存儲(chǔ)過程中已經(jīng)設(shè)計(jì)好搜索項(xiàng)的智能篩選和排除,這樣一來,智能搜索基本變成數(shù)據(jù)庫的智能檢索功能和實(shí)現(xiàn)。目前的數(shù)據(jù)庫功能都很完善和成熟,通過Web Service以數(shù)據(jù)庫檢索為基礎(chǔ)的智能搜索將變得簡(jiǎn)單而實(shí)用。
網(wǎng)絡(luò)教育軟件必須首先能夠保持知識(shí)的傳授和獲取的流暢。Web Service的數(shù)據(jù)可直接來自于數(shù)據(jù)庫,而在數(shù)據(jù)庫中存放教學(xué)內(nèi)容便于組織和管理,返回到Web Service中的數(shù)據(jù)可由普通的ASP.NET網(wǎng)頁或其他網(wǎng)頁直接使用。在數(shù)據(jù)庫中使用表及其關(guān)聯(lián)實(shí)現(xiàn)教育信息的多樣化,由多種不同的媒體信息及其關(guān)聯(lián)表現(xiàn)出網(wǎng)絡(luò)教育信息的空間結(jié)構(gòu)、時(shí)間結(jié)構(gòu)和同步信息。Web Service完全可實(shí)現(xiàn)異地的集成和系統(tǒng)功能的松耦合,在這種情況下,可以實(shí)現(xiàn)快速的師生交互網(wǎng)絡(luò)學(xué)習(xí)環(huán)境。
多媒體的名稱和部分內(nèi)容存放于數(shù)據(jù)庫中,便于修改和添加。在播放多媒體信息時(shí),利用標(biāo)記語言和媒體控制語言實(shí)施播放和控制,如使用HTML、C#和SMIL的混合代碼程序。HTML用于靜態(tài)的媒體布局,C#用于動(dòng)態(tài)的媒體播放控制和交互,而SMIL用于媒體播放的同步。所有的媒體名稱及其關(guān)聯(lián)都來自于數(shù)據(jù)庫,通過Web Service訪問,有利于修改和集成。如圖片和聲音放于數(shù)據(jù)庫,由下列Web Service訪問,返回后由SMIL標(biāo)記實(shí)施同步。視頻和動(dòng)畫在僅在數(shù)據(jù)庫中保存名稱。為了保證多媒體數(shù)據(jù)服務(wù)的成功訪問以及為了支持QoS,采用支持QoS的Web Service方式和相關(guān)的協(xié)議,如下所示:
該程序主要使用服務(wù)器stub代理的request/response來檢測(cè)和估計(jì)服務(wù)的QoS,如果發(fā)現(xiàn)不能達(dá)到一定的指標(biāo),則進(jìn)行相應(yīng)服務(wù)配置的修改以達(dá)到服務(wù)質(zhì)量的穩(wěn)定。
當(dāng)達(dá)不到指標(biāo)數(shù)據(jù)時(shí),修改相應(yīng)的WebService配置:
修改后再進(jìn)行測(cè)試,直到達(dá)到目標(biāo)為止。
目前多媒體信息的表現(xiàn)多以腳本控制并且采用SMIL等多媒體同步語言進(jìn)行集成和控制。使用Web Service可以實(shí)現(xiàn)更好的分布式應(yīng)用和松散耦合的多媒體控制。比如,在某些環(huán)境下,流媒體的傳輸和播放需要時(shí)間戳的訪問和控制,使用Web Service更易于實(shí)現(xiàn)靈活的訪問和控制,不需要媒體的解耦和排他占用。
Web Service的信息組織完全可以實(shí)現(xiàn)真正意義的分布式。對(duì)知識(shí)點(diǎn)內(nèi)部,Web Service通過數(shù)據(jù)庫的簡(jiǎn)捷訪問即可保證知識(shí)點(diǎn)結(jié)構(gòu)的完整、嚴(yán)密和健壯性,而樹形結(jié)構(gòu)的知識(shí)點(diǎn)結(jié)構(gòu)和超鏈接形式的知識(shí)點(diǎn)結(jié)構(gòu)都以不同的Web Service模塊來實(shí)現(xiàn),既有松散的數(shù)據(jù)倉庫組織又有嚴(yán)密的關(guān)系數(shù)據(jù)庫組織。這樣生成的Web Service信息組織結(jié)構(gòu)更加完美。
該網(wǎng)絡(luò)教育軟件的知識(shí)點(diǎn)以XML文檔的形式存儲(chǔ)和傳輸,使用XML定義一套scheme集合。scheme文檔良好的通用性和規(guī)范性對(duì)網(wǎng)絡(luò)教育軟件的推廣具有較強(qiáng)的優(yōu)勢(shì)。知識(shí)點(diǎn)為單位的組織結(jié)構(gòu)在Web Service下的屬性定義如下:
·標(biāo)記(vid):表示原子知識(shí)點(diǎn)或復(fù)合知識(shí)點(diǎn),是知識(shí)點(diǎn)的唯一標(biāo)識(shí);
·主題(title):表示知識(shí)點(diǎn)的主體提要;
·標(biāo)題(subject);知識(shí)點(diǎn)的內(nèi)容最簡(jiǎn)化提要;
·關(guān)鍵字(keyword):用于知識(shí)點(diǎn)的檢索;
·內(nèi)容(content):知識(shí)點(diǎn)的主體內(nèi)容,包括圖片、動(dòng)畫、視頻、交互式插件、數(shù)據(jù)關(guān)聯(lián)以及文字;
·超鏈接(hyperlink):表示知識(shí)點(diǎn)關(guān)系的主要形式,如平行關(guān)系、從屬關(guān)系、包含關(guān)系等;
·案例(usercase):包括典型用例和演示用例;
·關(guān)聯(lián)課程(contextcourse):知識(shí)點(diǎn)學(xué)習(xí)的相關(guān)課程;
·檢驗(yàn)(test):包含知識(shí)點(diǎn)的考查試題,以考查學(xué)生掌握知識(shí)的程度,比如對(duì)基礎(chǔ)知識(shí)的掌握,對(duì)重點(diǎn)知識(shí)點(diǎn)的掌握,對(duì)難點(diǎn)的理解和掌握程度等;
·類型(type):基本分為:記憶性知識(shí)點(diǎn)、陳述性知識(shí)點(diǎn)、理解性知識(shí)點(diǎn)、應(yīng)用性知識(shí)點(diǎn)、綜合性知識(shí)點(diǎn);
·難點(diǎn)(difficulty):分為高、中、低三等;
·掌握深度(learningdeep):分為四層:記憶、理解、應(yīng)用、綜合;
·分類(classification):主要分三種:節(jié)點(diǎn)知識(shí)點(diǎn)、單元知識(shí)點(diǎn)、原子知識(shí)點(diǎn)。
根據(jù)網(wǎng)絡(luò)教育信息的結(jié)構(gòu)特點(diǎn)設(shè)計(jì)Web Service訪問的數(shù)據(jù)庫以及各個(gè)Web Service模塊的顆粒度和鏈接形式。使用數(shù)據(jù)庫集群實(shí)施數(shù)據(jù)庫的維護(hù)和運(yùn)行,方便了服務(wù)規(guī)模的擴(kuò)展和調(diào)整。為了用戶賬戶安全,會(huì)話對(duì)象和狀態(tài)置于數(shù)據(jù)庫中,不必每次訪問都提交用戶名和密碼。主要框圖如下圖所示:
圖 Web Service網(wǎng)絡(luò)教育軟件結(jié)構(gòu)
總之,Web Service為網(wǎng)絡(luò)教育軟件的建模與構(gòu)建提供了較為理想的應(yīng)用方案,具有統(tǒng)一的標(biāo)準(zhǔn)協(xié)議和統(tǒng)一的格式標(biāo)準(zhǔn),可實(shí)現(xiàn)盡可能的共享與學(xué)習(xí)的協(xié)同,極大地方便了維護(hù)與修改,克服了多媒體網(wǎng)絡(luò)的種種缺點(diǎn),創(chuàng)建了一種結(jié)構(gòu)智能化,定義、描述、構(gòu)建快速化的智能多媒體網(wǎng)絡(luò)教育軟件。