基于ESB的集成式PLM系統實現
隨著技術的不斷發展,Web Services、JMS等的不斷出現,一種實現SOA系統架構的方案出現了:ESB,即開發出一個轉化、處理的綜合性平臺,實現各個軟件之間數據的“黑盒”聯系。不論采用何種技術方式向“總線”提交請求,“總線”都能成功地應答并返回相應的數據。對現存的企業應用軟件進行ESB系統架構改造時,可以將各個軟件與其他軟件進行數據關聯的地方進行必要的、不改變技術手段的改造,使之連接到ESB中。這種改造的改動非常小,因此成本也很低,就使得SOA系統架構的實現成為可能。ESB需要實現對于消息的控制、傳送、分派、解析。
圖3是一個常見的對現有系統進行改造的ESB系統架構。
圖3常見的對現有系統進行改造的ESB系統架構在這個架構中,每個組成部分稱之為一個服務。不同的相關服務的組合,就形成一個相對完整的系統。這種系統結構的優點在于服務的組合、發布、重用,具有依賴性低;能夠同時運行不同的軟件版本;相對獨立,便于團隊的開發和理解;與原系統集成的成本低廉。集成式PLM系統就是要在企業原有的管理和信息軟件基礎上,根據實際的需要,將各類企業軟件系統封裝成一個個服務并通過ESB集成的方式,整合到一個平臺下,這樣可以有效地利用原有資源,也可以在此基礎上進行后續開發。
2 集成式PLM系統實現
通常公司或企業里最常用的莫過于資源管理系統(ERP)和客戶管理系統(CRM),下面就以這兩種系統的集成為示例,介紹一下基于ESB解決方案的集成式PLM系統的部分實現。這兩個系統的功能在某些方面是重合的,但是側重點和系統開發商不同。如果沒有一個統一的理念來管理這兩個系統或更多的系統,想結合起來使用,難度很大。如果再加上公司的其他系統,那么整個系統簡直就是一團亂麻。
對CRM和IERP系統的整合內容主要包括:客戶管理、產品管理、工作流管理、工作人員管理、營銷管理、銷售管理、客戶服務和支持、訂單管理、信息交流、決策支持等。如果要新增加一個客戶或者一個產品,需要保持兩個系統里面的數據的一致性。如果軟件不是來自同一個廠商,兩者不能在數據庫層面集成,可以使用下面的方法解決此類問題。
2.1 建立ESB系統總線
利用ESB總線的思想,采用JMS平臺進行消息傳遞,可以實現對系統的整合,ESB總線傳遞的是消息,需要實現消息(信息)的轉換、訂閱、發布、傳送、分派、事件解析、事件通知、事件注冊、事件儲存等功能,如圖4所示。
信息轉換和時間訂閱/發布等,需要寫代碼完成,本例中外部全部使用Web Services,可以不進行信息轉換的工作。事件的存儲、注冊、訂閱、發布等,在JMS中有比較完整的實現,由于篇幅的限制,在此不再贅述。
評論