21世紀以來,產品數據管理(product data management,PDM)系統在我國中小企業中得到了廣泛應用,成為制造業產品設計部門不可或缺的利器。隨著技術的發展,如今一個完整產品的研發、設計、制造和裝配不可能在一個車間完成,往往需要跨部門、跨企業、跨地區的協同作業,企業希望PDM系統既能與企業內部ERP、CAD、CAM等集成,實現企業內部的協同管理;另一方面,在網絡時代PDM系統還要向Web技術發展,能在跨地區、跨國的大型企業中實現異地分布式產品設計、協同制造和協同工作,從而實現企業級的管理。
但是,目前企業內外PDM系統的協作存在如下弊端:①企業內部PDM系統與ERP、CAD、CAM等系統不能很好地集成,相互之間資源不能很好地共享;②企業間設計部門溝通不便,各企業的PDM系統形成信息孤島,無法實現信息資源的共享;③各企業設計標準不同,產品編碼、圖紙編碼等不統一,導致產品整合困難;④異地PDM系統非松散耦合集成,相互依賴性較強;⑤沒有通用的PDM系統開發平臺。為了解決這些問題,本文提出了基于面向服務架構(service-oriented architecture,SOA)的2層PDM協同系統來實現企業內外的信息共享和業務整合。
1 基于SOA的PDM協同系統框架
為了實現企業內部的信息共享和業務整合,本研究采用SOA思想重新包裝企業的各個系統,即將PDM作為企業的服務提供者,把ERP、CAD、CAM等作為服務使用者,在企業內部建立本地UDDI服務注冊中心實現服務的查詢和發布。另一方面,在企業之間如果建立基于SOA的異地協同PDM系統,它們普遍采用點對點的方式進行服務的互相調用,但是由于每個企業既是服務提供者,又是服務使用者,當協同站點達到一定數量時就會產生網狀分布的繁雜連線,造成結構混亂,難以管理.為了避免這種情況,我們在企業之間采用面向SOA的企業服務總線(SOA-oriented enterprise service bus,s-ESB)技術來實現企業間協同PDM系統。基于以上思想,圖1給出了基于SOA的PDM協同系統框架。框架主要由企業內部的SOA封裝模塊和面向SOA的ESB組成,其中ESB內部主要由一個公共UDDI注冊中心、服務組件引擎及服務訪問組件組成。
圖1 基于SOA的PDM協同系統框架
1.1 面向SOA的ESB
建立在SOA基礎之上的企業服務總線(ESB)的解決方案通過使用簡單的標準適配器和接口,來完成粗粒度應用(服務)和其他組件之間的互操作,能夠滿足大型異構企業環境的集成需求,它將使企業應用集成更加方便、靈活、可靠,伸縮性也更強.ESB內部主要有3個組成部分(見圖1)。
(1)公共UDDI服務注冊中心 這是不同企業PDM系統集成框架的核心,為各個PDM系統信息資源提供者提供快速的服務注冊和發現功能。標準的UDDI(統一描述、發現和集成協議)是一套基于Web的、分布式的、為Web Service提供的信息注冊中心的實現標準規范,它擁有一套標準的XML Schema定義、發布和搜索的編程規范。各企業PDM系統以Web服務的形式把需要協同共享的信息發布到公共UDDI服務注冊中心,請求服務的各企業就能通過服務訪問組件搜索獲取自己所需的信息。
(2)服務組件引擎 在公共UDDI服務注冊中心的支持下,提供面向信息資源的智能搜索功能。該搜索機制與傳統UDDI服務的不同之處在于,它支持平臺最終需要的資源信息本身,而不僅是作為其傳輸媒介的Web服務。
(3)服務訪問組件 為各企業PDM系統提供Web服務的訪問功能。其內部包括傳輸適配器、數據適配器等,以便將不同企業PDM系統提供的Web服務轉化為目標系統可以訪問的格式,以便不同行業、不同企業、不同系統平臺的服務請求者能根據需要獲得相應的訪問功能,從而獲得有用的信息。
1.2 企業內部PDM
SOA使用戶可以不受限制地重復使用軟件把各種資源互聯起來,只要IT人員選用標準接口包裝舊的應用程序,把新的應用程序構建成服務,那么其他應用系統就可以很方便地使用這些功能服務。圖1中企業通過利用SOA思想重新包裝PDM、ERP、CAD等系統接口,從而實現它們之間的通信和整合。
SOA目前最流行的實現方法是Web Service技術,它使用一系列標準和協議實現相關的功能,其中XML作為Web Service技術的基礎,是開放環境下描述數據和信息的標準技術。在企業內部,PDM系統作為企業服務提供者可以用WSDL(Web服務描述語言)描述Web服務,然后用UDDI向本地UDDI服務注冊中心發布和注冊Web服務,服務請求者(企業內部用戶層ERP、CAD、CAM、PDM等)通過UDDI進行查詢,找到所需的服務后,利用SOAP(簡單對象協議)來綁定、調用這些服務。
1.3 企業間協同PDM
如圖1,通過采用ESB總線,使不同行業的企業將其提供的服務發布到公共UDDI服務注冊中心,當企業要使用其他企業PDM系統提供的服務時,先在公共UDDI服務注冊中心中查找服務,如果不存在這項服務,將“無此項服務”的信息傳遞給服務請求者。如果存在這項服務,就觸發服務組件引擎進行智能搜索,找到該服務組件,然后檢測Web服務的訪問功能是否存在,若存在則直接發回公共UDDI服務注冊中心提供給企業服務請求者;若不存在則利用服務訪問組件傳輸適配器和數據適配器,將Web服務訪問接口轉換為企業所需要的格式,然后將Web服務訪問功能傳遞給公共UDDI服務注冊中心提供給企業服務請求者。企業收到所需服務的“有這項服務”和Web服務訪問功能后利用SOAP來綁定、調用服務。
2 評述基于SOA的PDM協同系統框架
2.1 基于SOA的協同PDM系統的特點
2.1.1 在企業內部建立基于SOA的系統框架
在企業內部,將PDM系統作為企業內部信息服務提供者,從而實現與ERP、CAD、CAM等的協同,這能帶來的好處在于;①通過將PDM系統內部各種服務封裝,并采用標準接口為企業內其他系統提供服務,使企業能專注于產品數據信息的共享和利用,而不是關注PDM系統與其他系統如何兼容的問題。②ERP、CAD、CAM系統能有效地利用PDM系統內部的各種服務,而不用建立自己的產品數據中心,減少企業內部信息的存儲冗余。
2.1.2 在企業間采用基于SOA的ESB,實現協同PDM系統
ESB提供了一種開放的、基于標準的消息機制,它可以消除不同應用之間的技術差異,讓不同的應用服務器協調運作,實現了不同服務之間的通信與整合。通過使用ESB,可以在幾乎不更改代碼的情況下,以一種無縫的非侵入方式使企業已有的PDM系統具有全新的服務接口,并能夠在部署環境中支持任何標準。更重要的是緩沖器ESB(負責在諸多服務之間轉換業務邏輯和數據格式)與服務邏輯相分離,從而使得不同的應用程序可以同時使用同一服務,而不必在應用程序或者數據發生變化時改動服務代碼。由此,基于ESB的協同PDM系統能解決下列問題:①在不改變原有結構的情況下,實現了企業間不同PDM系統的通信與整合,解決了企業間PDM系統“信息孤島問題”;②對企業已有的PDM系統提供全新的服務接口,支持不同標準,從而解決了各企業設計標準不統一導致的產品整合困難問題;③在ESB中采用SOA思想實現了各企業PDM系統的松散耦合集成,實現了系統之間的獨立性;④充當緩沖器ESB與服務邏輯相分離,從而使得不同的應用程序可以同時使用同一服務,而不須變更代碼,從而實現PDM系統平臺無關性。
2.2 基于SOA的PDM協同系統評述
系統采用企業內部和外部2層PDM系統,兩者分開管理,使得協同管理更安全、更有效。一方面能有效地管理企業內部涉及企業商業秘密信息的PDM系統,防止企業內部商業秘密的泄露,增強可靠性、可操作性、安全性及容錯性;另一方面,將與企業協同的服務信息發布到公共UDDI服務注冊中心,使不同企業能更好地共享PDM信息,有利于企業之間協同設計、協同生產及協同制造等,更有益于提高企業競爭力。
3 結語
本文僅給出了基于SOA的2層PDM協同系統來實現企業內外的信息共享和業務整合的基本思想,包括面向SOA的ESB、企業內部的PDM和企業間協同PDM。對于制造業來說,基于SOA的PDM協同系統還有待深入研究,目前的研究有基于SOA的多層PDM協同系統的應用,但理論探討的較多,尚有待實際系統的應用推廣。要真正實現基于SOA的PDM協同系統是有一定難度的,不僅在技術上、方法上、工具上要集成,還有標準化的問題,在管理上要有新思路,要改造傳統的管理模式,使企業的服務功能更具體、更完善。應該看到,基于SOA思想的PDM系統也帶來了一些新的問題,如企業不愿意共享內部PDM系統信息、增加了構建SOA服務接口的成本、如何防止黑客利用協同系統獲取企業商業秘密等,這些都是下一步亟需解決的問題。不管怎樣,基于SOA的PDM協同系統的應用前景是相當廣闊的。
轉載請注明出處:拓步ERP資訊網http://www.guhuozai8.cn/