摘要:隨著企業(yè)中越來越多的信息軟件和管理軟件的應(yīng)用,如何將這些軟件有效地集成起來,使整個企業(yè)管理交流系統(tǒng)化、流程化成了許多企業(yè)面臨的困惑。在研究面向服務(wù)的架構(gòu)以及企業(yè)服務(wù)總線的實現(xiàn)方法的基礎(chǔ)上,提出了一種PLM系統(tǒng)的實現(xiàn)方式。采用此種方法,可以節(jié)約企業(yè)在企業(yè)管理軟件上的投資,有效利用原有軟件資源,實現(xiàn)原有多種管理信息軟件向PLM系統(tǒng)的轉(zhuǎn)變,完成企業(yè)信息平臺的整合集成。
關(guān)鍵詞:面向服務(wù)架構(gòu);企業(yè)服務(wù)總線;產(chǎn)品生命周期;集成式PLM系統(tǒng)
0 引言
面向服務(wù)架構(gòu)(SOA)是一種組件模型,它通過應(yīng)用程序功能單元(稱之為服務(wù))之間定義完善的接口和契約,來聯(lián)系應(yīng)用程序中的不同服務(wù)。一般對SOA比較一致的認同觀點是:服務(wù)應(yīng)當(dāng)通過明確的、與實現(xiàn)無關(guān)的接口來定義;服務(wù)可以被松散綁定,并且可以通過強調(diào)位置透明性和互操作性的通信協(xié)議進行調(diào)用;服務(wù)封裝了可重用的業(yè)務(wù)功能。SOA依賴于將應(yīng)用程序發(fā)布為服務(wù),這些服務(wù)可被外部各方調(diào)用。其核心本質(zhì)是實現(xiàn)服務(wù)和技術(shù)的完全分離,從而最大限度上實現(xiàn)服務(wù)的集成和重組。換句話說,SOA可以將所有的軟件都改造成一個一個的服務(wù),各個軟件之間的聯(lián)系都采用服務(wù)來完成。有了這個架構(gòu),每個軟件的開發(fā)團隊只需要關(guān)注自己負責(zé)的軟件就可以了,使得當(dāng)前軟件的維護和后續(xù)軟件的開發(fā)就變得簡單多了。
企業(yè)服務(wù)總線(ESB)是從消息中間件的基礎(chǔ)上發(fā)展而來的。ESB采用“總線”的模式來管理和簡化應(yīng)用之間的集成拓撲結(jié)構(gòu),以更加開放的標準為基礎(chǔ)來支持應(yīng)用之間在消息、事件和服務(wù)的級別上動態(tài)的互聯(lián)互通。ESB是一種在松散耦合的服務(wù)和應(yīng)用之間標準的集成方式。主要可以應(yīng)用在以下三個方面:1)面向服務(wù)的架構(gòu):分布式的應(yīng)用由可重用的服務(wù)組成;2)面向消息的架構(gòu):應(yīng)用之間通過ESB發(fā)送和接受消息;3)事件驅(qū)動的架構(gòu):應(yīng)用之間異步地產(chǎn)生和接收消息。ESB就是在SOA架構(gòu)中實現(xiàn)服務(wù)間智能化集成與管理的中介。如圖1,常見總線方式的SOA架構(gòu)模型。
產(chǎn)品生命周期管理PLM(Product Life—cycle Management)自20世紀末提出以來,便迅速成為制造業(yè)關(guān)注的焦點。PLM結(jié)合電子商務(wù)技術(shù)與協(xié)同技術(shù),將產(chǎn)品的開發(fā)流程與SCM、CRM、ERP等系統(tǒng)進行集成,將孤島式流程管理轉(zhuǎn)變?yōu)榧苫囊惑w管理,實現(xiàn)從概念設(shè)計、產(chǎn)品設(shè)計、產(chǎn)品生產(chǎn)、產(chǎn)品維護到管理信息的全面數(shù)字化;實現(xiàn)企業(yè)知識價值的提升與知識共享管理,產(chǎn)品開發(fā)和業(yè)務(wù)流程的優(yōu)化,從而全面提升企業(yè)生產(chǎn)效率,降低產(chǎn)品生命周期管理的成本,以提升企業(yè)的市場競爭力。
1 集成式PLM系統(tǒng)的思路
隨著越來越多的企業(yè)部署了OA、ERP、CRM等系統(tǒng)軟件,來加強整個企業(yè)信息流程的管理和業(yè)務(wù)信息的交流,如何成功的將各個系統(tǒng)的數(shù)據(jù)信息集成到一起成為企業(yè)關(guān)注的焦點。將不同數(shù)據(jù)庫不同結(jié)構(gòu)的系統(tǒng)緊密而合理的集成起來,以完成企業(yè)內(nèi)部甚至與外部企業(yè)和用戶的業(yè)務(wù)交流,成為了各企業(yè)用戶最為普遍的想法,也成為軟件開發(fā)行業(yè)的熱點。集成式PLM系統(tǒng)可以將0A、ERP、CRM等系統(tǒng)軟件成功整合在一起,實現(xiàn)企業(yè)信息的完美整合,以及企業(yè)業(yè)務(wù)流程的控制。圖2是一種集成式PLM系統(tǒng)模型:
隨著技術(shù)的不斷發(fā)展,Web Services、JMS等的不斷出現(xiàn),一種實現(xiàn)SOA系統(tǒng)架構(gòu)的方案出現(xiàn)了:ESB,即開發(fā)出一個轉(zhuǎn)化、處理的綜合性平臺,實現(xiàn)各個軟件之間數(shù)據(jù)的“黑盒”聯(lián)系。不論采用何種技術(shù)方式向“總線”提交請求,“總線”都能成功地應(yīng)答并返回相應(yīng)的數(shù)據(jù)。對現(xiàn)存的企業(yè)應(yīng)用軟件進行ESB系統(tǒng)架構(gòu)改造時,可以將各個軟件與其他軟件進行數(shù)據(jù)關(guān)聯(lián)的地方進行必要的、不改變技術(shù)手段的改造,使之連接到ESB中。這種改造的改動非常小,因此成本也很低,就使得SOA系統(tǒng)架構(gòu)的實現(xiàn)成為可能。ESB需要實現(xiàn)對于消息的控制、傳送、分派、解析。
圖3是一個常見的對現(xiàn)有系統(tǒng)進行改造的ESB系統(tǒng)架構(gòu)。
圖3常見的對現(xiàn)有系統(tǒng)進行改造的ESB系統(tǒng)架構(gòu)在這個架構(gòu)中,每個組成部分稱之為一個服務(wù)。不同的相關(guān)服務(wù)的組合,就形成一個相對完整的系統(tǒng)。這種系統(tǒng)結(jié)構(gòu)的優(yōu)點在于服務(wù)的組合、發(fā)布、重用,具有依賴性低;能夠同時運行不同的軟件版本;相對獨立,便于團隊的開發(fā)和理解;與原系統(tǒng)集成的成本低廉。集成式PLM系統(tǒng)就是要在企業(yè)原有的管理和信息軟件基礎(chǔ)上,根據(jù)實際的需要,將各類企業(yè)軟件系統(tǒng)封裝成一個個服務(wù)并通過ESB集成的方式,整合到一個平臺下,這樣可以有效地利用原有資源,也可以在此基礎(chǔ)上進行后續(xù)開發(fā)。
2 集成式PLM系統(tǒng)實現(xiàn)
通常公司或企業(yè)里最常用的莫過于資源管理系統(tǒng)(ERP)和客戶管理系統(tǒng)(CRM),下面就以這兩種系統(tǒng)的集成為示例,介紹一下基于ESB解決方案的集成式PLM系統(tǒng)的部分實現(xiàn)。這兩個系統(tǒng)的功能在某些方面是重合的,但是側(cè)重點和系統(tǒng)開發(fā)商不同。如果沒有一個統(tǒng)一的理念來管理這兩個系統(tǒng)或更多的系統(tǒng),想結(jié)合起來使用,難度很大。如果再加上公司的其他系統(tǒng),那么整個系統(tǒng)簡直就是一團亂麻。
對CRM和IERP系統(tǒng)的整合內(nèi)容主要包括:客戶管理、產(chǎn)品管理、工作流管理、工作人員管理、營銷管理、銷售管理、客戶服務(wù)和支持、訂單管理、信息交流、決策支持等。如果要新增加一個客戶或者一個產(chǎn)品,需要保持兩個系統(tǒng)里面的數(shù)據(jù)的一致性。如果軟件不是來自同一個廠商,兩者不能在數(shù)據(jù)庫層面集成,可以使用下面的方法解決此類問題。
2.1 建立ESB系統(tǒng)總線
利用ESB總線的思想,采用JMS平臺進行消息傳遞,可以實現(xiàn)對系統(tǒng)的整合,ESB總線傳遞的是消息,需要實現(xiàn)消息(信息)的轉(zhuǎn)換、訂閱、發(fā)布、傳送、分派、事件解析、事件通知、事件注冊、事件儲存等功能,如圖4所示。
信息轉(zhuǎn)換和時間訂閱/發(fā)布等,需要寫代碼完成,本例中外部全部使用Web Services,可以不進行信息轉(zhuǎn)換的工作。事件的存儲、注冊、訂閱、發(fā)布等,在JMS中有比較完整的實現(xiàn),由于篇幅的限制,在此不再贅述。
2.2 設(shè)計接口
ERP系統(tǒng)和CRM自身都是一套完整的管理系統(tǒng),為了實現(xiàn)相互之間的數(shù)據(jù)傳遞,根據(jù)需要傳遞的數(shù)據(jù)設(shè)計一系列的接口,當(dāng)有數(shù)據(jù)變化的時候,可以通過接口將數(shù)據(jù)傳遞到ESB,由ESB執(zhí)行數(shù)據(jù)的分發(fā),這里以客戶管理為例來說明接口設(shè)計:
當(dāng)CRM系統(tǒng)中有數(shù)據(jù)改變時,需要將CRM系統(tǒng)里的客戶信息填充到這個接口。反之,當(dāng)ERP系統(tǒng)中有客戶信息變化時也需要用數(shù)據(jù)填充這個接口。其他的模塊,例如工作流管理、產(chǎn)品管理等按照同樣的原理設(shè)計接口。
2.3 根據(jù)接口加強ESB功能
當(dāng)客戶信息變化的時候,CRM系統(tǒng)不能將信息直接發(fā)送到ERP系統(tǒng),而是應(yīng)該發(fā)送到ESB系統(tǒng)總線,反之依然。由系統(tǒng)總線實現(xiàn)消息和數(shù)據(jù)的傳遞,同樣以client信息為例,ESB總線需要添加下面的接口:
OnClientChangeEvent(sender,IClient);
//客戶信息修改事件
RegisterCl ientChangeEvent(sender);
//系統(tǒng)向ESB注冊Client事件
其他的接口也需要添加類似的接口。
2.4 封裝管理系統(tǒng),向系統(tǒng)添加適配器
由于ERP和CRM都是獨立的管理系統(tǒng),用戶往往沒有代碼,不能直接提供上面提到的服務(wù),即使有代碼,要修改這些代碼也是需要花費大量的時間。為了將系統(tǒng)掛到ESB總線,也需要實現(xiàn)上面的接口,可以專門寫一個適配器,分別將CRM和ERP系統(tǒng)封裝,在適配器里面實現(xiàn)上面的接口。然后將適配器和ESB總線掛起來。例如:修改客戶的時候,CRM適配器(如圖5所示)會接收到客戶信息修改的通知,適配器將修改的信息轉(zhuǎn)換成接口的信息,將信息發(fā)送到ESB總線,ESB總線會檢測哪些系統(tǒng)注冊了這個事件,再將這個信息發(fā)送到ERP的適配器里面,最后ERP的適配器將自己的系統(tǒng)更新,實現(xiàn)了數(shù)據(jù)的同步。
將上面提到的Client的函數(shù)封裝成一個服務(wù),由適配器保留這個服務(wù)給ESB總線。其他的接口按照同樣的原理實現(xiàn)。
2.5 將組件掛接到ESB總線上適配器完成后,只需要將系統(tǒng)掛到ESB總線上,并且注冊相應(yīng)的事件,就可以實現(xiàn)數(shù)據(jù)的同步更新和消息的傳遞。如圖6所示。
利用ESB系統(tǒng)總線,將CRM和ERP系統(tǒng)都看作是掛到總線上的組件,ESB中實現(xiàn)消息的通知、分派、集合。在系統(tǒng)掛到總線的時候,注冊自己相應(yīng)的事件,當(dāng)CRM系統(tǒng)中增加用戶的時候,發(fā)送XML消息到系統(tǒng)總線,系統(tǒng)總線檢查哪些系統(tǒng)注冊了這些信息,將信息分派到注冊的系統(tǒng)中。每個系統(tǒng)將消息轉(zhuǎn)換成自己認識的數(shù)據(jù)并且保存到數(shù)據(jù)庫,完成數(shù)據(jù)的同步。
2.6根據(jù)上述原理和方法,可以將企業(yè)原有的以及后來添加的業(yè)務(wù)軟件包裝成一個個服務(wù),通過適配器將其掛接到ESB總線上,最終實現(xiàn)向集成式PLM系統(tǒng)的轉(zhuǎn)向。
3 結(jié)語
本文簡單介紹了集成式PLM系統(tǒng)整合的一種方法,通過面向服務(wù)的組件,將所有的系統(tǒng)掛接到一個ESB總線上面,實現(xiàn)了對系統(tǒng)中消息的管理、削除企業(yè)內(nèi)部信息孤島,使各個系統(tǒng)之間可以自由通信。同時,通過CRM系統(tǒng)和ERP系統(tǒng)的整合為例,提出應(yīng)該如何設(shè)計接口實現(xiàn)整合的方法以及對相應(yīng)的集成式PLM系統(tǒng)的實現(xiàn)方法。
北京2022年10月18日 /美通社/ -- 10月14日,國際數(shù)據(jù)公司(IDC)發(fā)布《2022Q2中國軟件定義存儲及超融合市場研究報告》,報告顯示:2022年上半年浪潮超融合銷售額同比增長59.4%,近5倍于...
關(guān)鍵字: IDC BSP 數(shù)字化 數(shù)據(jù)中心東京2022年10月18日 /美通社/ -- NIPPON EXPRESS HOLDINGS株式會社(NIPPON EXPRESS HOLDINGS, INC.)旗下集團公司上海通運國際物流有限公司(Nipp...
關(guān)鍵字: 溫控 精密儀器 半導(dǎo)體制造 BSP要問機器人公司哪家強,波士頓動力絕對是其中的佼佼者。近來年該公司在機器人研發(fā)方面獲得的一些成果令人印象深刻,比如其開發(fā)的機器人會后空翻,自主爬樓梯等。這不,波士頓動力又發(fā)布了其機器人組團跳男團舞的新視頻,表演的機器人包括...
關(guān)鍵字: 機器人 BSP 工業(yè)機器人 現(xiàn)代汽車