1 現(xiàn)有ERP系統(tǒng)的局限性
企業(yè)資源計劃ERP是由美國Ganner Gmup Inc提出的一整套企業(yè)管理系統(tǒng)體系標(biāo)準(zhǔn),在近二、三十年來,ERP系統(tǒng)的應(yīng)用得到了極大的發(fā)展。ERP系統(tǒng)首先成為制造業(yè)提高管理水平、降低成本、縮短交貨期的有力工具,并進(jìn)而在其他行業(yè)都得到了廣泛的應(yīng)用,F(xiàn)有的ERP系統(tǒng)主要是面向企業(yè)內(nèi)部管理的,其體系結(jié)構(gòu)缺少靈活性,主要問題是:
1)不能適應(yīng)企業(yè)經(jīng)營管理模式的變化,企業(yè)組織架構(gòu)、經(jīng)營管理模式的變化導(dǎo)致原有的ERP系統(tǒng)要重新開發(fā)或做較大的改進(jìn),造成投資浪費。
2)不能靈活地支持供應(yīng)鏈管理功能,不能實現(xiàn)企業(yè)與供應(yīng)商、企業(yè)與分銷商之間的信息集成,以及不同軟件之間的互操作。
為了解決現(xiàn)有ERP系統(tǒng)難以重構(gòu),難以與企業(yè)之外的供應(yīng)商、分銷商集成的問題,本文提出了基于面向服務(wù)架構(gòu)(SOA)的ERP系統(tǒng)體系結(jié)構(gòu)。
2 面向服務(wù)架構(gòu)的特點和實現(xiàn)技術(shù)
面向服務(wù)架構(gòu)(service 0riented Architecture,s0A)是一種面向服務(wù)的企業(yè)應(yīng)用體系結(jié)構(gòu),是一種分布式的軟件架構(gòu)模型。在該模型中,任何業(yè)務(wù)功能都被作為提供的一個服務(wù)使用,應(yīng)用程序的不同功能(服務(wù))通過這些服務(wù)之間定義的結(jié)構(gòu)和合約聯(lián)系,應(yīng)用系統(tǒng)可以看作是一系列服務(wù)的集成。SOA的體系結(jié)構(gòu)由三個參與者和三個基本操作構(gòu)成,三個參與者分別為服務(wù)提供者、服務(wù)請求者和服務(wù)注冊代理,三個基本操作分別是發(fā)布、查找和綁定,如圖1。服務(wù)提供者將其服務(wù)發(fā)布到服務(wù)注冊代理的一個目錄上,當(dāng)服務(wù)請求者需要調(diào)用該服務(wù)時,它首先利用服務(wù)注冊代理提供的目錄查找服務(wù),服務(wù)注冊代理返回調(diào)用該服務(wù)的信息,服務(wù)請求者根據(jù)返回的信息調(diào)用服務(wù)提供者提供的服務(wù),當(dāng)服務(wù)請求者從服務(wù)注冊代理得到調(diào)用所需服務(wù)的信息后,通訊在服務(wù)請求者和服務(wù)提供者之間直接進(jìn)行,無需經(jīng)過服務(wù)注冊代理。面向服務(wù)架構(gòu)最流行的一種實現(xiàn)方法是web senrices技術(shù),web Services技術(shù)使用一系列標(biāo)準(zhǔn)和協(xié)議實現(xiàn)相關(guān)的功能,其中xML作為web Services技術(shù)的基礎(chǔ),是開放環(huán)境下描述數(shù)據(jù)和信息的標(biāo)準(zhǔn)技術(shù),服務(wù)提供者可以用wsDL(Web服務(wù)描述語言)描述web服務(wù),用UDDI(統(tǒng)一描述、發(fā)現(xiàn)和集成)向服務(wù)注冊代理發(fā)布和注冊web服務(wù),服務(wù)請求者通過VDDI進(jìn)行查詢,找到所需的服務(wù)后,利用SOAP(簡單對象協(xié)議)來綁定、調(diào)用這些服務(wù)。
圖1 SOA 體系結(jié)構(gòu)
3 基于SOA的ERP系統(tǒng)體系結(jié)構(gòu)
為了實現(xiàn)互連網(wǎng)環(huán)境下企業(yè)之間的供應(yīng)鏈集成和響應(yīng)企業(yè)內(nèi)部流程重組的變化,要求ERP系統(tǒng)具有給外部企業(yè)提供服務(wù)和從外部企業(yè)獲取服務(wù)的功能,為了能夠靈活地實現(xiàn)企業(yè)內(nèi)部流程重組的要求,可以把ERP系統(tǒng)功能分解成粗粒度和細(xì)粒度的服務(wù),通過服務(wù)組合實現(xiàn)ERP系統(tǒng)的整體功能。當(dāng)重組企業(yè)業(yè)務(wù)流程時,通過重新組合已編寫的服務(wù)部件即可容易的實現(xiàn)。為此,本文提出了基于SOA的ERP系統(tǒng)體系結(jié)構(gòu),如圖2所示。
圖2 基于SOA的ERP系統(tǒng)體系結(jié)構(gòu)
在圖2所示的ERP系統(tǒng)體系結(jié)構(gòu)中,ERP各個業(yè)務(wù)模塊的功能作為粗粒度服務(wù)發(fā)布,而每個模塊的功能又是由多個子功能組成,我們把這些子功能作為細(xì)粒度服務(wù)發(fā)布。一個粗粒度服務(wù)由多個細(xì)粒度服務(wù)組合而成,如銷售管理服務(wù)就由銷售報價、客戶訂單、客戶出貨、客戶檔案等細(xì)粒度服務(wù)組合而成,每個細(xì)粒度服務(wù)利用數(shù)據(jù)訪問邏輯組件對數(shù)據(jù)庫表進(jìn)行查找、更新、保存等操作。本地企業(yè)提供的服務(wù)在本地服務(wù)注冊中心注冊,可由本地企業(yè)客戶端訪問,而需要提供給合作企業(yè)訪問的服務(wù),則發(fā)布到公共注冊中心,供外部合作企業(yè)訪問。請求服務(wù)的客戶端通過web環(huán)境顯示用戶界面,利用SOAP客戶接口實現(xiàn)與服務(wù)提供方和服務(wù)注冊中心通訊,達(dá)到查詢服務(wù)和綁定服務(wù)的目的。
4 基于SOA的ERP系統(tǒng)的實現(xiàn)技術(shù)
SOA的主要實現(xiàn)方法是web service8技術(shù),而實現(xiàn)web服務(wù)的主流開發(fā)平臺有J2EE平臺和Micmsoft.net平臺,由于用J2EE平臺開發(fā)的系統(tǒng)具有平臺無關(guān)性、安全性、可伸縮性、不同供應(yīng)商實現(xiàn)方案之間的可移植性等若干優(yōu)點而得到了廣泛的應(yīng)用。圖3是采用J2EE平臺實現(xiàn)ERP系統(tǒng)的web服務(wù)體系結(jié)構(gòu)。其中JAxR(Java API for xML Registries,用于xML注冊表的Java API)使得應(yīng)用程序能夠在注冊表中注冊、或者查詢其他公司提供的web服務(wù),JAxM(Java API for xMLMessa舀ng,用于xML消息交換的Java API)提供了web服務(wù)環(huán)境中的異步和消息交換功能,并可以通過內(nèi)部網(wǎng)和Intemet進(jìn)行xML文檔交換,JAXM是基于s0APl.1規(guī)范和SOAP附件定義的消息交換協(xié)議的一種API框架。
服務(wù)提供方用JAxR向UDDI服務(wù)注冊表發(fā)布web服務(wù),客戶端的用戶界面用瀏覽器形式表示,使用JsP和JsTL來實現(xiàn),JSrI.L標(biāo)記將輔助完成條件處理和對wEB服務(wù)所返回xML數(shù)據(jù)的分析。服務(wù)請求方包括一個servlet,負(fù)責(zé)解釋客戶端輸入的HTTP請求,根據(jù)HTTP請求,利用JAxR發(fā)現(xiàn)UDDI服務(wù)注冊表中的服務(wù),然后根據(jù)請求內(nèi)容創(chuàng)建一條SOAPMessage,利用JAxM把SOAPMes8age提交給服務(wù)提供方調(diào)用相關(guān)的web服務(wù),由web服務(wù)程序處理數(shù)據(jù)庫,最后把結(jié)果返回到服務(wù)請求方。
圖3 基于J2EE的web服務(wù)體系結(jié)構(gòu)
5 結(jié)語
基于SOA的ERP系統(tǒng)體系結(jié)構(gòu),把ERP系統(tǒng)模塊表示成粗粒度服務(wù),而每一個粗粒度服務(wù)又可以分解成多個細(xì)粒度服務(wù),每一個細(xì)粒度服務(wù)完成一項單一功能,通過調(diào)用數(shù)據(jù)訪問邏輯組件直接操作數(shù)據(jù)庫表,通過細(xì)粒度服務(wù)的不同組合可實現(xiàn)ERP系統(tǒng)的不同業(yè)務(wù)功能和業(yè)務(wù)流程,從而達(dá)到企業(yè)業(yè)務(wù)流程重組的目的。另一方面,把需要向外部企業(yè)提供的服務(wù)發(fā)布到公共服務(wù)注冊代理供合作伙伴訪問,同時也通過公共服務(wù)注冊代理查找合作伙伴提供的服務(wù),實現(xiàn)企業(yè)之間的業(yè)務(wù)交互,保證企業(yè)之間的合作能在ERP系統(tǒng)中順利實施。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.oesoe.com/
本文標(biāo)題:基于SOA的ERP系統(tǒng)體系結(jié)構(gòu)的研究
本文網(wǎng)址:http://www.oesoe.com/html/support/1112153632.html