隨著信息技術的不斷發(fā)展和企業(yè)信息化的不斷進步,根據(jù)不同的應用需要,越來越多的企業(yè)開始實施各種信息系統(tǒng),如PDM、ERP、MES、TDM及SDM等。由于受早期信息化技術限制和各軟件公司利益影響,各種信息化系統(tǒng)之間很少考慮與其他軟件的集成問題,導致了企業(yè)在實施各種信息化系統(tǒng)的同時,出現(xiàn)了“信息孤島”的現(xiàn)象。隨著各業(yè)務系統(tǒng)應用的不斷深入,如何實現(xiàn)各業(yè)務系統(tǒng)之間的信息共享已經(jīng)成為企業(yè)信息化實施過程中亟待解決的問題。
PDM(產(chǎn)品數(shù)據(jù)管理)是以產(chǎn)品為中心,通過計算機網(wǎng)絡和數(shù)據(jù)庫技術,把企業(yè)生產(chǎn)過程中與產(chǎn)品相關的信息和過程集成起來,統(tǒng)一管理,使產(chǎn)品數(shù)據(jù)在其生命周期內(nèi)保持一致和安全,從而縮短產(chǎn)品開發(fā)周期,降低成本,提高質量。
TDM(試驗數(shù)據(jù)管理)通過建立有效的數(shù)字化試驗數(shù)據(jù)管理平臺,做到統(tǒng)一試驗數(shù)據(jù)傳遞的標準、統(tǒng)一數(shù)據(jù)管理體系、統(tǒng)一數(shù)據(jù)入庫規(guī)范,在同一試驗數(shù)據(jù)管理體系的支撐下管理和處理試驗數(shù)據(jù)。
PDM系統(tǒng)主要管理了工程技術人員或其他人員產(chǎn)生的與產(chǎn)品相關信息及與產(chǎn)品信息相關的開發(fā)過程信息,而TDM系統(tǒng)管理產(chǎn)品的試驗信息和試驗數(shù)據(jù)等。PDM和TDM的側重點不同,但是PDM與TDM系統(tǒng)之間存在著共享數(shù)據(jù)和過程的需求,TDM系統(tǒng)中與產(chǎn)品相關的試驗數(shù)據(jù)等信息可以作為設計人員設計時的參考,因此,需要通過兩個系統(tǒng)之間的集成,實現(xiàn)在PDM中實時查詢TDM系統(tǒng)中信息的功能。
實現(xiàn)不同軟件系統(tǒng)之間的集成,需要根據(jù)所涉及到的軟件系統(tǒng)本身的系統(tǒng)架構以及應用需求而采取不同的方式。本文中討論的PDM系統(tǒng)為Siemens公司的TeamCenter,TDM系統(tǒng)為Newtera公司的Newtera TDM系統(tǒng),PDM系統(tǒng)需要輸入查詢以瀏覽TDM系統(tǒng)的信息;而TDM系統(tǒng)不需要查詢、瀏覽PDM系統(tǒng)的信息。通過分析兩個軟件本身的架構,采用Web Service技術可以滿足應用的需求。
一、Web Service技術
Web Service是解決應用程序之間互相通信的一項技術。嚴格地說,其是描述一系列操作的接口。它使用標準的、規(guī)范的XML描述接口,包括了與服務進行交互所需要的全部細節(jié),包括消息格式、傳輸協(xié)議和服務位置。而在對外的接口中隱藏了服務實現(xiàn)的細節(jié),僅提供一系列可執(zhí)行的操作,這些操作獨立于軟、硬件平臺和編寫服務所用的編程語言。
Web Service采用SOA(面向服務的架構,Service Oriented Architecture)模型作為體系結構。根據(jù)SOA分層體系結構,Web Service的技術堆棧由XML、SOAP、WSDL、WSFL、UDDI、ebXML、HTTP、SMTP、FTP和IIOP等技術規(guī)范構成,但是其核心技術構成是SOAP、WSDL和UDDI。在Web Service實現(xiàn)的體系結構中,有3個主角色,分別是UDDI注冊中心、服務提供者和服務請求者,其業(yè)務流程為:服務提供者在UDDI注冊服務,服務請求者在UDDI查找服務,請求者調用提供者提供的服務。這些業(yè)務流程通過SOAP、WSDL和UDDI實現(xiàn),其關系如圖1所示。
圖1 Web服務角色、操作和構建
SOAP為不同系統(tǒng)之間的交互定義了一套基本的規(guī)則和跨平臺的消息機制。WSDL是描述Web Service服務和接口的語言,為服務提供者提供XML格式的服務描述。UDDI是分布式Web服務的信息注冊規(guī)范,向服務提供者和服務請求者提服務的注冊和查找功能。
由于Web Service的架構特點,Web Service被應用于跨越防火墻的通信、應用程序集成、B2B的集成和軟件重用等方面時可展現(xiàn)其顯著的優(yōu)勢。
二、集成思路
TeamCenter Engneering9.0系統(tǒng)為C/S架構,客戶端為Java語言開發(fā)的portal。Newtera TDM系統(tǒng)為B/S架構,系統(tǒng)專門提供了用于系統(tǒng)集成的Web Service的WSDL接口,是采用.Net Web Service技術實現(xiàn)的。由于Java和.Net實現(xiàn)Web Service的不同,如何在PDM系統(tǒng)的客戶端使用Java語言調用TDM系統(tǒng)使用.Net提供的Web Service服務,方便無縫地實現(xiàn)相互之間的調用還是有一定的困難。好在XML的機器可讀性以及雙方都遵守的WSDL標準,我們可以利用一些開放源代碼的工具實現(xiàn)快速開發(fā)。例如,可以使用Apache Axis框架中帶的JAVA2WSDL工具在Java客戶端調用.Net Web Service的Proxy。
具體地,在TDM系統(tǒng)的基礎服務層進行開發(fā)提供查詢使用的Web Service服務,然后在PDM系統(tǒng)應用層客戶端中開發(fā)數(shù)據(jù)查詢模塊,通過這個模塊生成查詢組合條件并提交發(fā)送給TDM系統(tǒng)Web Service服務,接收TDM系統(tǒng)Web Service服務返回的查詢結果,并將.Net Web Service數(shù)據(jù)格式的查詢結果數(shù)據(jù)轉換成Java可識別的XML格式數(shù)據(jù),將查詢結果展示到PDM客戶端中,如圖2所示。
圖2 PDM客戶端集成示意圖
三、集成過程實現(xiàn)
1.接口定義及描述
根據(jù)需求,要完成PDM系統(tǒng)與TDM系統(tǒng)的集成,需要TDM系統(tǒng)的Web Service按照規(guī)范提供WSDL文檔和接口規(guī)范,供PDM客戶端請求服務時使用。本次集成TDM系統(tǒng)需要通過接口向PDM系統(tǒng)提供的基礎數(shù)據(jù)包括:部門信息、研制階段信息、型號信息、組件信息和試驗基礎信息,對應的服務接口有GetBuMenList、GetJieDuanList、GetXingHaoList、GetZuJianList和GetData_Class,介紹如表所示。
2.服務接口定義與實現(xiàn)
由于在微軟的VS 2005中簡化了Web Service的開發(fā),使在使用VS 2005進行Web Service開發(fā)時復雜度大大降低,一般過程如下。
(1)在VS 2005中創(chuàng)建一個新的類庫工程,添加引用System.Web.Service.dll動態(tài)鏈接庫用戶建立Web Service服務,同時添加Newtera的bin目錄下的Newtera.Data.Dll和Newtera.Common.Dll兩個動態(tài)鏈接庫,這樣就可以使用Newtera提供的SDK來操作Newtera數(shù)據(jù)庫中的數(shù)據(jù)。
(2)修改新建的類文件,實現(xiàn)數(shù)據(jù)查詢功能,并自定義返回的數(shù)據(jù)格式。
一般Web Service服務的代碼建立過程如下。
首先,聲明Web Service的命名空間。
表1 TDM系統(tǒng)提供的Web Service接口簡介
第二步,定義Web Service提供的方法的URL及實現(xiàn)。
(3)編譯寫好的類文件,生成工程。然后把生成的DLL文件拷貝到Newtera的bin目錄下。最后編寫*.asmx文件以發(fā)布Web Service供其他任何客戶端調用。當Web Service發(fā)布以后,可通過訪問Web Service的.asmx文件的url查看該服務提供的方法描述,根據(jù)這些描述,Web Service的服務請求者可以知道如何調用相應的方法。
至此,Web Service的服務已經(jīng)建立并可供其他系統(tǒng)進行服務的請求與方法的調用了。
3.客戶端進行接口調用
客戶端的開發(fā)軟件環(huán)境采用JDK1.6、Eclipse SDK3.3.2和Apache Axis 1.4(Web Service開發(fā)包),以及jdom1.0(xml開發(fā)工具包)。調用Web Service服務的過程如下。
(1)建立一個客戶端,并設置調用的Web Service服務及方法使用的URL等參數(shù)。
其中在初始化Call時所用到的Web Service服務的各方法參數(shù)可以從上文提到的.asmx的URL處查詢到。
(2)設置返回類型。
(3)設置傳入?yún)?shù)類型。
(4)調用服務并返回查詢結果。
(5)TDM系統(tǒng)接收的查詢結果XML結構設計。
通過以上步驟,可實現(xiàn)PDM客戶端調用TDM系統(tǒng)的Web Service服務查詢信息并展示功能。該模塊操作簡單,界面友好,獨立性強,也可以作為獨立的客戶端或者集成到其他有類似需求的系統(tǒng)中。
四、集成應用效果
中航工業(yè)某研究所早期分別建設了PDM系統(tǒng)和TDM系統(tǒng),并在企業(yè)進行了推廣應用,分別管理了大量的科研設計和試驗數(shù)據(jù)。隨著應用的不斷深入,為了提高設計過程中的協(xié)同研發(fā)水平,首先要解決系統(tǒng)間的數(shù)據(jù)集成問題,因此對兩個系統(tǒng)間的集成提出了新的需求。
以往設計人員在開展設計工作時若想了解相關試驗情況,需要另外登陸TDM進行查詢。企業(yè)在實施了統(tǒng)一身份認證系統(tǒng)后,實現(xiàn)了PDM系統(tǒng)和TDM系統(tǒng)的單點登陸,再通過PDM系統(tǒng)與TDM系統(tǒng)集成,使設計人員可在PDM系統(tǒng)中隨時通過查詢模塊,按照所選擇的產(chǎn)品、負責部門、產(chǎn)品型號和試驗類型等條件方便地查詢到相關的試驗信息,共享了型號研發(fā)業(yè)務中設計過程和試驗過程的數(shù)據(jù),避免了設計業(yè)務和試驗業(yè)務間的信息孤島現(xiàn)象,可有效提高設計人員工作效率(圖3)。
圖3 TDM系統(tǒng)信息查詢對話框
五、結語
如何實現(xiàn)企業(yè)應用系統(tǒng)之間的集成是目前大部分企業(yè)信息化過程中面臨的一個重要問題,Web Service技術由于其標準、規(guī)范的XML描述接口,以及可以獨立于軟、硬件平臺和編寫服務所使用的編程語言,而成為解決系統(tǒng)集成時的一項重要技術。本文對TDM系統(tǒng)與PDM系統(tǒng)之間的集成進行了研究,并采用Web Service技術進行實現(xiàn)。但是并不是所有的系統(tǒng)之間的集成都可以使用Web Service技術來實現(xiàn),需要應用系統(tǒng)本身架構的支持,所以企業(yè)在實施信息化系統(tǒng)之初應把要實施的信息化系統(tǒng)本身架構是否支持與其他系統(tǒng)方便的集成作為一項重要的指標來考慮。
轉載請注明出處:拓步ERP資訊網(wǎng)http://m.hanmeixuan.com/
本文標題:基于Web Service的PDM與TDM系統(tǒng)集成
本文網(wǎng)址:http://m.hanmeixuan.com/html/solutions/1401939593.html