宋偉杰,霍智勇
(1.南京郵電大學 教育科學與技術學院,江蘇 南京 210046;2.南京郵電大學 傳媒與藝術學院,江蘇 南京 210046)
面向服務的 E-learning系統是在以Blackboard、Moodle、Sakai等為代表的第二代E-learning系統基礎上發展起來的新一代E-learning系統[1]。它的出現主要是為了克服以模塊化設計為主的第二代E-learning系統的缺陷。一方面,第二代E-learning系統并非完全意義上的學習者中心,與其對學習者的關注相比,它更多的關注學習管理;另一方面,這類系統資源和系統功能模塊的共享性、互操作性很弱。
面向服務的系統架構方法因其具有靈活、松耦合、支持異構平臺互操作等特點,近幾年越來越多的受到E-learning研究者的青睞[2]。E-learning研究者們紛紛研究面向服務的E-learning系統架構問題,以期實現資源和系統功能模塊間的互操作。然而,Web2.0及云計算的發展,為面向服務的E-learning系統架構提供了強大的技術支持。因此,在整合Web2.0與云計算的基礎上研究面向服務的E-learning系統架構對完善E-learning系統,實現有效的在線學習具有重要的理論與實踐意義。
Web2.0是相對于Web1.0的新型互聯網應用的統稱[3]。Web1.0到Web2.0的轉變,具體地說,從范式上,是從讀向寫、信息共創的改變;從基本結構上說,則是由網頁向發表或展示工具演變;從工具上,是由互聯網瀏覽器向各類瀏覽器、RSS閱讀器等內容發展;從運行機制上,則是自Client Server向Web Services的轉變[4]。Web2.0的核心理念是協作與共享,用戶自主產生內容、彼此分享、去中心化。 其核心技術包括 AJAX、JavaScript、XSLT/XML、XHTML、CSS、Document Object Model、XML-RPC、REST等。 這些技術實現了 Wiki、Blog、Flickr、Facebook、微博、IM、RSS等Web2.0應用,促進了訂閱、存取、推廣、內容編輯、信息共享等活動。
面向服務的架構方法具有靈活、松耦合、支持異構平臺互操作等特點,而Web2.0的核心理念是協作共享,這兩種思想相輔相成?;赪eb2.0的面向服務E-learning系統具有很多優勢:
(1)激發學生的積極性。在Web2.0應用中,學生的角色和師生關系都發生了變化,學生與教師不再僅僅是接受與傳授的關系,而是交流互動、攜手共建資源的新型關系。所有用戶既是信息的使用者,又是信息的發布者、加工者。研究發現,各種各樣的討論區、論壇可以激發學生的積極性,激起學生展示自己的想法[5]。有趣的是內向的學生在討論區、論壇中表現得很外向,有語言障礙的學生也非?;钴S。
(2)協作與共享。Web2.0的核心理念是協作與共享。與個人任務相比,參與并完成小組項目可以使學生學習到更多的東西。在此過程中,教師和學生可以利用豐富的Web2.0工具進行交流與協作,這種交流協作形式是多樣的,可以是個人對個人、個人對小組、小組對個人、小組對小組等。通過多樣性的交互,師生、生生之間可以相互共享資源、分享經驗,達到教學相長的效果。
(3)減少內容抄襲現象。在基于Web2.0的面向服務E-learning系統中提供了豐富的應用,如論壇、Wiki、博客等。絕大部分的學習活動是通過這些Web2.0應用開展的。而每個學生的各項活動和所做貢獻的質量都是完全透明的,教師和其他學生可以即時做出評價,這種情況下明顯減少了學生的抄襲現象。
盡管基于Web2.0的面向服務E-learning系統有很多優點,但在實際運用中也出現了一些問題。最棘手的問題是這種系統是基于客戶機-服務器模式的,當大量并發用戶請求同一服務時,可能導致系統崩潰。這為有嚴格截止日期的活動和頻繁開展的活動帶來了很大不便。
云計算(Cloud Computing)是一種基于互聯網的新的IT服務增加、使用和交付模式,通常涉及通過互聯網來提供動態、易擴展且虛擬化的資源,這些共享的軟硬件資源和信息可以按需提供給計算機和其他設備[6]。用戶不再需要了解“云”中基礎設施的細節,不必具有相應的專業知識,也無需直接對基礎設施進行控制。云計算的這種理念需要多種技術的支持,如網格計算(Grid Computing)、分布式計算 (Distributed Computing)、并行計算(Parallel Computing)、虛擬化(Virtualization)、網絡存儲 (Network Storage Technologies)、Web2.0等計算機技術和互聯網技術。根據云計算所提供服務的類型不同,可將其分為三個層次:SaaS、PaaS 和 IaaS。 SaaS(Software as a Service),軟件即服務,指用戶通過互聯網使用云中提供的各種軟件,無需自己購買、升級軟件。通過這種模式,一方面有助于IT資源有限的組織及時配置和維護所需的軟件;同時可以減少能耗和費用。越來越多的學術機構正在轉向使用SaaS作為他們的桌面應用程序[7]。PaaS(Platform as a Service),平臺即服務,通過提供計算平臺或解決方案作為一種服務,往往要消耗云基礎設施,并對云應用程序提供支持。它有利于開發和部署應用程序,而無需考慮購買和管理底層基礎設施及相關軟件的成本和復雜性。IaaS(Infrastructure as a Service),基礎設施即服務,是基于虛擬硬件資源的云服務,用戶通過互聯網絡來獲得虛擬主機服務、存儲空間服務、帶寬服務等各種形式的硬件資源服務。
對于SOA與云計算之間的關系,一些專家學者認為云計算是SOA的一種實現 。SOA是一種架構模式,而云計算是一種架構實踐[9]。他們認為SOA是構建應用程序的一種架構風格,是松耦合、允許合成的。因此,可以利用云計算技術架構符合SOA模式的系統。這種系統可以彌補以往面向服務系統的一些不足,實現以下功能:(1)資源服務和軟件服務的按需設計。用戶可以按需調用資源、選擇和使用軟件。(2)服務的擴展性。這種系統可以根據需求進行擴展,保證在IT基礎架構發生改變時,想用的服務也能適應性的發生改變[10]。
云計算摒棄了運行時需要增加容量或提高性能的要求;降低了用戶的IT成本和復雜性;同時改善了服務交付;通過集中存儲、處理和帶寬實現了更有效的計算。它使用戶無需大量購買基礎設施,培訓新的員工,購買軟件或新的軟件許可。云計算因其動態可擴展性和通過互聯網提供虛擬化的資源服務特性成為許多組織機構青睞的技術。技術的進步為促進教和學提供了新的機遇,因此,云計算對面向服務的E-learning系統有重要的影響。
云計算對面向服務的E-learning系統的支持功能主要有以下幾個方面:
(1)提供有質量保障的基礎設施服務,例如,時間、成本、可靠性以及CPU、帶寬、內存大小等硬件性能[11]。
(2)為不同類型的應用程序提供支持,以實現方便、快捷的獲取所需的計算和存儲資源。同時提供實時的配置信息和資源利用信息,并根據需求分配資源,提高資源利用率。
(3)讓學生可以在家、圖書館、教室等多樣化的場所從云中查找他們的文件并進行編輯。這種基于瀏覽器的應用程序也可以通過手機、筆記本電腦、臺式電腦等多種設備訪問。
(4)允許學生通過瀏覽器創建內容,而不僅僅是搜索。這使得學生可以獲得更加豐富多樣的學習體驗。
(5)當學生的需求改變時,云計算允許對E-learning系統進行動態擴展,以滿足學生的需要。
技術的進步為實現更加完善的面向服務的E-learning系統提供了新的機遇。云計算和Web2.0這兩種典型的技術就對面向服務的E-learning系統開發、管理與應用產生了重大影響。如前所述,面向服務的E-learning系統需要整合多種多樣的服務和內容類型,增強自身的可擴展性,同時能夠提供根據學生需求和關注點改變而靈活的調整和自適應的學習環境。在面向服務的E-learning系統中引入云計算和Web2.0有利于更好的解決上述問題。在具體的E-learning系統架構中采用面向服務的架構模式,以云計算技術實現這種架構模式,并在其中整合Web2.0技術、服務、應用與活動等,最終實現為E-learning系統需求提供服務。整合Web2.0與云計算的面向服務E-learning系統架構由五個主要層次組成,由下至上依次為基礎設施層、IaaS層、平臺及軟件服務層、系統需求層和應用層,如圖1所示。

基礎設施層是整個面向服務E-learning系統的最底層。該層向其上層提供實實在在的物理機、存儲器、通信線路等物理意義上的資源,并對其中那些資源可以被共享做出定義[12]。基礎設施層提供的共享資源主要包括計算資源、存儲資源、網絡資源、數據資源和儀器設備等。
IaaS層的主要功能是進行資源的虛擬化管理并向終端用戶提供基礎設施作為服務。利用虛擬化技術,將基礎設施層提供的資源進行虛擬化,如服務器虛擬化、存儲虛擬化等,來提高IT資源的利用率;通過虛擬化技術中基礎設施的共享特性來提高系統的穩定性和可靠性[13]。IaaS實現了集中資源配置管理,可以提供最實時、最準確的配置信息和運行狀態信息,以實現高效管理。不僅如此,該層還為面向服務的E-learning系統的動態擴展提供了支持。
平臺及軟件服務層的是面向服務的E-learning系統架構的核心層。該層的主要功能是向終端用戶提供軟件或平臺作為服務。對學?;蚪逃龣C構而言,可以利用Google協作平臺這類SaaS應用直接搭建自己的E-learning系統;也可以利用Google App Engine這類PaaS應用開發設計個性化的E-learning系統。然而,Web2.0對SaaS和PaaS這兩種服務模式都有很好的支持功能,因此,不管選用何種方式構建面向服務的E-learning系統,都可以在其中融入Web2.0的思想,以增強系統的協作共享性,最終實現“學習者中心”的理念。在SaaS和PaaS這兩種服務模式中引入Web2.0可以分為三個層次,Web2.0技術、Web2.0服務與應用和基于Web2.0的活動。
(1)Web2.0 技術
這一層主要是提供了 AJAX、JavaScript、XSLT/XML、XHTML、CSS、Document Object Model、XML-RPC、REST等Web2.0技術。有了這些技術的支持,可以使Web2.0服務與應用程序更加實用和方便。因為這些技術允許用戶進行創建、分享、協作與交流等活動;提高了系統的性能;并且使用戶界面更具吸引力。
(2)Web2.0 服務與應用
第二層主要由基于Web2.0技術層的Web2.0服務和應用程序組成。它們已經在教育中獲得了一定范圍的應用。這些應用包括博客、播客、微博、Wiki、社會化書簽,社會性標簽、媒體共享工具、社會網絡等等。這些本身并不是技術,而是利用技術和支撐互聯網的開放標準構建的服務。學校或教育機構可以利用這些應用與教師、學習者或者更加廣泛的學術團體進行交流和互動。
(3)基于 Web2.0 的活動
第三層主要是基于Web2.0服務與應用程序所設計的具體活動。這些基于Web2.0的活動包括內容協同編輯、交流討論,資源共享,信息呈現等。一方面,教師可以通過設計具體的基于Web2.0的活動使學習者積極參與到學習活動中,由被動學習轉為主動學習與創新,使教學目標得到更好的實現;另一方面,學習者通過積極主動地參與活動,不僅可以使自己真正成為學習的主體,更好的接收學習信息,還可以通過交流討論、寫博客等活動進行自我反思,將隱性知識顯性化。
系統需求層是連接平臺及軟件服務層與應用層的橋梁層。這一層的主要任務是將應用層不同用戶的不同需求反映給平臺及軟件服務層,使其能夠根據不同的需求向用戶提供不同的服務。不同用戶對E-learning系統的需求不同,如利用技術完善系統的需求、管理系統的需求以及通過E-learning系統進行學習的需求等。
應用層是面向服務E-learning系統架構的最高層。具體的應用者可以是學校、教育組織或機構、課程開發者、教師或學生。由于云計算所提供的平臺及軟件服務都是基于瀏覽器的,因此,用戶無需在本地安裝各種服務,無需考慮終端設備的性能及兼容性,既可以通過臺式電腦、筆記本電腦獲得所需服務,也可以通過PDA、移動手機等移動設備隨時隨地的使用各種服務。
基于云計算技術構建的面向服務E-learning系統,無需在本地安裝任何軟件,只要擁有一個能夠接入Internet的終端設備,就可以隨時隨地訪問E-learning系統。云計算服務器提供多種設備的訪問接口,保存用戶的訪問信息,調用計算能力和存儲資源,處理用戶定制需求,及時的反饋結果到用戶提供的任意終端設備[14]。這降低了對終端設備性能的要求,教師和學生不會再被困在電腦前,而是可以通過PDA、智能手機等設備隨時隨地管理課程或交流學習。
整合的E-learning系統中內嵌了多種Web2.0應用及活動,并且這些應用和活動都是基于云計算技術的。教師和學生可以隨時隨地通過多種終端設備參與到各種活動中,如共同完成Wiki任務或多人協作完成一份數字小報的排版與編輯。這使得教師及學生的協作交流更加順暢,減小了硬件條件對師生間協作、交互及共享的限制。
隨著E-learning活動的不斷展開,最初構建的E-learning系統可能不再滿足教師和學生的所有需求。整合Web2.0與云計算的面向服務E-learning系統具有很好的動態可擴展性,可以根據新的需求進行擴展。用戶可以通過訂購新的服務的方式完善E-learning系統;還可以在PaaS平臺上開發和部署滿足自己需要的服務。更重要的是,新的服務和技術能夠與原有的E-learning系統無縫連接。
盡管許多專家學者們一直致力于研究SOA、云計算和Web2.0,但是對于它們之間存在怎樣的關系?能否進行融合?如何整合?等問題,一直沒有達成統一的看法,眾說紛紜[15]。本文通過對SOA、云計算和Web2.0功能及特點的研究,嘗試了基于SOA模式整合云計算與Web2.0,構建整合Web2.0與云計算的面向服務E-learning系統,以期為E-learning系統的進一步完善提供借鑒。技術在不斷進步,我們的研究也還處于初級階段,我們會繼續探索云計算與Web2.0技術對E-learning系統的支持功能,不斷完善E-learning系統,最終實現有效學習。
[1]Dagger,D,O'Connor,A,Lawless,S,Walsh,E,Wade,V.P.Service-Oriented E-learning Platforms From Monolithic Systems to Flexible Services[J].IEEE,2007(11):28-35.
[2]劉京,鄭莉,劉銀濤,許磊.面向服務的 E-learning 系統架構研究[J].中國教育信息化,2007(4):36-38.
[3]潘梅蓉.論Web2.0與云服務時代下“云圖書館員”的培養[J].普圖學刊,2011(4):23-26.
[4]鄭衛兵,趙呈領,劉志英.協作學習2.0:基于Web2.0的協作學習新范式[J].現代教育技術,2009,19(1):17-20.
[5]Katerina Zdravkova,Mirjana Ivanovic,Zoran Putnik.Experience of integrating web2.0 technologies[J].Educational Technology Research and Development,2011,online first.
[6]維基百科.云計算[EB/OL].http://zh.wikipedia.org/wiki/%E4%BA%91%E8%AE%A1%E7%AE%97,2011-11-4.
[7]Shimaa Ouf,Mona Nasr,Yehia Helmy.An Enhanced E-learning Ecosystem Based on an Integration between Cloud Computing and Web2.0[J].IEEE,2011:48-55.
[8]吳杰,馮偉,陳靜怡.SOA與云計算——融合還是競爭[J].信息技術與標準化,2010(9):42-45.
[9]David S.Linthicum.云計算與SOA:a step-by-step guide[M].北京:人民郵電出版社,2011:3-16.
[10]劉彬彬,崔俊,施維剛.SOA構架的云計算服務在信息化中的應用[J].銅業工程,2010(3):62-67.
[11]Bo Dong,Qinghua Zheng,Jie Yang,Haifei Li,Mu Qiao.An E-learning Ecosystem Based on Cloud Computing Infrastructure[J].IEEE,2009:125-127.
[12]崔云飛,李藝,李昀,祝冀魯.基于SOA的云計算體系結構研究[J].裝備指揮技術學院學報,2011(4):76-81.
[13]朱近之.智慧的云計算——物聯網的平臺[M].北京:電子工業出版社,2011:110-111.
[14]周舒,張嵐嵐.云計算改善數字圖書館用戶體驗[J].圖書館學研究,2009,(4):28-30.
[15]雷萬云.云計算——技術、平臺及應用案例[M].北京:清華大學出版社,2011:102-103.