1) 提取各個(gè)應(yīng)用系統(tǒng)中需要對(duì)外暴露的功能模塊。這些功能模塊通常都是一些能夠清晰完整地表現(xiàn)其業(yè)務(wù)價(jià)值的軟件實(shí)體, 該軟件實(shí)體包含了它所能提供的所有服務(wù)。
2) 將這些功能模塊表現(xiàn)為服務(wù)組件的形式。定義服務(wù)的描述信息、服務(wù)的接口以及調(diào)用服務(wù)所需要的定位信息等。將軟件實(shí)體的概念模型轉(zhuǎn)換成實(shí)際的服務(wù)模型。
3) 將已實(shí)現(xiàn)的服務(wù)發(fā)布到服務(wù)注冊(cè)器,供其他服務(wù)調(diào)用者進(jìn)行查找和綁定。這個(gè)步驟可以視企業(yè)集成的具體情況選擇使用。
4) 綁定和調(diào)用服務(wù), 將各個(gè)應(yīng)用系統(tǒng)集成起來, 實(shí)現(xiàn)企業(yè)應(yīng)用在功能層面的集成(見圖3) 。
3.2實(shí)施建議
“整合是分階段、循序漸進(jìn)、逐步實(shí)現(xiàn)的。如果把企業(yè)的所有經(jīng)營(yíng)活動(dòng)看作是一個(gè)個(gè)服務(wù),那么整合就是要將企業(yè)內(nèi)外部的各種服務(wù)有機(jī)地聯(lián)結(jié)起來。首先可以只需創(chuàng)建單獨(dú)的服務(wù);接下來不僅可以創(chuàng)建服務(wù),而且可以開始將業(yè)務(wù)功能集成到SOA中;第三步涉及將企業(yè)IT基礎(chǔ)設(shè)施轉(zhuǎn)換到SOA模型;最后則集中于轉(zhuǎn)換業(yè)務(wù)模型,以使之成為適應(yīng)需求變化的模型。
對(duì)具體的整合對(duì)象,按照建模、裝配、部署、管理四個(gè)階段實(shí)現(xiàn)整合。在建模階段,可以定義業(yè)務(wù)模型或流程、軟件模型和SOA模型。之后就可以創(chuàng)建一組服務(wù),這組服務(wù)可以與已發(fā)布的通用接口一起重用;在部署階段,開發(fā)人員可以提取創(chuàng)建的服務(wù),并把它們放在一個(gè)可執(zhí)行、可管理的環(huán)境之中;在使用階段,根據(jù)軟件模型來裝配應(yīng)用程序,并且測(cè)試其軟件質(zhì)量以及非功能性需求,比如性能、可伸縮性等等;最后的管理階段是一個(gè)長(zhǎng)期的過程,在這個(gè)階段中,可以監(jiān)控并管理安全性和使用,以及在許多與可能已經(jīng)為SOA制訂好的服務(wù)級(jí)協(xié)定或策略相對(duì)應(yīng)的方面比較其性能。
這樣由小及大,逐漸在企業(yè)業(yè)務(wù)中進(jìn)行整合擴(kuò)散,并形成整個(gè)企業(yè)的IT轉(zhuǎn)型,最終通過全面整合實(shí)現(xiàn)隨需應(yīng)變的企業(yè)IT架構(gòu)。
3.3 基于Web服務(wù)體系結(jié)構(gòu)的SOA企業(yè)信息系統(tǒng)整合
作為一種概念,SOA已經(jīng)成熟。比較來說,現(xiàn)在Web服務(wù)是實(shí)現(xiàn)SOA的方式。Web服務(wù)是由URL (Uniform Resource Locator) 確定的軟件應(yīng)用, 其接口和綁定能夠以XML(ExtensibleMarkup Language) 的形式定義、描述和發(fā)現(xiàn), 并且支持借助Internet協(xié)議, 如SOAP ( Simple ObjectAccess Protocol) 。采用XML 格式消息的方式與其他軟件應(yīng)用交互[ 5 ] 。Web 服務(wù)采用[ 6 ]WSDL(Web ServicesDescrip tion Language) 作為其服務(wù)接口描述語言、通過UDD I (Universal Descrip tion, Discovery and Integration) 協(xié)議規(guī)范進(jìn)行Web服務(wù)的網(wǎng)上注冊(cè)和服務(wù)查找定位, 并使用SOAP傳輸協(xié)議在網(wǎng)絡(luò)間進(jìn)行XML格式的信息交互。
2) 將這些功能模塊表現(xiàn)為服務(wù)組件的形式。定義服務(wù)的描述信息、服務(wù)的接口以及調(diào)用服務(wù)所需要的定位信息等。將軟件實(shí)體的概念模型轉(zhuǎn)換成實(shí)際的服務(wù)模型。
3) 將已實(shí)現(xiàn)的服務(wù)發(fā)布到服務(wù)注冊(cè)器,供其他服務(wù)調(diào)用者進(jìn)行查找和綁定。這個(gè)步驟可以視企業(yè)集成的具體情況選擇使用。
4) 綁定和調(diào)用服務(wù), 將各個(gè)應(yīng)用系統(tǒng)集成起來, 實(shí)現(xiàn)企業(yè)應(yīng)用在功能層面的集成(見圖3) 。
3.2實(shí)施建議
“整合是分階段、循序漸進(jìn)、逐步實(shí)現(xiàn)的。如果把企業(yè)的所有經(jīng)營(yíng)活動(dòng)看作是一個(gè)個(gè)服務(wù),那么整合就是要將企業(yè)內(nèi)外部的各種服務(wù)有機(jī)地聯(lián)結(jié)起來。首先可以只需創(chuàng)建單獨(dú)的服務(wù);接下來不僅可以創(chuàng)建服務(wù),而且可以開始將業(yè)務(wù)功能集成到SOA中;第三步涉及將企業(yè)IT基礎(chǔ)設(shè)施轉(zhuǎn)換到SOA模型;最后則集中于轉(zhuǎn)換業(yè)務(wù)模型,以使之成為適應(yīng)需求變化的模型。
對(duì)具體的整合對(duì)象,按照建模、裝配、部署、管理四個(gè)階段實(shí)現(xiàn)整合。在建模階段,可以定義業(yè)務(wù)模型或流程、軟件模型和SOA模型。之后就可以創(chuàng)建一組服務(wù),這組服務(wù)可以與已發(fā)布的通用接口一起重用;在部署階段,開發(fā)人員可以提取創(chuàng)建的服務(wù),并把它們放在一個(gè)可執(zhí)行、可管理的環(huán)境之中;在使用階段,根據(jù)軟件模型來裝配應(yīng)用程序,并且測(cè)試其軟件質(zhì)量以及非功能性需求,比如性能、可伸縮性等等;最后的管理階段是一個(gè)長(zhǎng)期的過程,在這個(gè)階段中,可以監(jiān)控并管理安全性和使用,以及在許多與可能已經(jīng)為SOA制訂好的服務(wù)級(jí)協(xié)定或策略相對(duì)應(yīng)的方面比較其性能。
這樣由小及大,逐漸在企業(yè)業(yè)務(wù)中進(jìn)行整合擴(kuò)散,并形成整個(gè)企業(yè)的IT轉(zhuǎn)型,最終通過全面整合實(shí)現(xiàn)隨需應(yīng)變的企業(yè)IT架構(gòu)。
3.3 基于Web服務(wù)體系結(jié)構(gòu)的SOA企業(yè)信息系統(tǒng)整合
作為一種概念,SOA已經(jīng)成熟。比較來說,現(xiàn)在Web服務(wù)是實(shí)現(xiàn)SOA的方式。Web服務(wù)是由URL (Uniform Resource Locator) 確定的軟件應(yīng)用, 其接口和綁定能夠以XML(ExtensibleMarkup Language) 的形式定義、描述和發(fā)現(xiàn), 并且支持借助Internet協(xié)議, 如SOAP ( Simple ObjectAccess Protocol) 。采用XML 格式消息的方式與其他軟件應(yīng)用交互[ 5 ] 。Web 服務(wù)采用[ 6 ]WSDL(Web ServicesDescrip tion Language) 作為其服務(wù)接口描述語言、通過UDD I (Universal Descrip tion, Discovery and Integration) 協(xié)議規(guī)范進(jìn)行Web服務(wù)的網(wǎng)上注冊(cè)和服務(wù)查找定位, 并使用SOAP傳輸協(xié)議在網(wǎng)絡(luò)間進(jìn)行XML格式的信息交互。