【摘 要】本文以Handcraft公司為例,先分析了Handcraft公司已有信息管理系統的狀況和不足、面臨的問題。然后介紹生產管理系統的開發要求,以及同其庫存管理系統、銷售管理系統、物流管理系統以及會計等信息管理系統的集成方案,并詳細論述了數據集成模式和基于SOA的系統集成。
【關鍵詞】系統集成;中介模式;數據集成;SOA的集成
1.系統集成背景
1.1 Handcraft公司簡介
Handcraft公司是一家總部在美國紐約的全球性質的高檔手工藝品生產與銷售商,其業務遍及亞洲、非洲和歐洲等。該公司下屬的主要部門有生產、庫存、銷售、物流和會計等。
由于手工藝品有著很強的地域特征,因此其生產部門遍及世界各地,在某個具體的地方都會成立一個小的生產基地,雇用當地著名的手工藝品藝術家進行生產。大多數手工藝品都不適合頻繁的遠距離運輸,因此Handcraft公司采用異地庫存的方式,只有當訂單到來時,才進行一次運輸活動。
銷售部門目前主要接受客戶的電話訂單,由業務員將客戶信息手工錄入銷售信息系統,并監督完成每一筆訂單。物流部門以訂單為依據,組織合適的交通工具與路線,完成工藝品的運輸與配送。會計部門在每一筆訂單完成后,都要記錄整個訂單的產生、中轉等情況,并記錄其中產生的費用信息。
目前,部門之間的交互主要靠電話和傳真等完成,因此每年花在通信與人工監督上的費用超過整個公司銷售總額的10%左右,開銷很大。
1.2公司面臨的挑戰和解決策略
雖然手工藝制品具有很高的附加價值,其銷售的利潤也很大,但是Handcraft公司還是面臨巨大的挑戰。首先,是采用人工的方式效率低下,客戶從訂購到得到貨物平均需要15天左右的時間,其中還要進行繁雜的轉賬等手續。另外一個巨大的挑戰是Handwork公司的出現,這是一家后起之秀,該公司雖然不像Handcraft公司那樣有著豐富的貨源,但該公司廣泛采用新興的互聯網技術,公司運營效率很高。
為了充分發揮公司在貨源方面的優勢和長期以來形成的客戶群體,Handcraft公司決定采用網上訂貨的方式接受訂單,并對現有的系統進行集成,支持網上訂貨。公司總裁Tim為此專門召開了一次全體公司中高層視頻會議,做了強有力的動員與要求,決定不惜一切代價進行系統集成,保持公司在該領域的領頭地位。
2.Handcraft已有系統介紹
經過多年的信息化建設,Handcraft公司僅僅實現了庫存管理系統、銷售管理系統、物流管理系統以及會計等信息管理系統。其生產系統還沒有信息系統的支持,目前依舊采用手工記錄的方式追蹤生產過程。庫存系統是一個典型的MIS系統,前端采用VisualC++6.0開發的客戶端,后端的數據庫是Access,庫存系統接受用戶手工輸入一些貨物信息,打印出提貨單,交給倉庫保管員提取相應的貨物;銷售系統采用的是COBOL開發的系統,后端使用Sybase數據庫;物流系統采用的是Java開發的基于Web的系統,應用服務器使用Tomcat,基于Web Service技術,數據庫采用MySQL;會計系統是一個購買系統,能夠暴露一定的接口,提供對應的功能,本身也能夠實現財務功能。
由于該公司前期缺乏有效的統一規劃和設計,并且四個系統的建設時間不同,所采用的數據庫也不相同,導致四個系統相互獨立,無法進行數據共享。隨著公司“供、產、銷、管”信息一體化要求的提出,企業決定在對原有系統進行改造的基礎上新增生產管理信息系統,通過新舊系統之間的集成,達到數據資源共享的目的,縮短客戶自訂貨到到貨日程,提高企業運營效率,以提高企業的管理水平和市場競爭能力。
3.系統集成方案介紹
3.1集成需求
我們只考慮某個地區包括生產、庫存、銷售、物流和會計這幾個應用系統的集成問題。由于Handcraft公司的生產部門還沒有信息系統,所以必須開發一個新的系統來記錄整個生產的過程,監控生產過程。預留接口支持網上訂貨。從數據集成、API集成兩個方面對現有的幾個應用系統進行集成,實現系統之間數據的共享;實現網上訂貨的方式接受訂單,從而保持Handcraft公司在該領域的領頭地位。公司決定采取B/S三層結構的網絡模式對系統進行集成,因為B/S結構方便易用,零客戶端。
3.2方案描述
3.2.1生產系統的定制開發
根據要求,需要為Handcraft公司生產部門開發一個新的信息系統,用來記錄整個生產的過程,監控生產過程,我們將此子系統稱為生產管理信息系統。并預留接口支持網上訂貨。生產系統目前擬采用Java Web技術和方式進行開發,數據庫采用MySql數據庫管理系統,采用基于B/S模式進行訪問管理。根據Handcraft公司生產部門的特點、結合調研的業務需求、為庫存、銷售、物流和會計等系統預留接口,并支持網上訂貨業務模式的處理。
生產過程如圖3.1所示。根據生產計劃,研發部人員設計產品并設計出相應的產品生產的各種圖紙,經過審核允許生產時,材料部放樣并將加工原料發放給加工部,工人進行一系列的加工制造、裝飾完成后,產品進入包裝組進行包裝,最后成品進入庫房。所開發的生產管理信息系統需要對產品設計圖紙,設計是否通過審核、放樣、所需材料數量、加工狀態、成品入庫數量進行實時地監控和管理。
3.1 產品生產過程
3.2.2 數據集成
因為Handcraft公司現有的各個信息管理系統所采用的數據庫均不相同,有Access、Sybase、MySQL等,并且開發工具、開發技術也不同,為了各個異構數據源之間的數據共享, 從而有效地利用數據資源, 為進一步全面實現生產、庫存、銷售、物流和會計各業務之間的信息化管理,必須進行數據集成。
生產系統目前擬采用Java Web技術和方式進行開發,數據庫采用MySql數據庫管理系統。庫存系統是采用VC結合Access開發的單機版管理系統,沒有設計對外界程序提供服務的接口。銷售系統是采用COBOL結合Sybase數據庫開發的系統,沒有設計對其他程序提供數據服務接口。物流系統采用的是Java開發的基于Web的系統,應用服務器使用Tomcat,基于Web Service技術,具備良好的可擴展性和與其他軟件通訊的能力。會計系統是一個購買的系統,能夠提供一定的軟件接口,提供對應的功能,具備一定的與其他。
系統數據共享與交換的能力。本次將采用中介模式(或稱為全局模式 mediated schema)對Handcraft公司新開發的生產信息管理系統和原有的庫存、銷售、物流和會計信息系統進行數據集成。中介模式是現在最典型的數據集成方法,它通過提供一個統一的數據邏輯視圖來隱藏底層的數據細節,使用戶可以把集成的數據源看作一個統一的整體。異構數據集成系統整體架構如圖3.2所示。
3.2 異構數據集成系統整體架構圖
數據集成系統通過中介模式將各數據源的數據集成起來,而數據仍存儲在各個局部數據源中,通過各數據源的包裝器(wrapper)對數據進行轉換使之符合中介模式。用戶的查詢是基于中介模式的,不必知道每個數據源的模式。中介器(mediator)將基于中介模式的一個查詢轉換為基于各局部數據源模式的一系列查詢,交給查詢引擎做優化并執行。對每個數據源進行的查詢都會返回結果數據,中介器再對這些數據做連接和集成,最后將符合用戶查詢要求的信息返回給用戶。
使用中介模式的數據集成方法解決了各數據源中數據的更新問題。因為當底層數據源發生變化時,只需要修改中介模式的虛擬邏輯視圖就可以了,大大減少了數據集成系統的維護開銷。
3.2.3基于SOA的集成
面向服務的體系結構(Service-Oriented Architecture,SOA,也叫面向服務架構)。SOA是一個組件模型,它將應用程序的不同功能單元(稱為服務)通過這些服務之間定義良好的接口和契約聯系起來。接口是采用中立的方式進行定義的,它應該獨立于實現服務的硬件平臺、操作系統和編程語言。
Handcraft公司要做的集成,就是面向電子商務的全面轉型,與傳統商務的區別就在于互聯網平臺,SOA是目前在電子商務領域比較熱門的技術。SOA它依賴于用XML 和Web服務實現并以軟件的形式存在的更加具體的觀念和技術。目前Web服務是最適合實現SOA 的技術,通過Web服務可以實現系統之間數據與業務的銜接。對于每一個部門的子系統, 可以把需要提供給外界的信息以Web服務的方式來提供, 而其它需要相關信息的系統通過調用這些Web服務來獲取。
本次集成通過采用企業服務總線(Enterprise Service Bus,ESB)來實現SOA。ESB 是傳統中間件技術與XML、Web服務等技術結合的產物。ESB 提供了網絡中最基本的連接中樞,是構筑企業神經系統的必要元素,也是實現最佳SOA 的方法之一。作為網絡上分布式服務的基礎結構元素,ESB 集成方法通過異步的、面向消息的通信基礎結構,把系統當作相互連接的離散性分布式服務。采用服務總線對各個獨立的Web服務進行架構,通過服務層將各業務功能點以服務的形式暴露于系統之外,其它信息系統可以通過服務協約對服務進行訪問,是實現高校信息系統之間數據和業務無縫銜接的理想方案。
4.總結
綜上所述,在Handcraft公司各應用系統之間建立起的信息集成關系。通過幾項技術的綜合應用,在數據源與數據應用請求點之間建立起流暢的數據交換處理機制,提供包括應用請求,應答、文件傳遞、數據庫訪問、對象調用、硬拷貝輸出及Web客戶端發布服務等多項交互功能。
【參考文獻】
[1]張璐.信息系統集成——數據集成的兩種方法及其比較分析[J].情報探索,2006,11.
[2]龔尚福.信息系統集成與數據集成策略[J].西安科技大學學報,2008,6.
[3]張富.基于SOA的物流信息系統集成方案研究[J].商場現代化,2008,3.