• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      融合軟件商店和Web聚合的SaaS軟件開(kāi)發(fā)模型*

      2012-10-08 01:59:06殷月明吳永和
      電信科學(xué) 2012年11期
      關(guān)鍵詞:租戶開(kāi)發(fā)者商店

      馮 翔 ,殷月明 ,吳永和

      (1.華東師范大學(xué)網(wǎng)絡(luò)教育學(xué)院 上海 200062;2.上海數(shù)字化教育裝備工程技術(shù)研究中心 上海 200062;3.上海貝爾股份有限公司 上海201206)

      1 引言

      當(dāng)前的SaaS主要由服務(wù)商開(kāi)發(fā)成套的軟件,這些軟件由低耦合、可組裝的軟件實(shí)體構(gòu)成,因此可提供基于模板和規(guī)則的定制功能來(lái)滿足多租戶應(yīng)用需求,其最大優(yōu)勢(shì)在于提供多租戶服務(wù),用規(guī)模效應(yīng)來(lái)降低成本。多租戶相關(guān)的技術(shù)是SaaS中的核心關(guān)鍵技術(shù),如可配置的多租戶SaaS應(yīng)用、單實(shí)例支持多租戶的SaaS應(yīng)用架構(gòu)、可伸縮的多租戶SaaS應(yīng)用架構(gòu)等,這些技術(shù)從服務(wù)的角度保障多租戶系統(tǒng)的彈性、擴(kuò)展性和性能,確保SaaS軟件交付模式的成功,但還不能解決需求交集小、多領(lǐng)域、多變的租戶個(gè)性化需求問(wèn)題,而這個(gè)問(wèn)題需要從軟件開(kāi)發(fā)模型的角度來(lái)解決。從SaaS發(fā)展歷史來(lái)看,其典型應(yīng)用演化自CRM(customer relationship management)、ERP(enterprise resource planning)、MIS(management information system)、HRM(human resource management)等,面向的是中型以上具有明確上述系統(tǒng)需求的企業(yè),它們的需求集合存在較大的交集,一旦需求集合交集過(guò)小,SaaS將難以適應(yīng)。據(jù)埃森哲2009年11月發(fā)布的《中國(guó)云計(jì)算調(diào)研報(bào)告》數(shù)據(jù),我國(guó)的中小企業(yè)數(shù)量超過(guò)千萬(wàn)。由于行業(yè)千差萬(wàn)別,數(shù)量巨大,這些中小企業(yè)的SaaS應(yīng)用需求集合交集較小,傳統(tǒng)SaaS軟件交付模式難以滿足這樣的需求。

      近幾年發(fā)展起來(lái)的軟件商店模式,可滿足大量人群的個(gè)性化需求,而Web Mashup為快速情境應(yīng)用[1,2]提供技術(shù)和模式支撐。在SaaS上整合軟件商店模式有利于提高應(yīng)用豐富度,從而滿足個(gè)性化需求,基于此,本文基于Web2.0、Web聚合、網(wǎng)構(gòu)軟件思想,設(shè)計(jì)一種融合SaaS和軟件商店的新型SaaS軟件開(kāi)發(fā)架構(gòu),該架構(gòu)源自電信2.0領(lǐng)域的研究,其目的是以輕量級(jí)方式整合電信和IT能力,從而為中小企業(yè)提供靈活、敏捷的信息化平臺(tái)支撐。

      2 相關(guān)研究

      Web的第一階段是基于超鏈接的靜態(tài)信息存儲(chǔ)網(wǎng)絡(luò),隨著Web的發(fā)展,應(yīng)用越來(lái)越多,各種結(jié)構(gòu)之間的交互需求也越來(lái)越迫切;第二階段的Web2.0隨之也發(fā)展起來(lái)了,并由此催生了新一代的Web軟件開(kāi)發(fā)技術(shù)和模式,一些公司和機(jī)構(gòu)都已相繼展開(kāi)研究[3,4]。

      互聯(lián)網(wǎng)作為平臺(tái)是Web2.0中的核心原則之一[5]。隨著Web的平臺(tái)化,IT界的商業(yè)模式也在發(fā)生改變,新型應(yīng)用模式誕生了,如聚合(mashup)對(duì)軟件行業(yè)產(chǎn)生了深遠(yuǎn)影響,相對(duì)于傳統(tǒng) I T應(yīng)用有眾多優(yōu)點(diǎn)[6],因此越來(lái)越多的企業(yè)和學(xué)者對(duì)此展開(kāi)研究,各種面向用戶的聚合系統(tǒng)[7]開(kāi)始出現(xiàn) , 如 Y ahoo Pipe[8]、Intel Mash Maker[9]、SAP 的Enterprise2.0聚合平臺(tái)[10]、IBM 情境應(yīng)用平臺(tái)[6]等。

      Web聚合有兩種形式:一種是對(duì)于不同來(lái)源的數(shù)據(jù)和服務(wù)進(jìn)行聚合,另一種是作為完整Web應(yīng)用的包含UI、邏輯在內(nèi)的一整套網(wǎng)頁(yè)功能被聚合,這種聚合下的典型代表是Widget/Gadget等。然而,Widget/Gadget僅表現(xiàn)簡(jiǎn)單邏輯功能,現(xiàn)階段多數(shù)Widget平臺(tái)只負(fù)責(zé)將不同來(lái)源的Widget組織在一起展示,而沒(méi)有深度地將其進(jìn)行業(yè)務(wù)聚合。開(kāi)放聚合聯(lián)盟 (open mashup alliance,OMA)制定的EMML(enterprise mashup markup language)聚焦在后臺(tái)的數(shù)據(jù)聚合邏輯流程上[11]。

      IBM的 Mashup Center[6]是基于聚合思想的企業(yè)級(jí)情景應(yīng)用支撐系統(tǒng),是Mashup應(yīng)用企業(yè)的成功案例。Mashup Center不支持將互聯(lián)網(wǎng)上的普通網(wǎng)頁(yè)聚合到應(yīng)用中,任何現(xiàn)有網(wǎng)頁(yè)和Web應(yīng)用必須以IBM提供的Widget規(guī)范方式重新包裝之后打包為jar格式或war等格式發(fā)布,或通過(guò)聚合 H ub發(fā)布。

      總之,將聚合應(yīng)用于企業(yè)成為趨勢(shì),但應(yīng)用的深度和廣度還不夠,對(duì)于具有較強(qiáng)邏輯性的企業(yè)應(yīng)用方面還需要深入研究:不依賴于特定廠商Widget/Gadget規(guī)范的Web應(yīng)用聚合技術(shù);在Web前端的業(yè)務(wù)邏輯構(gòu)造;任意來(lái)源的Web應(yīng)用組裝。網(wǎng)構(gòu)軟件理論與技術(shù)在Web上的應(yīng)用為解決這些問(wèn)題提供了支撐。網(wǎng)構(gòu)軟件是指在面向?qū)ο?、軟件?gòu)件等技術(shù)支持下的軟件實(shí)體以主體化的軟件服務(wù)形式存在于Internet的各個(gè)節(jié)點(diǎn)上,各個(gè)軟件實(shí)體相互間通過(guò)協(xié)同機(jī)制進(jìn)行跨網(wǎng)絡(luò)的互連、互通、協(xié)作和聯(lián)盟,從而形成一種與WWW 相類似的軟件Web(software Web)形態(tài)[12]。參考文獻(xiàn)[13]指出網(wǎng)構(gòu)軟件可適應(yīng)開(kāi)放、動(dòng)態(tài)、難控的網(wǎng)絡(luò)環(huán)境需求,它呈現(xiàn)出一種可演化、連續(xù)反應(yīng)式、多目標(biāo)適應(yīng)的新系統(tǒng)形態(tài)。網(wǎng)構(gòu)軟件系統(tǒng)強(qiáng)調(diào)的是以網(wǎng)絡(luò)為“土壤”,以可復(fù)用構(gòu)件為“營(yíng)養(yǎng)”來(lái)實(shí)現(xiàn)豐富多彩的新型應(yīng)用程序,這是個(gè)性化軟件的重要基礎(chǔ)。

      軟件商店模式充分體現(xiàn)了“長(zhǎng)尾”效應(yīng),為軟件滿足個(gè)性化需求提供了較好的模式。雖然軟件商店取得了成功,但是商店應(yīng)用的同質(zhì)化逐漸暴露。這種問(wèn)題在長(zhǎng)尾坐標(biāo)圖上反映為:橫軸過(guò)度,縱軸過(guò)低。即長(zhǎng)尾在橫軸上非常之長(zhǎng),而對(duì)應(yīng)的縱坐標(biāo)指標(biāo),如單個(gè)軟件關(guān)注度、下載量、付費(fèi)量則極度偏低。從短期看,這樣的態(tài)勢(shì)對(duì)運(yùn)營(yíng)商非常有利,而對(duì)多數(shù)開(kāi)發(fā)者極其不利。從長(zhǎng)遠(yuǎn)看,對(duì)運(yùn)營(yíng)商也將逐漸變得不利,因?yàn)榇罅刻幱凇伴L(zhǎng)尾”上的開(kāi)發(fā)者將不再愿意投入過(guò)多。

      3 設(shè)計(jì)思想與方法

      本文提出將軟件商店模式、SaaS和Web聚合模式進(jìn)行整合,使得SaaS可向第三方軟件提供商開(kāi)放,并具有可聚合任意開(kāi)發(fā)商所接入的Web應(yīng)用功能。這種模式的核心在于:讓軟件商店的開(kāi)發(fā)者之間也開(kāi)展軟件的共享和聚合,這種共享與聚合可以采用免費(fèi)共享方式也可以采用付費(fèi)方式。其宗旨就是,降低單體應(yīng)用同質(zhì)化,提高單體應(yīng)用流通量,從而在提高平臺(tái)應(yīng)用豐度的同時(shí)也關(guān)注了質(zhì)量和收益。而要采用這樣的模式,則需要構(gòu)建一種滿足軟件商店中軟件聚合需求的平臺(tái)。這里講的聚合著力點(diǎn)在于Web應(yīng)用軟件的聚合,不是簡(jiǎn)單的Widget/Gadget或者數(shù)據(jù)聚合,這些軟件可獨(dú)立運(yùn)行,也可被組裝起來(lái)完成更大的需求目標(biāo),它不同于傳統(tǒng)意義上的組件復(fù)用。將這種軟件聚合的模式稱為Executable Web軟件模式。

      為了將Web上的各種應(yīng)用從更高層次進(jìn)行聚合,就需要一種關(guān)于Web應(yīng)用的發(fā)布、發(fā)現(xiàn)和集成機(jī)制。圖 1所示為 Web2.0及之前的示意,圖 2為Executable Web的示意,這兩個(gè)圖顯示了這兩種機(jī)制的不同[14]。Executable Web最初是Boothby[14]提到的一種想法,本文的思想與其相似,且字面含義明確,故沿用Executable Web這一概念,并借助軟件商店、SaaS等進(jìn)行了拓展和完善,以此為核心設(shè)計(jì)服務(wù)于電信行業(yè)、中小企業(yè)以及開(kāi)發(fā)者的SaaS生態(tài)環(huán)境。

      Executable Web類似于W3C中的Web服務(wù)的架構(gòu)[15],不同的是,這種架構(gòu)最終返回給調(diào)用程序或者用戶的是一個(gè)可直接使用的、具有UI交互能力的、完整意義上的應(yīng)用程序,而不是需要繼續(xù)加工的面向機(jī)器的服務(wù)。就其本質(zhì)來(lái)看,傳統(tǒng) Web服務(wù)是 M2M(machine to machine),而這種服務(wù)既可以是M2M也可以是M2P(machine to person)。

      圖3所示的Executable Web Ecosystem描述了基于Executable Web的SaaS生態(tài)環(huán)境。其主要組成為服務(wù)提供商、集成商、網(wǎng)頁(yè)提供商以及Executable Web支撐運(yùn)營(yíng)商(即SaaS運(yùn)營(yíng)商)。

      服務(wù)提供商提供各種各樣的服務(wù),包括SOAP Web服務(wù)、RESTful服務(wù)、RPC服務(wù)以及以腳本語(yǔ)言 (如 Google map JavaScript API)提供的Open API等。這些服務(wù)可以是免費(fèi)的,也可以是收費(fèi)的。

      網(wǎng)頁(yè)提供商編寫各種各樣的Widget/Gadget,甚至較之更復(fù)雜的完備意義上的網(wǎng)頁(yè),并將這些網(wǎng)頁(yè)提交到Executable Web支撐運(yùn)營(yíng)商。在提交網(wǎng)頁(yè)時(shí),根據(jù)需要和特性,公布該網(wǎng)頁(yè)的目的、傳值方式、URL等。支撐運(yùn)營(yíng)商根據(jù)提交時(shí)的參數(shù)進(jìn)行后臺(tái)索引、發(fā)布、管理。

      集成商可在服務(wù)提供商、網(wǎng)頁(yè)提供商的服務(wù)及網(wǎng)頁(yè)基礎(chǔ)上編寫更多、更復(fù)雜的服務(wù)、網(wǎng)頁(yè)甚至大型應(yīng)用。

      支撐運(yùn)營(yíng)商負(fù)責(zé)管理底層服務(wù),網(wǎng)頁(yè)服務(wù)的注冊(cè)、發(fā)布、管理,還負(fù)責(zé)提供用戶管理、平臺(tái)管理、開(kāi)發(fā)者管理、計(jì)費(fèi)管理、應(yīng)用管理等功能支撐。

      依據(jù)上述方法,設(shè)計(jì)了BellMashup Platform系統(tǒng)架構(gòu)。

      4 BellMash Platform系統(tǒng)架構(gòu)

      BellMash Platform系統(tǒng)架構(gòu)如圖4所示,其主要部分功能如下。

      BellMash Widget/Webpage、構(gòu)件 Workbench作為軟件開(kāi)發(fā)的SDE提供給開(kāi)發(fā)者以提高開(kāi)發(fā)速度、效率及支持軟件質(zhì)量保證;Workbench可基于Eclipse開(kāi)發(fā),其中配置Web頁(yè)面開(kāi)發(fā)向?qū)?,開(kāi)發(fā)模板。

      BellMash運(yùn)營(yíng)管理負(fù)責(zé)對(duì)開(kāi)發(fā)者、構(gòu)件、應(yīng)用、運(yùn)行平臺(tái)等進(jìn)行管理。

      BellMash Web服務(wù)器用于暴露各種服務(wù),包括Web服務(wù)、RESTful服務(wù)等。

      BellMash構(gòu)件服務(wù)器是符合SCA規(guī)范的構(gòu)建服務(wù)器,可采用Apache Tuscany搭建。SCA規(guī)范能夠采用依賴注入的技術(shù)將任意的服務(wù)進(jìn)行組裝集成,比如可以將傳統(tǒng)的POJO形式的Java類進(jìn)行封裝,可以將Web服務(wù)進(jìn)行封裝,可以將RESTful服務(wù)進(jìn)行封裝,可以將上述各類服務(wù)進(jìn)行組裝。

      5 客戶端聚合引擎

      在BellMash平臺(tái)中,實(shí)現(xiàn)基于Web聚合、用戶驅(qū)動(dòng)、網(wǎng)構(gòu)軟件理念的關(guān)鍵除了后臺(tái)服務(wù)構(gòu)件之外,還在于瀏覽器端的聚合框架。這種框架應(yīng)該能夠自動(dòng)發(fā)現(xiàn)、加載服務(wù)型的Web頁(yè)面,能夠聚合Web頁(yè)面形成更大的應(yīng)用,還需要具備網(wǎng)構(gòu)軟件所強(qiáng)調(diào)的動(dòng)態(tài)性、開(kāi)放性、演化性等。

      在聚合框架中,開(kāi)發(fā)者和用戶都可以通過(guò)非常簡(jiǎn)單的語(yǔ)句聚合新的Web應(yīng)用。新的應(yīng)用是位置透明的,由框架自動(dòng)搜尋、加載和呈現(xiàn)??蚣苓€可負(fù)責(zé)在同類Web應(yīng)用中加載使用體驗(yàn)更好、可信度更高、響應(yīng)更快的應(yīng)用;框架還可在無(wú)法尋址用戶既定Web應(yīng)用的情況下搜尋并加載替代應(yīng)用。

      要將Web應(yīng)用共享起來(lái),必須有一個(gè)機(jī)制,該機(jī)制能夠在Web上標(biāo)示這個(gè)Web應(yīng)用,這包括Intent Based軟件共享方法和聚合引擎。

      5.1 Intent Based軟件共享方法

      賦予Web應(yīng)用特定的功能描述,這種描述類似Android application Framework中的Intent機(jī)制[16]。每個(gè)Web應(yīng)用的公開(kāi)頁(yè)面將向Web暴露二元組。將這樣的二元組通過(guò)數(shù)據(jù)庫(kù)進(jìn)行注冊(cè)登記,當(dāng)其他應(yīng)用需要調(diào)用該功能時(shí),網(wǎng)頁(yè)代碼中只需要通過(guò)簡(jiǎn)單的數(shù)條Java Script語(yǔ)句調(diào)用。對(duì)于開(kāi)發(fā)者來(lái)講,在面對(duì)一個(gè)具體需求時(shí),其首先在粗粒度層次進(jìn)行需求分析,并向服務(wù)器端的application目錄進(jìn)行Intent關(guān)鍵字模糊查詢。如果能夠查詢到類似的Web應(yīng)用服務(wù),則可復(fù)用之,如果不能搜索到,則自主開(kāi)發(fā),并可提交到服務(wù)器端的application目錄,以被他人復(fù)用。一個(gè)典型的例子是:開(kāi)發(fā)者A開(kāi)發(fā)了一個(gè)聯(lián)系人應(yīng)用,開(kāi)發(fā)者B開(kāi)發(fā)了一個(gè)發(fā)短消息的應(yīng)用,A現(xiàn)在需要擴(kuò)展聯(lián)系人應(yīng)用,以使其能夠在用戶點(diǎn)擊聯(lián)系人的手機(jī)號(hào)碼時(shí)啟動(dòng)一個(gè)發(fā)送短消息的應(yīng)用。由于A沒(méi)有開(kāi)發(fā)短消息的能力和經(jīng)驗(yàn),A在系統(tǒng)中檢索類似Intent:Intent_SMS形式的Web應(yīng)用聲明。當(dāng)獲得這樣的應(yīng)用之后,在其代碼(客戶端代碼)中的clickEvent中調(diào)用類似如下代碼 Intent(Intent_SMS,arg_msg)即可調(diào)出Web上無(wú)論在哪里的由B開(kāi)發(fā)的發(fā)送短消息的應(yīng)用。arg_msg包含目的移動(dòng)電話號(hào)碼以及可選的消息,該參數(shù)有開(kāi)發(fā)者B定義。arg_msg通常以JSON/XML格式編碼,默認(rèn)的開(kāi)發(fā)者B的應(yīng)用接受JSON格式傳送的arg_msg。

      5.2 聚合引擎

      在聚合框架中,開(kāi)發(fā)者在一定的規(guī)則下開(kāi)發(fā)Web應(yīng)用,這些Web應(yīng)用中的網(wǎng)頁(yè)在傳統(tǒng)Web網(wǎng)頁(yè)基礎(chǔ)上嵌入了一種基于HTML5標(biāo)準(zhǔn)提出的新事件機(jī)制——PostMessage[17]。通過(guò)該機(jī)制繞開(kāi)瀏覽器同源策略(same origin policy,SOP)限制,該Web頁(yè)面可以同其他不同來(lái)源的頁(yè)面在同一網(wǎng)頁(yè)進(jìn)行通信,從而達(dá)到聚合的目的。

      圖5和圖6顯示了整體聚合機(jī)制以及聚合引擎所在的位置。一個(gè)開(kāi)發(fā)者通過(guò)BellMash平臺(tái)搜索已注冊(cè)的Web應(yīng)用數(shù)據(jù),搜索到applicationService1和applicationService2滿足其需求。開(kāi)發(fā)者通過(guò)Intent機(jī)制,將二者結(jié)合起來(lái)。需要強(qiáng)調(diào)的是,在這個(gè)過(guò)程中,開(kāi)發(fā)者并不是將這兩個(gè)應(yīng)用的代碼融合到一個(gè)Web頁(yè)面中,開(kāi)發(fā)者僅僅使用Intent聲明了要使用那個(gè)applicationService,在隨后的聚合過(guò)程中,聚合引擎將可以把不同來(lái)源的應(yīng)用聚合在用戶界面中。

      開(kāi)發(fā)者將applicationService1和applicationService2在開(kāi)發(fā)階段聚合成新的應(yīng)用application1;開(kāi)發(fā)者也可以直接用applicationService2開(kāi)發(fā)新的應(yīng)用application2,隨后他將把a(bǔ)pplication1和application2發(fā)布到服務(wù)器上,并且可將其注冊(cè)到BellMash的application目錄上以供其他開(kāi)發(fā)者共享使用。

      圖6表示的是在用戶使用階段,聚合引擎的工作機(jī)制。一個(gè)認(rèn)證用戶可以從application目錄中挑選滿足需求的應(yīng)用,這些應(yīng)用條目將被自動(dòng)記錄到用戶的application目錄中,并且在適當(dāng)?shù)臅r(shí)候保持同瀏覽器端用戶離線application目錄的同步。依然以contact和sendsms為例,把contact作 為 applicationService1, 把 sendsms作 為applicationService2。當(dāng)用戶啟動(dòng)application服務(wù)1時(shí),啟動(dòng)過(guò)程從離線數(shù)據(jù)庫(kù)獲取了applicationService1的URL,隨即聚合引擎依據(jù)該URL從第三方服務(wù)器上調(diào)出contact應(yīng)用頁(yè)面。此時(shí)聚合引擎沒(méi)有進(jìn)行任何關(guān)于sendsms機(jī)applicationService2的操作。當(dāng)用戶點(diǎn)擊contact中的Mobile電話號(hào)碼時(shí),該過(guò)程通過(guò)代碼Intent(Intent_SMS,arg_msg)在Intent analyzer協(xié)助下對(duì)sendsms及applicationService2進(jìn)行定位、加載、賦值等一系列操作,最終顯示給用戶一個(gè)新的界面,該界面即為發(fā)送短信的界面,并且其上依據(jù)自動(dòng)填充arg_msg的相關(guān)數(shù)據(jù),此外,用戶還可以根據(jù)需要修改該數(shù)據(jù),最后將短信發(fā)送出去。

      6 原型系統(tǒng)

      根據(jù)上述架構(gòu),研究團(tuán)隊(duì)開(kāi)發(fā)了一個(gè)可以實(shí)際運(yùn)行的原型系統(tǒng)。該系統(tǒng)主要實(shí)現(xiàn)聚合引擎部分,并整合電信行業(yè)的Parlay X能力,將其封裝為Restful API,提供通信支持。BellMash原型平臺(tái)的用戶界面參考開(kāi)源Web desktop[18]。開(kāi)始菜單中顯示所有的應(yīng)用,包括用戶從application目錄中選擇的,也包括系統(tǒng)級(jí)默認(rèn)功能,如application目錄、應(yīng)用注冊(cè)模塊以及同步服務(wù)器等。

      6.1 個(gè)性化企業(yè)應(yīng)用實(shí)例

      為了測(cè)試Web 上任何位置的應(yīng)用之間的聚合運(yùn)行,研究團(tuán)隊(duì)在不同的域上分別開(kāi)發(fā)了聯(lián)系人應(yīng)用、基于電信位置服務(wù)的定位應(yīng)用、發(fā)送短消息應(yīng)用、第三方呼叫應(yīng)用。這些應(yīng)用都是相互獨(dú)立的應(yīng)用,都可以獨(dú)立使用,但是在某些情況下,可以將應(yīng)用聚合起來(lái)滿足特定需求場(chǎng)景,比如物流跟蹤。

      場(chǎng)景如下:假如原始的聯(lián)系人應(yīng)用中顯示的是所有配送員的個(gè)人信息,包括手機(jī)號(hào)碼信息?,F(xiàn)在物流公司希望隨時(shí)了解配送員的當(dāng)前位置,他們也希望其客戶能夠隨時(shí)了解配送員的當(dāng)前位置,以提高服務(wù)滿意度。同時(shí),物流公司后臺(tái)管理員還希望隨時(shí)快速地通過(guò)短信或者撥打電話聯(lián)系配送員。物流公司希望開(kāi)發(fā)上述功能的Web應(yīng)用,開(kāi)發(fā)周期要求在兩周之內(nèi)。

      面對(duì)這樣的場(chǎng)景,開(kāi)發(fā)者首先在BellMash中搜索Intent滿足sendsms、location、call等關(guān)鍵字的應(yīng)用。開(kāi)發(fā)者搜索到了相關(guān)的應(yīng)用,并且也獲得了調(diào)用規(guī)范,即上文所述的Intent二元組,開(kāi)發(fā)者只需要調(diào)用Intent(Intent_SMS,arg_msg)這樣的代碼即可。在這樣的情況下,開(kāi)發(fā)者對(duì)原有聯(lián)系人應(yīng)用進(jìn)行了適當(dāng)修改,在contact中每個(gè)配送員條目下添加了:發(fā)送短信的圖標(biāo)及對(duì)應(yīng)的功能;根據(jù)手機(jī)定位的圖標(biāo)及功能;第三方呼叫的圖標(biāo)及功能。至此,該聚合應(yīng)用完成。經(jīng)過(guò)測(cè)試,滿足了物流公司的需求。開(kāi)發(fā)時(shí)間:3天。

      6.2 Bellmash Platform上的應(yīng)用開(kāi)發(fā)流程

      典型的開(kāi)發(fā)流程包括開(kāi)發(fā)者搜索Intent的過(guò)程,開(kāi)發(fā)者定制應(yīng)用以及開(kāi)發(fā)者發(fā)布自己的應(yīng)用的過(guò)稱,圖 7所示為開(kāi)發(fā)流程。

      7 下一步研究

      本文所設(shè)計(jì)的BellMash Platform原型平臺(tái)的主體是聚合引擎以及后臺(tái)電信能力服務(wù),融合SaaS和軟件商店實(shí)踐Executable Web理念。BellMash是平臺(tái)原型,它支持在其上進(jìn)行不斷的演化、擴(kuò)展。因此,從理論上來(lái)看,在這樣的平臺(tái)上所演化的具體應(yīng)用是因需求而變的,應(yīng)用沒(méi)有數(shù)目限制,應(yīng)用的類型也沒(méi)有預(yù)期性,而這樣的特征能夠?yàn)閼?yīng)用的個(gè)性化提供支撐。原型系統(tǒng)設(shè)計(jì)以及典型案例測(cè)試表明本方案為SaaS提供了一種滿足多領(lǐng)域、需求集合交集較小的中小企業(yè)個(gè)性化、頻繁變化的應(yīng)用需求的可行技術(shù)路線。

      為了提供安全可靠的SaaS服務(wù),還有關(guān)鍵問(wèn)題需要進(jìn)一步研究,這些問(wèn)題包括:由于應(yīng)用不再由SaaS運(yùn)營(yíng)商獨(dú)立提供,因而應(yīng)用的可靠性、安全性技術(shù)將有別于傳統(tǒng)SaaS模式;由于應(yīng)用聚合可能在不同的應(yīng)用提供商之間發(fā)生,數(shù)據(jù)的安全性也將有別于傳統(tǒng)SaaS技術(shù)。這些問(wèn)題是構(gòu)建新型SaaS生態(tài)環(huán)境的必要保障。下一步研究將重點(diǎn)集中在以下兩方面。

      (1)數(shù)據(jù)的保護(hù)機(jī)制

      通過(guò)構(gòu)建應(yīng)用安全沙箱,使得SaaS應(yīng)用軟件的運(yùn)行限制在安全框架之內(nèi),對(duì)于大多數(shù)應(yīng)用,數(shù)據(jù)只在瀏覽器本地駐留,不允許不同提供商的應(yīng)用將數(shù)據(jù)通過(guò)網(wǎng)絡(luò)發(fā)送到其他域;對(duì)于必須同服務(wù)器進(jìn)行交互的數(shù)據(jù),通過(guò)制定技術(shù)和機(jī)制兩個(gè)層面的安全協(xié)議,確保數(shù)據(jù)被限定在特定的域中。

      (2)應(yīng)用的多實(shí)例機(jī)制

      對(duì)于任意應(yīng)用,采用類似云存儲(chǔ)中數(shù)據(jù)備份機(jī)制確保應(yīng)用高可靠性。應(yīng)用提供商可以提供任意套實(shí)例,但必須在SaaS運(yùn)營(yíng)商域部署至少一套實(shí)例,從而保證用戶總是能訪問(wèn)應(yīng)用。對(duì)于同類型應(yīng)用,SaaS運(yùn)營(yíng)商將首先查找用戶配置的應(yīng)用的實(shí)例,如果所有實(shí)例不可訪問(wèn),則查找其他等價(jià)應(yīng)用實(shí)例以提供應(yīng)急服務(wù)。

      1 Maximil ien E M,Ajith Ranabahu,Stefan Tai.Swashup:situational web applications mashups.Companion to the 22nd ACM SIGPLAN Conference on Object-Oriented Programming Systems and Applications Companion,ACM,2007

      2 Mehmet Altinel,Brown.Damia:a data mashup fabric for intranet applications.Proceedings of the 33rd International Conference on Very Large Data Bases,VLDB Endowment,2007

      3 Katsuhisa Maruyama,Makoto Matsushita,Shinichiro Yamamoto.Japanese workshop on leveraging web2.0 technologies in software development environments (WebSDE).Proceedings of the 21st IEEE International Conference on Automated Software Engineering(ASE'06),Tokyo,Japan,2006

      4 QEDWiki.Ibm.http://services.alphaworks.ibm.com/qedwiki/

      5 Tim O'reilly.What is Web 2.0:design patterns and business models for the next generation of software.Communications&Strategies,2007,1(17)

      6 IBM Mashup Center初探:第一部分.http://www.ibm.com/develo perworks/cn/data/library/techarticles/dm-0808wumd/index.html

      7 Hoyer V,Fischer M.Market overview of enterprise mashup tools.Proceedings of the 6th International Conference on Service-Oriented Computing,Springer-Verlag,2008

      8 Yahoo.Pipes:rewire the web.http://pipes.yahoo.com/pipes/

      9 Intel.Intel Mash Maker.http://mashmaker.intel.com/web/

      10 Rama Gurram M.A web based mashup platform for enterprise 2.0 web information systems engineering-WISE 2008 Workshops.http://dx.doi.org/10.1007/978-3-540-85200-1_17

      11 Open Mashup Alliance.The open mashup alliance for enterprise mashups.http://www.openmashup.org/

      12 楊芙清,呂建,梅宏.網(wǎng)構(gòu)軟件技術(shù)體系:一種以體系結(jié)構(gòu)為中心的途徑.中國(guó)科學(xué)E輯:信息科學(xué),2008,38(6):818~828

      13 楊芙清,梅宏.網(wǎng)構(gòu)軟件:未來(lái)的新型軟件形態(tài).中國(guó)教育網(wǎng)絡(luò),2005(7)

      14 Rod Boothby.The executable web.http://innovationcreators.com/wp/p=300

      15 W3c.Web services Architecture.http://www.w3.org/TR/ws-arch/

      16 Speckmann Benjamin.The Android mobile platform.http://www.w3.org/TR/html5/comms.html

      17 Ext Js Inc.ExtTop-Desktop Sample App.http://www.extjs.com/deploy/dev/examples/desktop/desktop.html

      猜你喜歡
      租戶開(kāi)發(fā)者商店
      二手商店
      軍事文摘(2023年16期)2023-09-04 07:11:12
      天邊的白云商店
      大灰狼(2019年10期)2019-12-02 16:44:44
      逛玩具商店
      無(wú)名火
      基于MVC模式的多租戶portlet應(yīng)用研究*
      16%游戲開(kāi)發(fā)者看好VR
      CHIP新電腦(2016年3期)2016-03-10 13:06:42
      iOS開(kāi)發(fā)者調(diào)查
      電腦迷(2015年8期)2015-05-30 12:27:10
      iOS開(kāi)發(fā)者調(diào)查
      電腦迷(2015年4期)2015-05-30 05:24:09
      租戶是大爺
      特別文摘(2014年17期)2014-09-18 01:31:21
      企業(yè)多租戶云存儲(chǔ)平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)
      云阳县| 泸水县| 睢宁县| 孙吴县| 龙山县| 茌平县| 迁西县| 岫岩| 乐至县| 元阳县| 拉萨市| 石门县| 拜城县| 买车| 墨脱县| 贡觉县| 宜宾市| 大新县| 吉隆县| 保靖县| 勃利县| 开原市| 商都县| 夏河县| 兴安县| 巫溪县| 托里县| 娄底市| 五指山市| 临城县| 县级市| 福建省| 玉屏| 长沙市| 诏安县| 门源| 新郑市| 额济纳旗| 石渠县| 新河县| 昌邑市|