企業(yè)應(yīng)用集成(EntERPrise Application Integration,EAI)是指對企業(yè)中完成不同業(yè)務(wù)功能的應(yīng)用系統(tǒng)進行集成并建立可供數(shù)據(jù)交流和應(yīng)用溝通的紐帶,進而使系統(tǒng)間的信息交互成為可能的過程。傳統(tǒng)的EAI主要有數(shù)據(jù)集成、應(yīng)用接口集成和業(yè)務(wù)邏輯集成,這3種集成方式均屬于緊耦合模式。然而,這類集成方式存在著缺陷,如:易導致數(shù)據(jù)損壞,暴露了數(shù)據(jù)庫的安全缺口;當采用API接口進行修改時,會增加過大的工作量,也可能導致現(xiàn)有業(yè)務(wù)系統(tǒng)的不穩(wěn)定性。因此,緊耦合模式降低了業(yè)務(wù)系統(tǒng)的靈活性和擴展性,增加了維護難度,阻礙了業(yè)務(wù)的流程調(diào)整和優(yōu)化,不利于企業(yè)業(yè)務(wù)的發(fā)展。
上海煙草機械有限責任公司(上海煙機)信息化(一期)項目,完成了基礎(chǔ)數(shù)據(jù)建設(shè)并搭建了信息化應(yīng)用平臺(PDM/CAPP/CAD,ERP,MES/NCS,KBS,HR,CRM),初步實現(xiàn)了上述6大業(yè)務(wù)系統(tǒng)的緊耦合模式集成,見圖1。隨著市場競爭的日益加劇,煙機制造企業(yè)將從傳統(tǒng)的“以產(chǎn)品為導向”的管理模式,逐步轉(zhuǎn)變?yōu)椤耙允袌鰹閷颉焙汀耙钥蛻魹閷颉钡墓芾砟J,為了完成這種管理模式的根本轉(zhuǎn)變,需要提升各個業(yè)務(wù)單元實體之間的協(xié)作能力。而這一要求反映到信息化建設(shè)上,就要突破原有各個獨立的業(yè)務(wù)系統(tǒng)之間的壁壘,提升各系統(tǒng)間的業(yè)務(wù)協(xié)作能力和數(shù)據(jù)交互能力,從而適應(yīng)管理模式的轉(zhuǎn)變。由于受到上述緊耦合模式缺陷的制約,亟需一種面向功能層的企業(yè)應(yīng)用集成方式對此應(yīng)用平臺進行升級完善。
面向服務(wù)架構(gòu)(Service Oriented Architecture,SOA)的出現(xiàn),提供了一個良好的解決方案。借助Web服務(wù)在跨平臺、易實現(xiàn)以及擴展性方面的優(yōu)勢,使用SOA信息集成體系,不僅能保證公司原有系統(tǒng)的數(shù)據(jù)安全性和邏輯可靠性,還能實現(xiàn)各業(yè)務(wù)系統(tǒng)之間的松耦合,方便業(yè)務(wù)流程的重組和優(yōu)化,快速滿足不斷變化的業(yè)務(wù)需求。為此,以上海煙機為例,介紹了基于SOA模式的離散制造業(yè)信息系統(tǒng)在煙機企業(yè)中的集成應(yīng)用。
1 基于Web服務(wù)的SOA信息集成體系
1.1 SOA技術(shù)
SOA是能夠通過連接完成特定任務(wù)的獨立功能實體,以解決在Internet環(huán)境下業(yè)務(wù)集成的需要。SOA是一個組件模型,將應(yīng)用程序的不同功能單元通過相互之間定義良好的接口和契約聯(lián)系起來。其接口采用中立方式進行定義,獨立于實現(xiàn)服務(wù)的硬件平臺、操作系統(tǒng)和編程語言,從而使構(gòu)建在各種系統(tǒng)中的服務(wù)能夠以統(tǒng)一、通用的方式進行交互。
傳統(tǒng)的Web技術(shù)解決了人與信息系統(tǒng)的交互和溝通問題,而Web服務(wù)技術(shù)則解決了信息系統(tǒng)之間的交互和溝通問題。SOA采用面向服務(wù)的商業(yè)建模技術(shù)和Web服務(wù)技術(shù),實現(xiàn)系統(tǒng)之間的松耦合,從而實現(xiàn)系統(tǒng)之間的整合與協(xié)同。Web服務(wù)和SOA的本質(zhì)思路在于使信息系統(tǒng)個體在溝通的基礎(chǔ)上實現(xiàn)協(xié)同工作。
1.2 采用SOA進行信息系統(tǒng)集成的步驟
(1)提取各應(yīng)用系統(tǒng)中需對外暴露的功能模塊。這些功能模塊通常都是一些能夠清晰完整地表現(xiàn)其業(yè)務(wù)價值的軟件實體,該軟件實體包含了所能提供的全部服務(wù)。
(2)將上述功能模塊表現(xiàn)為服務(wù)組件的形式。定義服務(wù)的描述信息、服務(wù)的接口以及調(diào)用服務(wù)所需要的定位信息等。將軟件實體的概念模型轉(zhuǎn)換成實際的服務(wù)模型。
(3)將已實現(xiàn)的服務(wù)發(fā)布到服務(wù)注冊器,供其他服務(wù)調(diào)用者進行查找和綁定。
(4)綁定和調(diào)用服務(wù),將各應(yīng)用系統(tǒng)集成起來,實現(xiàn)企業(yè)應(yīng)用在功能層面的集成。
1.3 SOA的核心技術(shù)
企業(yè)服務(wù)總線(EntERPrise Service Buses,ESB)是整個SOA的核心,其作用在于通過全局方式控制、掌握企業(yè)內(nèi)各應(yīng)用系統(tǒng)中松散分布的、以點對點方式通信的Web服務(wù)的實際“狀況”,并最終實現(xiàn)統(tǒng)一管理維護。針對上海煙機目前使用的信息系統(tǒng)現(xiàn)狀,制定開發(fā)了基于Net平臺的ESB系統(tǒng)(WebService Man-age,WSM),其主要特性如下。
(1)簡單注冊與層次管理企業(yè)內(nèi)所有WebService的位置。Web服務(wù)是基于點對點的通信方式,隨著企業(yè)信息化系統(tǒng)的增加以及系統(tǒng)間集成業(yè)務(wù)量的增加。集成點將爆炸似的增長,企業(yè)系統(tǒng)間的交互網(wǎng)隨時間而變得千頭萬緒,從而使各系統(tǒng)Web服務(wù)數(shù)量、某個功能的Web服務(wù)化追蹤成為難題。因此,WSM系統(tǒng)在每個應(yīng)用程序?qū)由辖⒁粋服務(wù)層,使用Web服務(wù)包裝各系統(tǒng)內(nèi)的一些具體操作,提供各種用于完成系統(tǒng)各業(yè)務(wù)單元活動的細粒度服務(wù)(稱為業(yè)務(wù)服務(wù))。隨后,WSM組合各種代理服務(wù),以創(chuàng)建粗粒度服務(wù)(稱為代理服務(wù)),完成一次完整的業(yè)務(wù)交互,見圖2。所有注冊的Web服務(wù)將在WSM中清晰列出,就不會出現(xiàn)由于信息滯后而重復開發(fā)相同功能的Web服務(wù)的局面。
(2)服務(wù)聚合。在WSM系統(tǒng)中,一系列的Web服務(wù)調(diào)用可作為一個Web服務(wù)出現(xiàn),即當調(diào)用一個粗粒度的代理服務(wù)時,多個細粒度的業(yè)務(wù)服務(wù)將按特定順序被調(diào)用,并按照具體需求返回一個結(jié)果。
(3)監(jiān)控。在WSM中提供對服務(wù)執(zhí)行情況的監(jiān)控和詳細日志,并記錄各服務(wù)執(zhí)行成功與否等狀態(tài),便于對不同情況及時采取措施。
(4)完全基于配置。在WSM中采用配置與編程相互結(jié)合的方式,以方便客戶使用。
2 實際應(yīng)用
以上海煙機信息化應(yīng)用平臺中添加“設(shè)備新增計劃”為例,闡釋Web服務(wù)與WSM如何協(xié)同工作。此項流程主要在負責生產(chǎn)制造的MES系統(tǒng)中完成,同時需要辦公自動化KBS系統(tǒng)進行配合!霸O(shè)備新增計劃”包含“設(shè)備新增申請單”、“設(shè)備開箱驗收單”、“設(shè)備固定資產(chǎn)驗收單”3個流程。首先在MES中創(chuàng)建計劃,逐個填寫單證后在KBS中啟動上述3個流程,前一流程未結(jié)束時不可啟動后續(xù)流程,MES與KBS的交互方式見圖3。對比緊耦合方式,基于WSM和Web服務(wù)方式進行該工作的交互方式見圖4。
首先,進行細粒度服務(wù)建設(shè):
(1)MES中提供以計劃號、流程號為參數(shù)的業(yè)務(wù)服務(wù)(細粒度)A,取得“設(shè)備新增申請單”或“設(shè)備開箱驗收單”或“設(shè)備固定資產(chǎn)驗收單”的數(shù)據(jù),并在WSM中注冊。
(2)MES中提供以計劃號、流程號為參數(shù)的改變流程狀態(tài)的業(yè)務(wù)服務(wù)(細粒度)c,用于將某流程狀態(tài)改為指定狀態(tài),并注冊到WSM。
(3)MES中提供以計劃號、流程號以及相應(yīng)審批信息為參數(shù)的業(yè)務(wù)服務(wù)(細粒度)D,用于將流程審批信息插入數(shù)據(jù)庫中,并注冊到WSM。
(4)KBS中提供以流程類型以及所需信息(如“設(shè)備新增申請單”數(shù)據(jù))為參數(shù)的業(yè)務(wù)服務(wù)(細粒度)B,用于啟動某種流程,并注冊到WSM。
其次,進行粗粒度服務(wù)建設(shè):
(5)WSM中創(chuàng)建以計劃號、流程號為參數(shù)的“新建設(shè)備新增申請單”代理服務(wù)(粗粒度)X,該服務(wù)中首先調(diào)用A,然后調(diào)用B,并將A的返回數(shù)據(jù)傳人B中。
(6)WSM中創(chuàng)建以審批信息為參數(shù)的“完成設(shè)備新增申請單”代理服務(wù)(粗粒度)Y,該服務(wù)中調(diào)用C,并傳人完成標志,然后調(diào)用D并傳入審批信息。
最后,完成系統(tǒng)內(nèi)調(diào)用:
(7)MES中在原來插入KBS數(shù)據(jù)庫相應(yīng)單證數(shù)據(jù)的位置調(diào)用x。
(8)KBS中在原流程完畢后,在審批信息與狀態(tài)回寫至MES的位置調(diào)用Y,并傳入流程審批信息。在上述實例中,由于采用了基于Web服務(wù)與WSM-ESB的SOA集成方式,各系統(tǒng)實現(xiàn)了“非侵入式”交互,這樣各系統(tǒng)僅完成各自的職能,其他系統(tǒng)也僅是數(shù)據(jù)的提供者,原來各系統(tǒng)相互的數(shù)據(jù)庫依賴轉(zhuǎn)變?yōu)閮H依賴于WSM的代理服務(wù)(粗粒度),保證了各業(yè)務(wù)系統(tǒng)的穩(wěn)定性和數(shù)據(jù)交互的可靠性。細粒度的服務(wù)作為單一功能點可以被多個粗粒度的服務(wù)復用,而粗粒度的服務(wù)只需做到簡單組合或數(shù)據(jù)合并。若業(yè)務(wù)需求發(fā)生變化,無需更改各系統(tǒng)的代碼調(diào)用點,只需重新組合代理服務(wù)(粗粒度)即可滿足新需求,從而達到了“業(yè)務(wù)敏捷”的目的,同時降低了重復開發(fā)的風險和維護成本。
3 結(jié)語
上海煙機公司通過基于SOA模式的信息系統(tǒng)業(yè)務(wù)整合應(yīng)用,實現(xiàn)了將業(yè)務(wù)流程從單一、點對點、重復向維護成本較低的高度利用、共享服務(wù)應(yīng)用轉(zhuǎn)變,迅速適應(yīng)和傳送企業(yè)關(guān)鍵業(yè)務(wù)服務(wù),以滿足市場需求,提高服務(wù)水平。同時高效地轉(zhuǎn)入轉(zhuǎn)出能夠降低整個業(yè)務(wù)的’復雜性和難度,節(jié)約時間和IT應(yīng)用成本。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.oesoe.com/
本文標題:SOA模式下的離散制造業(yè)信息系統(tǒng)集成應(yīng)用
本文網(wǎng)址:http://www.oesoe.com/html/support/1112153666.html