應(yīng)用SOA構(gòu)建ERP
隨著網(wǎng)絡(luò)技術(shù)飛速發(fā)展,軟件架構(gòu)日益向B/S結(jié)構(gòu)遷移,為SOA在ERP中的實踐提供了基礎(chǔ),同時中間件和平臺技術(shù)的成熟也給SOA在應(yīng)用層面上的實踐提供了有利的保障。
為了解決現(xiàn)有ERP系統(tǒng)難以重構(gòu),難以與企業(yè)之外的供應(yīng)商、分銷商集成的問題,企業(yè)需要用一種手段,來消除上下游,以及企業(yè)內(nèi)部應(yīng)用的壁壘。實現(xiàn)信息、人員、流程的通暢,最佳的技術(shù)手段就是SOA。SOA是對企業(yè)各種異構(gòu)的信息孤島進(jìn)行整合的最有效方法,可以實現(xiàn)企業(yè)和組織的信息共享,提升人員協(xié)同能力以及業(yè)務(wù)的優(yōu)化和整合程度,實現(xiàn)有效的業(yè)務(wù)轉(zhuǎn)型和創(chuàng)新,幫助企業(yè)適應(yīng)外部變化,提高運(yùn)營效率和反應(yīng)速度。
基于面向服務(wù)架構(gòu)(SOA)的ERP系統(tǒng)體系結(jié)構(gòu)是一種定制化、個性化、可重用的ERP套件,ERP軟件分解成以Web服務(wù)形式出現(xiàn)的更加粒狀的自我描述構(gòu)件,組合這砦構(gòu)件,以生成定制的松散耦聯(lián)的復(fù)合應(yīng)用,將企業(yè)應(yīng)用構(gòu)建成為服務(wù)的集合,實現(xiàn)企業(yè)內(nèi)外各個不同服務(wù)系統(tǒng)之間的互調(diào)或者集成。任何業(yè)務(wù)功能都被作為提供的一個服務(wù)使用,應(yīng)用程序的不同功能(服務(wù))通過這些服務(wù)之間定義的結(jié)構(gòu)和合約聯(lián)系,應(yīng)用系統(tǒng)可以看作是一系列服務(wù)的集成。
企業(yè)應(yīng)用的業(yè)務(wù)功能分解并重組為一個個服務(wù),這就涉及一個粒度的問題。基于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āng)企業(yè)業(yè)務(wù)流程改變時,通過重新組合已編寫的服務(wù)組件,ERP各個業(yè)務(wù)模塊的功能作為粗粒度服務(wù)發(fā)布,而每個模塊的功能又是由多個子功能組成,這些子功能可以作為細(xì)粒度服務(wù)發(fā)布,從而達(dá)到企業(yè)業(yè)務(wù)流程重組的目的。
企業(yè)也可以把需要向外部企業(yè)提供的服務(wù)發(fā)布到公共服務(wù)注冊代理供合作伙伴訪問,同時也通過公共服務(wù)注冊代理查找合作伙伴提供的服務(wù),滿足企業(yè)的需要,服務(wù)粒度大小,在某種程度上決定著整個系統(tǒng)的靈活性和效率。如果粒度劃分太細(xì),企業(yè)付出的成本相應(yīng)會高,如果粒度劃分太粗,則系統(tǒng)無法很好地按需快速變動。企業(yè)必須要在兩者之間尋得一個平衡點,服務(wù)的粒度劃分是基于SOA的ERP系統(tǒng)中的一個重點和難點。
|