《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 服務構件模型的研究與設計
服務構件模型的研究與設計
來源:微型機與應用2014年第7期
丁向東,楊 靜
(貴州大學 計算機科學與技術學院,貴州 貴陽550025)
摘要: 針對如何更高效和準確地將已存在的Web服務集成到業(yè)務流程中,提出了服務構件模型。該模型以Web服務為業(yè)務功能實現的基礎,用BPMN建模用戶需求,輸出為可執(zhí)行的BPEL模型。該服務構件模型內部對原子服務進行了重新定義,便于服務的查找;而且加入了服務的QoS特征,便于服務的選擇。
Abstract:
Key words :

摘  要: 針對如何更高效和準確地將已存在的Web服務集成到業(yè)務流程中,提出了服務構件模型。該模型以Web服務為業(yè)務功能實現的基礎,用BPMN建模用戶需求,輸出為可執(zhí)行的BPEL模型。該服務構件模型內部對原子服務進行了重新定義,便于服務的查找;而且加入了服務的QoS特征,便于服務的選擇。
關鍵詞: Web服務;業(yè)務流程管理;BPMN;BPEL

 企業(yè)應用的復雜度越來越大,關鍵性遺留系統(tǒng)也越來越多,為了解決因遺留系統(tǒng)而出現的信息孤島、企業(yè)間的業(yè)務交互以及數據共享等問題,面向服務架構SOA(Service-Oriented Architecture)、業(yè)務流程管理BPM(Business Process Management)以及Web服務等技術得到了很大的發(fā)展,并且相關的實現技術也日益成熟[1]。
 Web服務是SOA的主要實現技術,它提供了標準的訪問接口以便在服務調用及組合方面變得更加方便[2]。目前,存在大量可用的Web服務,包括企業(yè)內部的、商用的以及開源的,它們各自有優(yōu)勢,怎樣選擇一個能夠滿足業(yè)務需求以及非功能需求的服務便是一個比較難的問題?,F在的應用系統(tǒng)在業(yè)務上變得越來越復雜,這些業(yè)務不只是針對于本系統(tǒng),還可能與其他系統(tǒng),特別是與其他公司的系統(tǒng)進行交互。由此,針對于每一項業(yè)務過程,都需要有一個標準的描述方式,這樣的流程描述不只是針對于業(yè)務分析人員,也要便于開發(fā)人員能夠在程序中直接應用。業(yè)務流程管理很大的用途或特點在于對Web服務的編排[3],根據需求,按照某種邏輯或者規(guī)則將存在的Web服務組裝成一個可執(zhí)行的流程,該流程可以通過Web服務的接口標準暴露成為流程服務供其他應用調用,也可以作為一個流程的子流程。目前,已存在很多的業(yè)務流程規(guī)范,主要分成兩個類別,一個是基于可視化圖形的,如BPMN、BPML、XPDL等;另一個是基于塊結構的語言,如WS-BPEL,可以直接被流程引擎執(zhí)行。經過實際的應用和驗證,WS-BPEL已經成為事實上業(yè)務流程運行時描述語言的標準,是專門為Web服務編排和組合描述而定制的一種規(guī)范標準[4]。目前,很多執(zhí)行引擎都支持BPEL,并且也存在相關的圖形編輯工具以減少BPEL建模的復雜度[5]。然而,各個建模工具實現方式各不相同,對BPEL各個元素的圖形表示也沒有一個統(tǒng)一的標準定義,再則,BPEL屬于塊結構語言,對于業(yè)務流程的分析與設計人員顯得比較抽象和晦澀?;谶@樣的問題以及為了提高業(yè)務人員對業(yè)務流程的建模效率,業(yè)務流程建模符號BPMN(Business Process Modeling Notation)被正式提出為標準[6]。它定義了各個元素的圖形表示,便于業(yè)務人員更好地理解。
 基于以上提出的在業(yè)務和功能上的需求以及可用的建模方法和工具,本文提出了一種服務構件模型,它通過BPMN來描述業(yè)務需求,然后從大量的Web服務中選擇滿足要求的服務進行綁定,最后生成可執(zhí)行的BPEL模型以及流程服務。主要是設計一種完整的流程模型來描述用戶調用Web服務的需求、服務的匹配和綁定以及可執(zhí)行流程的生成。用戶只需要將BPMN文件提交到模型中,處理后便可以自動地部署對應的可執(zhí)行流程服務,然后在執(zhí)行引擎中運行。
 本文提出的服務構建模型是以Web服務為基礎的,這些Web服務可能來自不同的提供者,可能是本公司的系統(tǒng),也可能是其他合作者提供的服務,比如對于電子商務網站而言,一些業(yè)務流程中的服務就會來自于其他公司,如第三方支付服務、物流服務等。對于要調用這些Web服務的客戶端,必須先通過BPMN進行需求建模,BPMN模型以圖形符號的形式描述了客戶端的功能需求。隨后,該BPMN會被切分成原子服務,該原子服務的格式是在WSDL基礎上重新定義的,與服務庫里的服務格式相同;服務庫里的服務是通過在線抓取和人工錄入的形式完成的,這些服務都是以WSDL進行描述,通過與BPMN原子服務切分方式一樣的形式進行WSDL的解析。最后形成的原子服務是以接口方法為單位的,這樣在服務的匹配中就會減少由于每個接口存在多個方法的干擾。整個模型中都是以原子服務為基礎,因此,以下對原子服務的定義進行了詳細的說明并且給出了相應的xml格式。
1 原子服務
 原子服務AS為一個6元組,形式如下:
 AS:<RSc,FSc,FBSc,Sign,FuncR NonFuncR>;
 其中Rsc為原子服務所屬源服務的WSDL。Fsc是由方法表示的服務,形式為ServiceName(in:U,out:V),U為服務的輸入變量,V為服務的輸出變量。FBSc為該原子服務調用時的條件限制,形式為<PreCondition,PostCondition>,分別表示為服務調用的前置條件和后置條件。Sign為服務標示,形式為<Type,URL>,其中Type表示服務所屬的類型,Type &isin;(Local Service,Partener Service,Openservice),表示該服務所屬的類型,分別為本地服務、伙伴服務以及開源服務;URL表示該服務調用的地址。FuncR為該原子服務的屬性定義,形式為<Desc,Class,Domain,In,Out>,Desc表示服務的描述信息;Class表示該原子服務所屬源服務的名稱,因為原子服務由源服務接口的方法生成的,而一個接口包含了多個方法,所以這些方法都屬于統(tǒng)一Class;Domain表示該服務所屬的域,也就是可調用服務的名字空間;In表示服務的輸入;Out表示服務的輸出。NonFuncR為該服務的非功能性描述,形式為<ResponseTime,Availability,Invocation,Cost,Rank,Level>,其中,ResponseTime為發(fā)送請求到接收響應的時間;Availability為成功調用的服務次數與調用的總次數的比例,aavailability&isin;[0,1];Invocation為單位時間內(1 min)服務的調用次數,Invocation&isin;[0,1];Cost為調用該服務的費用;Rank為用戶滿意度,用1~5之間的整數表示,數值越大滿意度越高;Level為服務等級,形式為[LocalService=2,PartnerService=1,OpenService=0],值越大等級就越高,當服務庫里有多個能滿足需求的服務時,優(yōu)先選擇的順序為LocalService、PartnerService、OpenService。
 以上便是對原子服務的定義,主要是依據WSDL中PortType的operation元素為主體進行定義,該服務的視圖形式為XML文檔,如圖1所示,唯一的改進就是在此基礎上增加了NonFuncR元素表示服務的非功能性特征,當出現多個服務滿足需求時進行服務的選擇。對于BPMN文檔的解析也是依據該原子服務的格式進行切分的,然而,在切分時只關注于功能的調用部分,即重點是切分出FuncR數據。

2 服務構件模型層次結構
 本文研究的服務構件模型會涉及到多個方面,以上給出的原子服務是整個模型的基礎,圖2中以分層的形式顯示了該模型涉及到的功能模塊結構,從底層的服務構件發(fā)布到上層流程應用的部署和調用。
圖2中,基礎服務層作為整個服務模型的基礎,利用SCA框架將組件暴露為Web服務,為服務流程的各個業(yè)務需求提供功能接口;服務解析層根據原子服務格式將需求的BPMN模型以及服務庫的WSDL進行解析;服務匹配層主要是對功能性需求進行匹配,如果出現多個服務時,利用其QoS屬性選擇一個最優(yōu)的;最上層便是面向用戶的接口層,是將服務匹配成功后通過模型轉換生成的BPEL部署到執(zhí)行引擎中。
3 服務構件模型流程
 圖2顯示了模型的層次圖,包含了具體的服務模塊以及相應的操作,下層對上層提供接口或服務。模型層次圖只是在總體上顯示了模型執(zhí)行的各個階段,并沒有給出模型內部具體的執(zhí)行細節(jié)。圖3表示服務構件模型的流程,該流程描述了用戶進行業(yè)務功能訪問時的內部運行流程。

 圖3顯示了用戶依據業(yè)務需求進行服務的調用,在BPMN需求模型中,需要實現的功能都是由Web服務完成的。綁定的服務都是來自于本地服務庫,該服務庫在原來的基礎上增加了服務的QoS屬性,便于在多服務中的選擇。服務庫的更新和用戶請求的處理是同時進行的,兩者是不同的進程,因此,整個服務構件模型的實現都是部署在服務端,客戶端只需要在應用程序中通過相應的接口或者在客戶端界面上提交BPMN的XMI文件即可完成服務的自動匹配和BPEL的生成。

 本文從整體上分析與設計了服務構件模型,該模型利用BPMN為需求建模,BPEL為輸出模型,Web服務為功能需求提供實現接口。在設計中,對原子服務進行了重新定義使其能更好地完成服務匹配的要求;并且給出了該模型的層次圖以顯示該模型執(zhí)行的各個階段,每一個階段都相對獨立;最后還給出模型的執(zhí)行流程完整地描述了服務調用的整體流程。該模型的提出為接下來的工具實現奠定了理論基礎,對于接下來要實現的工具,會增加服務的形式化來實現服務查找和選擇的智能性。該工具會部署在服務器端,通過該工具可以方便地進行Web服務的調用。
參考文獻
[1] 梁愛虎.SOA思想、技術與系統(tǒng)集成應用詳解[M].北京:電子工業(yè)出版社,2007.
[2] 高哲.基于SOA的軟件架構的研究與應用[D].武漢:武漢理工大學碩士研究生論文,2007.
[3] 劉華峰,胡元嶺.基于Web服務的業(yè)務流程管理(BPM)的實現方法[J].機電產品開發(fā)與創(chuàng)新,2009,22(3):68-69.
[4] 吳麗賢,和力.基于BPMN的Web服務合成框架[J].開發(fā)案例,2009(301):171.
[5] 胡燕梅,邱錦倫.用BPMN輔助整合Web Service[J].計算機工程與設計,2007,28(19):4785-4786.
[6] 秦天保.從BPMN到可執(zhí)行業(yè)務流程建模[J].計算機應用,2006(26):266-267.

此內容為AET網站原創(chuàng),未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲欧美精品在线| 欧美日韩国产探花| 一区二区三区三区在线| 亚洲福利免费| 欧美亚洲视频| 亚洲欧美日韩综合aⅴ视频| 亚洲视频一区在线观看| 日韩亚洲综合在线| 99re视频这里只有精品| 亚洲人永久免费| 亚洲精品免费网站| 最新日韩中文字幕| 亚洲日本中文字幕| 亚洲精品在线视频观看| 亚洲精品午夜| 99热在这里有精品免费| 99视频热这里只有精品免费| 日韩亚洲欧美中文三级| 一区二区三区视频在线观看| 99成人免费视频| 一区二区三区国产在线观看| 99视频一区| 亚洲一区三区视频在线观看| 亚洲专区一区| 欧美专区在线播放| 亚洲国产精品一区制服丝袜| 亚洲国产免费看| 亚洲精品中文字幕在线观看| 中文欧美字幕免费| 午夜国产一区| 久久久免费精品视频| 免费成人高清视频| 欧美日产一区二区三区在线观看| 欧美日韩精品免费 | 在线精品高清中文字幕| 亚洲国产你懂的| 一区二区三区视频在线观看| 亚洲在线中文字幕| 韩国亚洲精品| 欧美激情一区二区三区在线视频 | 狠狠色伊人亚洲综合成人| 在线精品视频一区二区| 亚洲第一在线视频| 亚洲最黄网站| 亚洲欧美久久| 亚洲国产欧美一区二区三区同亚洲 | 久久国产高清| 日韩视频久久| 翔田千里一区二区| 免费成人毛片| 国产精品久久久久久av下载红粉 | 欧美一进一出视频| 亚洲精品黄色| 亚洲女优在线| 嫩草影视亚洲| 国产精品久久91| 在线观看精品一区| 亚洲视频播放| 亚洲国产精品嫩草影院| 亚洲一区二区三区乱码aⅴ蜜桃女| 久久国产一区二区| 欧美日韩国产精品一卡| 国产一区二区中文| 一区二区三区福利| 亚洲激情电影在线| 销魂美女一区二区三区视频在线| 欧美大片免费观看| 国产一区二区精品久久91| 亚洲六月丁香色婷婷综合久久| 午夜精品短视频| 一片黄亚洲嫩模| 欧美中在线观看| 欧美日韩国产区一| 在线播放一区| 亚洲免费视频在线观看| 亚洲欧洲综合另类| 久久国产成人| 欧美视频一区二区三区…| 一区免费在线| 欧美一区二区三区四区在线观看地址| 一区二区三区精品视频| 免费成人你懂的| 国产日韩专区| 亚洲一区二区三区涩| 99国产精品久久久久老师 | 中日韩视频在线观看| 久久成人精品电影| 欧美日韩亚洲91| 亚洲大胆人体在线| 亚洲欧美色婷婷| 亚洲少妇自拍| 欧美激情精品久久久久久蜜臀| 国产亚洲精品久久久久婷婷瑜伽| 一本色道久久综合一区 | 久久经典综合| 国产精品久久久久久久电影| 亚洲人在线视频| 亚洲日产国产精品| 快she精品国产999| 国产人成精品一区二区三| 一区二区三区成人| 一区二区黄色| 欧美激情国产日韩精品一区18| 极品中文字幕一区| 久久精品99国产精品| 久久国产欧美精品| 国产精品区一区二区三区| 日韩亚洲在线| 一区二区91| 欧美日韩一区在线观看视频| 亚洲精品在线免费| 一区二区不卡在线视频 午夜欧美不卡'| 牛牛精品成人免费视频| 樱桃视频在线观看一区| 久久精品久久综合| 久久最新视频| 尤物精品国产第一福利三区| 久久精品视频在线| 麻豆91精品91久久久的内涵| 激情五月综合色婷婷一区二区| 欧美在线视频全部完| 久久嫩草精品久久久精品| 国产在线拍偷自揄拍精品| 欧美怡红院视频| 久久精品论坛| 黑人巨大精品欧美一区二区| 亚洲高清不卡在线观看| 欧美成人精品在线| 亚洲啪啪91| 在线视频精品一区| 欧美亚州韩日在线看免费版国语版| 亚洲乱码国产乱码精品精 | 午夜精品久久久久久久久久久久| 国产精品福利影院| 亚洲亚洲精品在线观看| 午夜精品久久99蜜桃的功能介绍| 国产精品久久婷婷六月丁香| 亚洲欧美日本精品| 久久视频精品在线| 亚洲国产精品热久久| 宅男噜噜噜66国产日韩在线观看| 欧美色视频日本高清在线观看| 久久精品国产精品 | 国产日韩成人精品| 久久av一区| 欧美成人福利视频| 亚洲日本欧美| 先锋影音久久| 韩日精品视频| 日韩亚洲欧美一区| 国产精品免费电影| 欧美在线视频免费播放| 欧美本精品男人aⅴ天堂| aa级大片欧美| 久久成人一区| 在线色欧美三级视频| 亚洲午夜久久久久久尤物| 国产欧美日韩专区发布| 亚洲福利av| 欧美网站在线| 欧美一区日本一区韩国一区| 女同性一区二区三区人了人一| 日韩午夜高潮| 久久久国产精品一区| 亚洲精品久久久久久一区二区| 亚洲欧美日韩专区| 在线观看av一区| 亚洲制服丝袜在线| 激情文学综合丁香| 亚洲一区一卡| 激情五月综合色婷婷一区二区| 一区二区三区日韩欧美精品| 国产一区二区三区久久久| 日韩视频一区二区三区| 国产欧美日韩亚洲精品| 亚洲人体一区| 国产美女搞久久| 亚洲美女电影在线| 国产欧美一区二区精品婷婷| 亚洲精品欧美专区| 国产精品高清在线| 亚洲激情校园春色| 国产精品午夜在线观看| 亚洲美洲欧洲综合国产一区| 欧美视频在线视频| 亚洲国语精品自产拍在线观看| 国产精品久久久999| 亚洲美女在线观看| 国产亚洲欧美另类一区二区三区| 一本不卡影院| 精品成人在线视频| 欧美一区视频在线| 亚洲精品在线观看视频| 久久夜色精品国产欧美乱| 亚洲一级一区| 欧美日韩成人综合天天影院| 久久成年人视频| 国产精品毛片高清在线完整版| 亚洲精品女av网站| 韩国亚洲精品|