(西南交通大學 CAD工程中心, 成都 610031)
摘 要:對面向制造業產業鏈的協同商務系統數據交換的特點進行了分析,提出了一種基于動態Web服務技術的數據交換適配器結構,并對其實現的關鍵技術包括Web服務模板的抽取、基于用戶身份的服務器端配置文件路由選擇、XML文件讀取器設計、數據交換控制器設計、數據傳入/傳出處理接口設計等技術進行了研究,實現了基于客戶端身份信息以及業務關鍵字等調用參數驅動的服務器端Web服務在調用時的動態生成,滿足了數據交換適配器在使用上的可配置性和靈活性需求。
關鍵詞:產業鏈協作; Web服務; 企業間信息系統; 數據交換適配器
中圖分類號:TP393 文獻標志碼:A
文章編號:10013695(2009)01018903
Research on data exchange adapter for collaborative commerce system
in manufacturing industrial chain
WANG Shuying
(CAD Engineering Center, Southwest Jiaotong University, Chengdu610031, China)
Abstract:In view of the characteristic of the data exchange in the collaborative commerce system of manufacturing industrial chain, this paper presented a structure of data exchange adapter based on dynamic Web service. And involved a series of key technologies, which included Web service template extraction, router choices based on the user configuration serverside file, XML file reader, data exchange controller, the interface of data I/O, which could not only effectively solve the dynamic generation of Web service according to calling parameters driven for client identity and keyword, but also perfectly satisfy the requirement of configuration and flexibility of data exchange adapter in usage.
Key words:industrial chain collaboration; Web services; interenterprise information system; data exchange adapter
0 引言
隨著信息技術和網絡技術的發展,制造業呈現出全球化、集群化的發展趨勢,企業間協作越來越緊密,企業已經成為不斷與網絡交換信息和進行商務活動的實體。對于現代企業來說,供應鏈成員之間的集成與協調、企業間合作伙伴的動態聯盟、業務運作模式的整合創新以及企業競爭策略的變革都將成為企業獲得成功的關鍵[1]。與此相對應,支持產業鏈協作的協同商務系統得到了廣泛的應用。與傳統的信息系統相比,支持產業鏈協作的協同商務系統在架構上需要支持分布性,在設計上需要考慮分布式系統各部分間的集成以及與各企業既有系統之間的集成,數據交換與集成適配器是構建分布應用集成的重要組件之一[2]。
1 制造業產業鏈協作過程中的數據交換及其特點分析
1.1 制造業產業鏈與企業間協作
制造業產業鏈是圍繞產品原材料及零部件采購、銷售和售后服務的各個企業形成的一個利益共同體,各個企業在經營上相互獨立,在業務上存在著大量的相互協作。這些企業在相互協作的過程中具有如下特點:a)產業鏈上下游企業在功能上是互補的,在利益上是共贏的;b)在協作企業中存在一個核心企業,這個核心企業具有占據主導地位的核心領導能力和支配能力,核心企業是惟一的,而協作企業可能是幾百家甚至是上千家,這些協作企業按它們與盟主企業之間的協作關系可以分為供應商、經銷商和售后服務商,每一類企業數量眾多,但每一類協作企業與盟主企業之間的協作內容和協作方式都幾乎相同,協作企業在地域上分布、在規模上大小不一[3];c)核心企業與協作企業通過網絡構成了一個長期的戰略聯盟,共享原材料信息、產品信息及客戶信息,以最終贏得市場。
1.2 數據交換及其特點分析
針對制造業產業鏈的特點,面向制造業產業鏈的協同商務系統一般采用聯盟形式搭建,所有業務的協同和交換都是以盟主企業為核心展開的,支持的協同內容可能涵蓋了產品銷售、原材料采購、產品維修服務等。這類協同商務系統根據運營方式不同,一般表現為盟主企業協同門戶或第三方公共服務平臺的形式。然而無論是盟主企業協同門戶還是第三方公共服務平臺,其在數據集成與交換過程中都存在以下特點:a)多數據源集成。可能涉及到盟主企業協同門戶或第三方公共服務平臺與盟主企業內部信息系統之間的集成以及與各協作企業既有信息系統之間的集成,需要集成的系統在數據結構上有可能同構也有可能異構。b)盟主企業協同門戶或第三方公共服務平臺成為數據交換中心。在集成過程中,盟主企業協同門戶或第三方公共服務平臺根據業務需要可能要與多個盟主企業內部系統或協作企業既有系統進行集成。c)防火墻問題。在數據交換的過程中可能涉及到需要穿越企業防火墻的問題。
2 Web services與基于Web services的數據交換技術
目前常用的數據交換方法包括基于文件的數據交換、基于消息隊列的數據交換和基于Web services技術的數據交換等[4]。由于產業鏈協作過程中業務內容的多樣性、業務間的松耦合性,以及以龍頭企業為數據交換中心等特性,使得目前許多傳統的數據交換產品和方案在適用性和易用性方面受到了挑戰。Web services作為新一代分布式計算模型,能有效解決分布式異構商務應用集成的通信問題[2]。Web services的基本架構包括服務提供商、服務消費者和注冊中心這三個實體以及它們之間的交互。它通過定義一組可以通過Internet調用的相關商業邏輯,從而可以使企業將其商務應用功能以公開的、統一的方式提供給企業的合作伙伴[5,6]。Web services建立在一些通用協議的基礎上,基于XML實現數據交換,因此Web services可以穿越企業防火墻。可見,基于Web services的數據交換能滿足制造業產業鏈上企業間數據交換的要求。
3 基于動態Web服務技術的數據交換適配器設計
基于Web services的集成適配器在設計上分為服務器端和客戶端。服務器端系統安裝在盟主企業協同門戶或第三方公共服務平臺上,通過將需要交換的業務內容發布成Web服務,供客戶端調用;客戶端系統安裝在核心企業內部或盟員企業端,通過身份認證后調用服務器端的Web服務,從而完成數據交換。由于制造業產業鏈上企業間數據交換內容的多樣性,要求數據交換適配器在設計上應具有良好的可配置性和易用性。
3.1 基于動態Web服務技術的集成適配器服務器端設計
在數據交換過程中,部署在盟主企業協同門戶或第三方公共服務平臺上的數據交換服務器端系統是整個適配器工作的中心,它需要與不同身份的多個客戶端交換數據。由于制造業產業鏈上企業間協作內容的多樣性和數據交換內容的不可預測性等原因,不可能將所有可能需要交換的業務內容一一枚舉出來,發布成Web服務供客戶端調用。在這種情況下,動態Web服務生成技術成為適配器服務器端設計的關鍵。數據交換適配器服務器端結構如圖1所示。其在設計上主要包括Web service模板、Web service配置文件讀取器及Web service路由器三部分。通過這三部分分工協作完成客戶端身份認證和Web服務的動態生成。
3.1.1 Web服務模板
由于應用環境和應用場合不同,數據交換的內容可能是各種各樣的,Web服務所要封裝的業務和所要實現的功能具有不可預測性。然而無論是要封裝何種業務、實現何種功能,從數據交換的角度,以服務器端為核心都可以簡單地歸納為數據上傳處理和數據下載處理兩種服務。業務內容的不同可以通過XML配置文件和配置文件讀取器來完成,業務數據的處理規則及其需要調用的SQL語句或者存儲過程等存儲在配置文件中。
1)數據下載Web服務模板 數據下載是指按指定的業務規則從服務器端提取數據給客戶端,供客戶端使用。數據下載Web服務模板通過調用身份認證組件對客戶身份進行認證;認證通過后調用XML配置文件讀取器讀取XML配置文件,調用相應的SQL語句或存儲過程提取相關數據,調用數據加密和數據壓縮組件,對數據進行加密和壓縮等處理;處理后的結果供客戶端調用。
2)數據上傳Web服務模板 該模板通過參數獲得客戶端數據,調用身份認證組件對客戶身份進行認證,調用數據解壓組件和數據解密組件,對數據進行解壓和解密等處理;然后調用Web配置文件讀取器讀取XML配置文件,調用相應的SQL語句或存儲過程對數據進行整合處理。
無論是數據下載Web服務模板,還是數據上傳Web服務模板,其能通過讀取配置文件動態生成Web服務的關鍵在于客戶端發送過來的身份信息參數和業務關鍵字參數。通過身份信息參數,可以幫助XML配置文件讀取器完成不同XML文件之間的路由選擇;而通過業務關鍵字參數,可以幫助XML配置文件讀取器在指定的XML配置文件中找到具體的數據交換項的業務方法,從而連接數據庫進行數據的提取或整合操作。根據以上原則,可以在數據交換適配器服務器端發布兩個通用的Web服務,即DataDownLoadService和DataUpLoadService。其定義如下:
public byte[] DataDownLoadService(String CustomerCardID, String KeyWord);
public void DataUpLoadService(String CustomerCardID,String KeyWord,byte[] zipbuffer);
3.1.2 客戶端身份認證
為保證數據的安全,服務器端需要對客戶端Web服務調用者的身份進行認證。客戶端的身份信息存儲在客戶端程序的軟件鎖中,客戶端在調用服務器端的Web服務時,首先要讀取加密鎖中的信息,并對加密鎖中的客戶身份信息進行加密,作為Web服務調用參數傳送到服務器端;服務器端Web服務在進行數據處理前先調用身份認證組件對客戶身份進行認證。在服務器端的Web.Config文件中,配置了所有與服務器端需要交換數據的客戶端身份以及每個客戶端數據交換對應的XML配置文件。身份認證組件的功能是根據身份信息遍歷Web.Config文件中的對應部分,找到匹配的身份信息后,獲得對應的XML文件名,這時Web服務才能響應客戶端請求,進行相應的數據處理。
3.1.3 XML配置文件與配置文件讀取器
數據交換的配置文件基于XML設計。整個配置文件包括數據庫連接配置和數據交換項目集兩部分。數據交換項目集中包含了需要交換的業務項目的配置內容,主要包括業務關鍵字、數據下載和上傳的相關配置等,具體如圖2所示。
當Web服務被調用時,配置文件讀取器被調用,根據用戶身份認證組件所返回的配置文件信息,讀取相應的XML配置文件,獲取數據庫連接,并根據Web服務被調用時所傳送過來的業務關鍵字,對數據交換項目集進行遍歷,找到對應的項目后讀取相應的上傳或下載的業務配置規則,根據配置規則完成下載數據集的提取或上傳數據的整合,從而實現Web服務按客戶端調用需求動態生成。
3.2 數據交換適配器客戶端設計
數據交換適配器客戶端結構如圖3所示。適配器客戶端在設計上主要包括數據交換控制器、數據傳入/傳出處理接口、數據交換配置文件讀取器等。數據交換控制器控制數據交換的啟動、停止以及數據交換的時間間隔等;數據傳入/傳出處理接口調用數據交換配置文件讀取器,從XML配置文件中獲得數據處理邏輯和相應的數據庫連接信息,從而對數據進行處理。
3.2.1 數據交換控制器
在這種服務器—客戶端數據集成適配器模式下,客戶端是數據交換的主動執行方,服務器是數據交換的被動執行方。客戶端通過數據交換控制器控制數據交換的啟動、停止,數據交換的時間間隔,數據交換的狀態監控,軟件鎖中身份信息的讀取、加密,數據交換過程中的異常捕獲和日志處理等。數據交換控制器的核心是配置一個或多個不同時間間隔就觸發一次的數據交換定時器。該定時器根據當前控制器設定的時間間隔定期執行。時間間隔可在配置文件中設置。數據交換控制器在用戶啟動數據交換后,首先讀取數據交換的配置文件,進行數據庫連接、timer時間間隔設置、遠程Web service方法讀取等初始化操作;然后按配置文件規定的數據上傳和下載順序進行數據提取和數據整合操作。
3.2.2 數據傳入/傳出處理接口
與Web service模板類似,數據處理接口也分為數據上傳處理接口和數據下載處理接口。數據上傳處理接口在數據交換控制器讀取和處理上傳數據時被調用,它用來完成由配置文件提取和生成SQL語句或調用存儲過程,從而從數據庫中提取待交換的數據集,進行加密和壓縮處理,調用遠程數據上傳Web service方法,將數據傳到服務器端;數據下載處理接口在數據交換控制器處理需要從服務器端下載的數據時被調用,它用于完成服務器端數據下載Web service的調用,獲得需要下載的數據集,進行解壓和解密處理,然后根據配置文件調用相應的SQL語句或者存儲過程對待下載的數據進行整合處理。
3.2.3 數據交換配置文件與配置文件讀取器
數據交換的配置文件基于XML格式設計。整個配置文件分為數據庫連接配置描述、遠程方法描述、數據交換時間間隔設置、數據上傳業務規則描述集、數據下載處理業務規則描述集五個部分。適配器客戶端配置文件結構如圖4所示。
4 應用案例
面向制造業產業鏈的數據交換適配器在汽車產業鏈協同商務平臺中得到了應用。汽車產業鏈協同商務平臺是一個面向汽車行業商務協同的整體解決方案,平臺基于ASP模式運作,以產業鏈聯盟企業間商務協同為研究對象,支持以盟主企業為核心的車輛協同銷售管理、車輛協同維修服務管理和車輛零部件協同采購管理等。面向制造業產業鏈的數據交換適配器在汽車產業鏈協同商務平臺中的應用,解決了協同商務平臺與各個盟主企業內部業務系統之間的數據交換與集成問題。
5 結束語
有效地解決制造業產業鏈上企業間業務數據交換和信息集成,已經成為協同商務系統所面臨的關鍵共性技術問題。這類數據交換的特點是:需要以盟主企業協同門戶或面向產業鏈協作的公共服務平臺為核心;需要跨越企業防火墻;需要解決與盟主企業及協作企業內部系統多數據源集成。本文針對以上特點,提出和設計了面向制造業產業鏈協同商務系統的數據交換適配器,并在汽車產業鏈協同商務平臺中得到了應用。
參考文獻:
[1]陳廷斌.基于XML/Web服務的供應鏈信息集成技術與方法研究[D].大連:大連理工大學,2004.
[2]徐罡,黃濤,劉紹華,等. 基于軟件體系結構的集成適配器集成模式研究[J].計算機科學,2006,33(3):229233,238.
[3]王淑營,范黎林. 面向汽車產業鏈的企業業務集成平臺[J].華僑大學學報:自然科學版,2006,27(4):433436.
[4]王淑營,趙慧娟,孫林夫.區域網絡化制造ASP服務平臺資源集成框架研究[J].中國機械工程,2005,16(19):17291732.
[5]楊善林,劉洋,馬溪駿.基于Web services面向服務架構的虛擬企業解決方案[J]. 計算機應用研究, 2005,22(10):3638.
[6]HUANG Ying, CHUNG J Y. A Web servicesbased framework for business integration solutions[J]. Electronic Commerce Research and Applications,2003,2(1):1526.