摘 要:文章對(duì)我國高校內(nèi)部系統(tǒng)建設(shè)的現(xiàn)狀進(jìn)行了簡(jiǎn)要分析,提出了將SOA引入并實(shí)現(xiàn)平臺(tái)整合的構(gòu)想,對(duì)SOA的設(shè)計(jì)思想、協(xié)作關(guān)系、基本要素等進(jìn)行了研究,提出了平臺(tái)整合的目標(biāo)和功能需求,最后對(duì)體系結(jié)構(gòu)和功能模塊進(jìn)行了設(shè)計(jì)。
關(guān)鍵詞:SOA 教育資源 系統(tǒng)整合
中圖分類號(hào):TP3 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-3791(2012)11(b)-0176-02
目前國內(nèi)許多高校內(nèi)部同時(shí)運(yùn)用著多個(gè)教育信息及資源管理系統(tǒng),如教務(wù)系統(tǒng)、圖書管理系統(tǒng)、網(wǎng)絡(luò)課程教學(xué)平臺(tái)、試卷庫等。由于開發(fā)工具、平臺(tái)的異構(gòu)性和緊耦合性等原因,這些系統(tǒng)之間相互獨(dú)立,資源共享與軟件復(fù)用性差。
為進(jìn)一步提高資源的共享性,充分發(fā)揮統(tǒng)一平臺(tái)的優(yōu)勢(shì),我們需要將現(xiàn)有的教育資源系統(tǒng)進(jìn)行整合。但是,如果選擇重新開發(fā)新平臺(tái)來實(shí)現(xiàn)系統(tǒng)的整合,實(shí)現(xiàn)的周期比較長(zhǎng),投入較大,同時(shí),各種資源又缺乏統(tǒng)一標(biāo)準(zhǔn),難以保證資源整合的合理性和有效性。如何規(guī)避各系統(tǒng)運(yùn)行平臺(tái)和開發(fā)環(huán)境間的差異,在短時(shí)間內(nèi),以較小的開銷,實(shí)現(xiàn)現(xiàn)有教育資源系統(tǒng)進(jìn)行有理整合,已成為高校信息化建設(shè)的重要課題。面向服務(wù)的軟件架構(gòu)思想(Service-Oriented Architecture,SOA),為解決這些問題提供了一個(gè)很好的方案。
1 SOA,面向服務(wù)的軟件架構(gòu)思想
1.1 SOA的定義
目前,SOA的定義可以大致分為兩類:一類認(rèn)為SOA僅是一種架構(gòu)風(fēng)格;另一類認(rèn)為SOA是包含運(yùn)行環(huán)境、編程模型和架構(gòu)風(fēng)格等在內(nèi)的一整套分布式軟件系統(tǒng)的構(gòu)造方法和環(huán)境。
在面向服務(wù)體系結(jié)構(gòu)中,業(yè)務(wù)邏輯被封裝為一系列服務(wù),服務(wù)之間相對(duì)獨(dú)立并可以重用,他們之間通過定義好的接口和協(xié)議交互,這些接口和協(xié)議基于統(tǒng)一的標(biāo)準(zhǔn)進(jìn)行定義,獨(dú)立于實(shí)現(xiàn)各服務(wù)的硬件環(huán)境和編程語言。
1.2 SOA的基本要素
在實(shí)施SOA的過程中必須滿足下四個(gè)基本要素。
(1)粗粒度。即SOA中服務(wù)的接口應(yīng)該接近用戶的實(shí)際操作。
(2)松散耦合。包括服務(wù)之間不互相依賴,接口與實(shí)現(xiàn)之間松散耦合,業(yè)務(wù)組件和傳輸協(xié)議之間松散耦合。
(3)位置透明。即無論服務(wù)組件的URL如何變化,客戶端的調(diào)用程序URL都不需要改變。
(4)傳輸協(xié)議透明。即無論服務(wù)組件的傳輸協(xié)議如何改變,客戶端的調(diào)用程序都不需要改變。
1.3 SOA的協(xié)作體系
服務(wù)請(qǐng)求者根據(jù)需要申請(qǐng)服務(wù),利用服務(wù)注冊(cè)中心查找所需的服務(wù),最后使用定義的接口和傳輸協(xié)議與服務(wù)進(jìn)行綁定,從而最終獲得服務(wù)。服務(wù)提供者將業(yè)務(wù)邏輯封裝為服務(wù)并發(fā)布到服務(wù)注冊(cè)中心,響應(yīng)來自請(qǐng)求者的服務(wù)請(qǐng)求。服務(wù)注冊(cè)中心,即服務(wù)代理,負(fù)責(zé)注冊(cè)、分類已經(jīng)發(fā)布的服務(wù),并為請(qǐng)求者提供搜索服務(wù)的功能。
1.4 SOA的優(yōu)點(diǎn)
SOA提供了一個(gè)非常自由的開發(fā)架構(gòu)模式,開發(fā)方法、實(shí)現(xiàn)技術(shù)得到了解放,開發(fā)效率大大提升。具體地講,SOA有如下一些優(yōu)點(diǎn)。
(1)對(duì)于變化應(yīng)對(duì)自如。服務(wù)提供者和使用者之間是松散耦合的,對(duì)于系統(tǒng)的表示層只能看到服務(wù)接口,而不需要關(guān)心接口內(nèi)部的實(shí)現(xiàn)細(xì)節(jié),當(dāng)某個(gè)服務(wù)的內(nèi)部發(fā)生改變時(shí),不會(huì)影響其他服務(wù)。
(2)跨平臺(tái)和重用性好。服務(wù)之間可以通過標(biāo)準(zhǔn)接口自由引用,而不用考慮所要引用的服務(wù)的實(shí)際位置、硬件環(huán)境及開發(fā)語言等,服務(wù)之間松散耦合,系統(tǒng)的重用性好。
(3)維護(hù)性和可伸縮性好。服務(wù)提供者和使用者之間松散耦合,采用開放的標(biāo)準(zhǔn),服務(wù)提供者可以更新自己所提供的服務(wù)以不斷滿足使用者的新需求。
(4)現(xiàn)有資源利用充分。通過組合現(xiàn)有的各個(gè)服務(wù),可以快速地實(shí)現(xiàn)資源整合,有效減少開發(fā)周期和成本。
2 教育資源管理系統(tǒng)整合需求分析
2.1 系統(tǒng)設(shè)計(jì)目標(biāo)
基于SOA的教育資源管理系統(tǒng)整合的目標(biāo)是:充分利用各個(gè)現(xiàn)有系統(tǒng)提供的服務(wù),以較短的周期和成本支出,整合得到一個(gè)統(tǒng)一的平臺(tái),對(duì)各種教育資源進(jìn)行統(tǒng)一、規(guī)范化的管理,構(gòu)建分布式的、共享的數(shù)字教育資源環(huán)境。具體來講,需要實(shí)現(xiàn)以下目標(biāo)。
(1)教育資源有機(jī)整合。將現(xiàn)有的各個(gè)系統(tǒng)整合到一個(gè)平臺(tái)下,為用戶提供統(tǒng)一的接口,充分發(fā)揮現(xiàn)有系統(tǒng)的服務(wù)功能,從而實(shí)現(xiàn)資源的有機(jī)整合。
(2)新系統(tǒng)與現(xiàn)有系統(tǒng)功能上獨(dú)立,新系統(tǒng)的更新不會(huì)對(duì)原有系統(tǒng)產(chǎn)生影響。
(3)通過統(tǒng)一平臺(tái)對(duì)教育資源進(jìn)行規(guī)范化描述,高效管理各類資源。
(4)整合代價(jià)低,系統(tǒng)靈活性強(qiáng)。對(duì)現(xiàn)有各系統(tǒng)整合的周期不宜長(zhǎng),代價(jià)不宜過高,確保系統(tǒng)的靈活性,能較快適應(yīng)業(yè)務(wù)需求的變化,可擴(kuò)展性好。
2.2 系統(tǒng)功能需求
為實(shí)現(xiàn)設(shè)計(jì)目標(biāo),整合的平臺(tái)系統(tǒng)應(yīng)具備如下功能。
2.2.1 系統(tǒng)管理功能
(1)用戶管理。包括用戶注冊(cè)、維護(hù)及角色權(quán)限分配等。
(2)數(shù)據(jù)備份。便捷地對(duì)系統(tǒng)的數(shù)據(jù)進(jìn)行備份、支持異地備份。
2.2.2 資源管理功能
(l)對(duì)各種資源數(shù)據(jù)的日常維護(hù),包括添加、更新、刪除等。
(2)具備功能強(qiáng)大、人性化的資源檢索功能。支持精確查詢和模糊查詢功能,也可以根據(jù)分類瀏覽資源。
(3)資源評(píng)價(jià)功能。資源的使用者可以查詢其他用戶對(duì)相關(guān)資源的評(píng)價(jià)作為選擇資源的參考,同時(shí)可對(duì)資源進(jìn)行量化評(píng)價(jià),也可以發(fā)表評(píng)論,供資源管理者作為資源庫建設(shè)的參考。
(4)資源遠(yuǎn)程上傳和下載??梢酝ㄟ^網(wǎng)絡(luò)客戶端對(duì)資源進(jìn)行上傳、上載。
3 教育資源管理系統(tǒng)整合設(shè)計(jì)
3.1 系統(tǒng)體系結(jié)構(gòu)設(shè)計(jì)
根據(jù)SOA的系統(tǒng)整合架構(gòu)模型,可將整合平臺(tái)的體系結(jié)構(gòu)劃分為以下五層。
(1)數(shù)據(jù)層:負(fù)責(zé)管理平臺(tái)中數(shù)據(jù),提供數(shù)據(jù)信息。包括現(xiàn)有教務(wù)系統(tǒng)、公共教學(xué)平臺(tái)的數(shù)據(jù)庫和本平臺(tái)的資源庫。
(2)數(shù)據(jù)訪問層:負(fù)責(zé)服務(wù)組件層與底層間的數(shù)據(jù)交換。在不改變現(xiàn)有各服務(wù)的前提下封裝各自的數(shù)據(jù)訪問功能并通過對(duì)外接口供服務(wù)組件層調(diào)用。
(3)服務(wù)組件層:各服務(wù)組件均只實(shí)現(xiàn)各自單一的功能,可以通過定義SCA來封這些服務(wù)的接口,以實(shí)現(xiàn)服務(wù)的有效整合。
(4)服務(wù)層:負(fù)責(zé)實(shí)現(xiàn)系統(tǒng)業(yè)務(wù)邏輯。通過整合各服務(wù)組件,形成松散耦合的服務(wù)模塊,提供面向業(yè)務(wù)邏輯的接口。
(5)Web層:包括表示層和控制層,表示層提供了用戶與系統(tǒng)的交互界面,控制層負(fù)責(zé)接收用戶請(qǐng)求并調(diào)用相應(yīng)的服務(wù)完成相關(guān)操作,最后將結(jié)果返回Web頁面。
3.2 系統(tǒng)功能結(jié)構(gòu)設(shè)計(jì)
根據(jù)整合平臺(tái)的需求分析,系統(tǒng)的總體上可劃分為五個(gè)功能模塊:系統(tǒng)管理、資源數(shù)據(jù)管理、資源瀏覽、統(tǒng)計(jì)報(bào)表、用戶面板。
(1)系統(tǒng)管理。包括用戶權(quán)限管理、系統(tǒng)的備份、相關(guān)文章、信息的維護(hù)等。
(2)資源數(shù)據(jù)管理。負(fù)責(zé)按照教育資源元數(shù)據(jù)的標(biāo)準(zhǔn)采集、管理資源數(shù)據(jù)。包括資源的發(fā)布、審核、維護(hù)、檢索、推薦和評(píng)價(jià)管理等。
①資源發(fā)布。負(fù)責(zé)按照教育資源元數(shù)據(jù)的標(biāo)準(zhǔn)采集工作,即有相應(yīng)權(quán)限的用戶通過平臺(tái)錄入發(fā)布資源。管理員、教師、學(xué)生發(fā)布資源的權(quán)限有所不同,發(fā)布的方式也有所不同,如課程教學(xué)資源還是公共學(xué)習(xí)資源等。
②資源審核。普通用戶,如學(xué)生發(fā)布資源時(shí),需要經(jīng)過管理的審核才能正式發(fā)布,供其他用戶查詢、下載,審核不通過的資源將被刪除。具有高級(jí)權(quán)限的教師或其他管理員可直接發(fā)布資源,無需審核。
③資源編輯。具備相應(yīng)的修改權(quán)限的用戶,可對(duì)資源進(jìn)行修改、更新,系統(tǒng)管理員或資源管理員可以修改和刪除所有資源。普通用戶只能修改和刪除自己發(fā)布且未經(jīng)審核的資源。
④資源檢索。根據(jù)用戶選擇的條件組合或錄入的關(guān)鍵詞從數(shù)據(jù)庫中查找出符合條件的結(jié)果,返回給用戶。用戶可以查看相應(yīng)資源的簡(jiǎn)介和詳細(xì)信息,也可下載該資源或?qū)⒃撡Y源添加到個(gè)人收藏夾。
⑤資源推薦:管理員、教師甚至學(xué)生可以對(duì)優(yōu)質(zhì)資源進(jìn)行推薦,推薦的結(jié)果也是分類的,顯示為管理員推薦、某教師推薦和多少名學(xué)生推薦等。
⑥資源評(píng)論:管理員、教師、學(xué)生可以對(duì)相關(guān)資源進(jìn)行評(píng)價(jià),評(píng)價(jià)有量化打分和留言兩種方式,評(píng)價(jià)結(jié)果分類顯示,包括管理員評(píng)價(jià)、教師評(píng)價(jià)和學(xué)生評(píng)價(jià)等。
(3)資源瀏覽??筛鶕?jù)資源所屬學(xué)科、資源類型(課程資源、公共學(xué)習(xí)資源等)、資源級(jí)別(精品、推薦等)等瀏覽資源。用戶在瀏覽的過程中根據(jù)需要將相關(guān)資源放入平臺(tái)中的個(gè)人收藏夾中或下載到用戶電腦中。
(4)統(tǒng)計(jì)報(bào)表。對(duì)各類資源的發(fā)布數(shù)量、各項(xiàng)資源的被引用、推薦、下載情況等進(jìn)行統(tǒng)計(jì),對(duì)用戶評(píng)價(jià)進(jìn)行匯總分析,幫助管理員了解資源的總體情況,有針對(duì)性地進(jìn)行開發(fā)和補(bǔ)充,引導(dǎo)用戶訪問優(yōu)質(zhì)資源。
(5)用戶面板。用戶登錄后可進(jìn)入個(gè)人面板,包括個(gè)人基本信息的維護(hù)、瀏覽記錄查詢、個(gè)人收藏夾、修改密碼等。
本文從實(shí)際需求出發(fā),引入SOA的架構(gòu)思想,對(duì)教育資源管理系統(tǒng)進(jìn)行了整合設(shè)計(jì),提出的設(shè)計(jì)目標(biāo)、功能需求、平臺(tái)的體系結(jié)構(gòu),并各模塊所要實(shí)現(xiàn)的功能進(jìn)行了描述,為高校內(nèi)部資源系統(tǒng)整合提供了的途徑和方法。
參考文獻(xiàn)
[1] (美)Thomas Erl.SOA概念,技術(shù)與設(shè)計(jì)[M].王滿紅,陳榮華,譯.機(jī)械工業(yè)出版社,2007.
[2] 王紫瑤,南俊杰,段子輝,等,SOA核心技術(shù)及應(yīng)用[M].電子工業(yè)出版社,2008(5).
[3] Dirk Krafzig,Karl Banke,Dirk Slama,等.著,面向服務(wù)架構(gòu)的最佳實(shí)戰(zhàn)[M].韓宏志,譯.清華大學(xué)出版社,2006(14).