揭后新
摘要 基于Web設(shè)計(jì)一種積件庫(kù)代理系統(tǒng),對(duì)積件庫(kù)建設(shè)者、顧客和代理者的職能進(jìn)行明確的區(qū)分,既方便顧客的使用,又使積件庫(kù)的開放性、擴(kuò)展性和易用性更易實(shí)現(xiàn)。
關(guān)鍵詞 Web Services;積件庫(kù);建設(shè)者;顧客
中圖分類號(hào):G434 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1671-489X(2009)15-0077-02
Research and Design of Database Agent System based on Web Services//Jie Houxin
Abstract This article aims to design a Web-based database agent system which makes a clear distinction among the functions of the developers of the Ware Library, its customers and agents. In addition to make it more accessible for customer, it will also become easy for the Treasury integrableware to be more open and expansible.
Key words Web Services;integrableware database;developers;customers
Authors address Software Faculty, Southwest Jiaotong University, Chengdu 610031
為解決課件在CAI中暴露的封閉性、表態(tài)性的問(wèn)題,研究人員提出積件的概念。積件具有基元性、可積性、通用性、開放性的特點(diǎn),在實(shí)踐中發(fā)揮出重要的作用。積件庫(kù)的使用更是為使用者提供一個(gè)廣闊的選擇空間,但積件庫(kù)龐大的信息量會(huì)讓使用者檢索時(shí)產(chǎn)生迷航的現(xiàn)象,同時(shí)積件庫(kù)的更新維護(hù)也是困擾積件庫(kù)建設(shè)者的難題。本文采用面向?qū)ο蟮乃枷朐O(shè)計(jì)一種積件庫(kù)代理系統(tǒng),能讓使用者方便、快捷、自動(dòng)、智能地檢索到自己所需要的積件,同時(shí)系統(tǒng)的注冊(cè)登記功能對(duì)擴(kuò)充更新積件庫(kù)有積極的作用。
1 積件庫(kù)
積件庫(kù)存儲(chǔ)一個(gè)學(xué)科(或課程)中與教學(xué)策略、教學(xué)對(duì)象、教學(xué)目標(biāo)等有關(guān)的基元信息。利用互聯(lián)網(wǎng)組織積件庫(kù),最主要的工作是要做好一個(gè)可供方便檢索并可擴(kuò)展的平臺(tái),它應(yīng)具有3個(gè)特點(diǎn)。1)開放性。在互聯(lián)網(wǎng)上建立積件庫(kù)的目的就是為教師和學(xué)生提供一個(gè)含有豐富資源且容易獲取的公開教學(xué)資源庫(kù),以方便其設(shè)計(jì)和使用教學(xué)軟件,解決課堂CAI課件教學(xué)中存在的不足。2)擴(kuò)充性。積件庫(kù)中的資源都是以單元方式入庫(kù)供教師和學(xué)生重組和使用的,因而任何人在任何時(shí)間、任何地點(diǎn)都可以將最新的信息和作品添加入庫(kù)。積件庫(kù)應(yīng)具有自擴(kuò)充性和自繁殖性。3)易用性。積件庫(kù)資源豐富,內(nèi)容龐雜。通過(guò)網(wǎng)絡(luò)建立積件庫(kù)要在檢索、查詢資料上具有方便、快速、自動(dòng)、智能的網(wǎng)絡(luò)檢索特點(diǎn),如采用分學(xué)科、分類別、分層次或關(guān)鍵字搜索等方式來(lái)處理,做到大家同時(shí)使用。
2 網(wǎng)絡(luò)積件庫(kù)的現(xiàn)狀
目前流行的積件庫(kù),僅是收集各類積件,存儲(chǔ)在本地?cái)?shù)據(jù)庫(kù)中,供顧客檢索使用,擴(kuò)展更新困難,功能簡(jiǎn)單劃一,靈活性、可擴(kuò)展性差。1)沒有公共的登記機(jī)制。不同庫(kù)之間是相互獨(dú)立的,如果顧客檢索不到自己所需要的積件,需要查詢其他積件庫(kù)。顧客也無(wú)法將自己的需求登記,造成建設(shè)者無(wú)法提供針對(duì)性服務(wù)。2)與實(shí)踐脫節(jié)。課程的內(nèi)容是不斷發(fā)展的,顧客的需要也是不斷變化的,而積件庫(kù)里的內(nèi)容一成不變或更新緩慢,顧客的需求得不到及時(shí)的滿足。導(dǎo)致積件庫(kù)建設(shè)在質(zhì)量、效益、可持續(xù)發(fā)展上無(wú)法緊跟學(xué)科的發(fā)展和體現(xiàn)學(xué)科的最新成果,造成積件的開發(fā)脫離教育教學(xué)實(shí)踐。3)信息冗余與信息不足并存。過(guò)時(shí)的、不能反映教育教學(xué)實(shí)踐需要的積件大量存在,信息大量冗余,增加顧客使用積件庫(kù)的難度,使檢索更加困難,也增加維護(hù)的難度。同時(shí)實(shí)踐中的開發(fā)成果得不到及時(shí)地上傳與共享,優(yōu)秀作品得不到及時(shí)的呈現(xiàn)。4)資源浪費(fèi)嚴(yán)重。積件庫(kù)建設(shè)者獲取和發(fā)布信息是自行開發(fā),資源往往不符合實(shí)踐需要,耗費(fèi)大量的時(shí)間和資金。
3 本系統(tǒng)設(shè)計(jì)思想
3.1 Web Services的3個(gè)角色Web服務(wù)體系結(jié)構(gòu)基于服務(wù)提供者、服務(wù)注冊(cè)中心和服務(wù)請(qǐng)求者這3種角色之間的交互,交互設(shè)計(jì)發(fā)布、查找和綁定操作。服務(wù)提供者定義Web服務(wù)的服務(wù)描述并把它發(fā)布到服務(wù)請(qǐng)求者或服務(wù)注冊(cè)中心。服務(wù)請(qǐng)求者使用查找操作從本地或服務(wù)注冊(cè)中心檢索服務(wù)描述,然后使用服務(wù)描述與服務(wù)提供者進(jìn)行綁定并調(diào)用Web服務(wù)。實(shí)現(xiàn)同他交互。如圖1所示,Service Provider,實(shí)現(xiàn)服務(wù)并發(fā)布服務(wù);Service Requester,請(qǐng)求并使用服務(wù);Service Registry,注冊(cè)服務(wù)提供者及其服務(wù),提供服務(wù)檢索,將服務(wù)請(qǐng)求者與合適的服務(wù)提供者綁定。
3.2 系統(tǒng)具體框架實(shí)現(xiàn)
1)系統(tǒng)需求分析。顧客也就是積件使用者,使用代理系統(tǒng)尋找積件時(shí),只關(guān)心積件在內(nèi)容、功能、操作等方面否符合要求,能否得到所需要的積件,以及如何與積件庫(kù)交互;并不關(guān)心代理系統(tǒng)是否與積件庫(kù)建立聯(lián)系。顧客也不希望得到的回復(fù)僅僅是幾個(gè)鏈接然后再進(jìn)行其他的檢索。積件庫(kù)建設(shè)者,主要是搜集開發(fā)各種類型的積件,為顧客提供服務(wù),同時(shí)接收優(yōu)秀作品,及時(shí)更新擴(kuò)充積件庫(kù)。代理系統(tǒng),為顧客和積件庫(kù)建設(shè)者提供良好的服務(wù),使顧客和積件庫(kù)建設(shè)者建立良好的交互,顧客的需求和積件庫(kù)的信息可以及時(shí)發(fā)布,使雙方交互性加強(qiáng)。
2)系統(tǒng)設(shè)計(jì)分析。服務(wù)提供者(積件庫(kù)):在一個(gè)登記處維護(hù)其服務(wù)信息。積件庫(kù)建設(shè)者在服務(wù)登記處進(jìn)行登記,及時(shí)維護(hù)更新信息,供顧客檢索使用,提供相關(guān)服務(wù)。服務(wù)請(qǐng)求者(顧客):在登記處尋找服務(wù)。一旦服務(wù)被找到,另一種服務(wù)被調(diào)用。顧客不僅可以檢索積件,還可以將自己開發(fā)的積件上傳到積件庫(kù)中,更新擴(kuò)展積件庫(kù);及時(shí)發(fā)布反映教育教學(xué)實(shí)踐的優(yōu)秀作品,對(duì)于積件的共享意義重大。登記處提供者(代理系統(tǒng)):是一個(gè)服務(wù)存儲(chǔ)器,那里所有的服務(wù)都被登記。代理系統(tǒng)可以成為服務(wù)代理,提供一個(gè)顧客和服務(wù)者之間的界面,將顧客和積件庫(kù)的信息呈現(xiàn)出去,使顧客和建設(shè)者交互性加強(qiáng),本身職能更加專一。
3)三層B/S體系結(jié)構(gòu)。本系統(tǒng)采用瀏覽器、Web服務(wù)器、數(shù)據(jù)庫(kù)服務(wù)器三層模型,即B/S模式。第一層,客戶瀏覽器,它是用戶與整個(gè)系統(tǒng)的接口。用戶登錄后,在網(wǎng)頁(yè)提供的申請(qǐng)表上輸入請(qǐng)求服務(wù)信息提交給后臺(tái),并提出處理請(qǐng)求。顧客在該層即可檢索所需積件,注冊(cè)登記自己所需積件,也可上傳自己的積件。第二層,Web服務(wù)器,客戶機(jī)的后臺(tái)即是Web服務(wù)器,它將啟動(dòng)相應(yīng)的進(jìn)程來(lái)響應(yīng)客戶機(jī)的請(qǐng)求,動(dòng)態(tài)生成處理結(jié)果,返回給客戶機(jī)的瀏覽器。如果客戶機(jī)提交的請(qǐng)求包括數(shù)據(jù)的存取,Web服務(wù)器還需與數(shù)據(jù)服務(wù)器協(xié)同完成這一處理工作。第三層,數(shù)據(jù)服務(wù)器,負(fù)責(zé)協(xié)調(diào)不同的Web服務(wù)器發(fā)出的請(qǐng)求,管理操作數(shù)據(jù)庫(kù),提供相關(guān)服務(wù)。系統(tǒng)采用Oracle數(shù)據(jù)庫(kù),存儲(chǔ)積件信息。
4 應(yīng)用代理系統(tǒng)的生命力
支持獨(dú)立于商家、技術(shù)平臺(tái)和工業(yè)的注冊(cè)登記,顧客注冊(cè)登記系統(tǒng)后,可以檢索自己所需要的積件,同時(shí)也可以將自己開發(fā)的精品積件上傳供其他顧客利用。如果服務(wù)沒被滿足,可以注冊(cè)請(qǐng)求服務(wù),以得到建設(shè)者針對(duì)性服務(wù)。建設(shè)者注冊(cè)登記后,可以維護(hù)積件的信息供顧客檢索利用。同時(shí)關(guān)注顧客的請(qǐng)求服務(wù),及時(shí)更新。代理系統(tǒng)提供交互接口,統(tǒng)籌安排,協(xié)調(diào)供需,提高服務(wù)質(zhì)量。
5 結(jié)束語(yǔ)
本文設(shè)計(jì)一種基于Web Services的積件庫(kù)代理系統(tǒng),本系統(tǒng)主要包括數(shù)據(jù)服務(wù)層、中間服務(wù)層和用戶層,建設(shè)者和使用者可以通過(guò)Web瀏覽器方便地享受代理系統(tǒng)提供的服務(wù)。積件庫(kù)建設(shè)是一個(gè)復(fù)雜的系統(tǒng)工程,把資源放入庫(kù)中并不等于資源建設(shè)的結(jié)束,還應(yīng)根據(jù)使用效果和實(shí)際情況對(duì)資源庫(kù)進(jìn)行修改、增刪和動(dòng)態(tài)更新。