摘要:研究了基于Web Services的電子采購系統;分析了電子采購的需求,并討論了相應的系統分析#65380;設計與實現過程;闡述了基于Web Services的體系架構及其相關實現技術#65377;
關鍵詞:電子采購;動態電子商務;面向服務的體系結構;Web服務;可擴展標記語言
中圖分類號:TP393文獻標志碼:A
文章編號:1001-3695(2007)04-0229-03
0引言
隨著Internet的發展,電子商務將從主要處理商務本身即前端的消費者,進入到一個新的階段#65377;在新階段中,電子商務著重處理后端的商務交易和業務往來,即處理供應鏈系統后端的交互,這些交互大部分介于計算機系統#65380;商務應用程序和軟件組件之間,即動態電子商務(Dynamic Ecommence)[1]#65377;
Web Services是一種基于標準的應用集成方式,它可以將運行在Intranet/Internet分布式服務器上的應用集成在一起,使地理上分布在不同區域的計算機和設備協同工作,為用戶提供各種各樣的服務#65377;利用Web Services,企業能夠迅速地通過Internet向全球用戶提供服務,在廣泛的范圍內尋找可能的合作伙伴#65377;隨著Web Services技術的發展和運用,信息處理活動的重點將從目前的開發和使用應用程序過渡到開發和使用Web Services#65377;作為下一代Web的主流技術,Web Services為動態電子商務的發展提供了堅實的技術基礎#65377;
1SOA和Web Services的系統體系結構
Web Services[2]是在現有Web技術基礎上,通過制定新的協議和標準來實現的#65377;這些新增的協議和標準主要有可擴展的標記語言XML[3]#65380;簡單對象訪問協議SOAP[4]#65380;Web Services 描述語言WSDL[5]和統一描述#65380;發現與集成協議UDDI[6]#65377;支持Web Services的協議的基本結構如圖1所示#65377;
在圖1中,全面實現Web Services需要一組協議的支持#65377;底層是已廣泛使用的網絡層和傳輸層協議;之上是Web Services相關的協議標準,如SOAP#65380;WSDL#65380;WSFL等;再之上是更高層的待開發的有關路由#65380;可靠性和事務處理方面的協議#65377;各個協議層均有管理#65380;QoS#65380;安全等機制#65377;Web Services采用面向服務的體系結構(Service Oriented Architecture,SOA)模型作為它的體系架構#65377;其工作原理如圖2所示[2,5]#65377;
在圖2中,Web Services提供者首先使用UDDI目錄注冊自己提供的服務;之后Web Services請求者通過查詢UDDI目錄來定位自己需要的服務;UDDI返回符合條件的WSDL請求者根據該服務的WSDL生成SOAP消息,并按SOAP/XML格式調用Web Services;最后運行結果由提供者反饋給請求者#65377;
2系統分析與設計
2.1系統需求分析
在傳統的經濟活動中,尤其是制造業中,采購成本占據了企業產品成本的60%~70%,如何降低采購成本已經成為降低企業生產成本的關鍵問題#65377;由于具有信息閉塞#65380;采購周期長#65380;人為因素干擾等特征的傳統人工采購方式已無法適應企業發展的進一步要求;而利用Internet的資源優勢和效率優勢進行電子采購可以大幅度降低采購成本,電子采購已經成為現代化企業生產流程中代替傳統采購方式的不可或缺的一環#65377;近年來,國外特別是發達國家集中電子采購發展很快,并且大有逐步替代傳統采購之勢#65377;集中電子采購與傳統的采購相比有明顯的優勢:
(1)大幅度降低采購費用#65377;傳統采購手續煩瑣復雜,由于購銷雙方的信息不對稱,雙方都需要支付大量的費用進行市場調查;而集中電子采購可以根據需求商品的各個方面的屬性提出采購請求,使符合條件的供貨方通過互聯網溝通信息,減少了諸多中間環節,促使采購費用大幅度降低#65377;
(2)采購范圍國際化#65377;傳統采購選擇范圍往往很狹窄,電子采購則可以通過Internet將視角伸向世界各地,同時保證供貨信息公開#65380;公正#65380;公平#65380;透明;可以使產品質量#65380;價格#65380;服務#65380;物流之間實現最佳組合,及時滿足本企業需求#65377;
(3)企業間變競爭為多贏#65377;為能獲取物美價廉的資源,無論什么行業,在傳統采購中,競爭對手之間往往是相互提防#65380;相互封鎖市場信息,使競爭雙方在同種商品的采購上遭遇不平等待遇#65377;集中電子采購徹底改變了這種被動局面,以往互為競爭對手的買家開始嘗試以采購領域為起點開展不同層次的合作,逐步實現采購聯盟化#65377;
現階段的集中電子采購主要采用EDI方式和半人工半Internet的瀏覽查詢方式#65377;雖然與傳統的#65380;純粹的手工采購方式相比,其在成本節約和經濟效益等方面有明顯的優勢,但還存在許多有待改進的地方:
(1)集成性和適應性差#65377;上網設備的多樣性#65380;操作系統平臺的多樣性以及不同企業所選數據庫的多樣性等造成了目前Internet上的采購信息無法充分共享的困境,缺乏通用的#65380;標準的數據格式成為交換信息的瓶頸#65377;
(2)缺乏系統級的共享性#65377;當前常用的遠程調用技術DCOM#65380;CORBA等都是平臺相關的#65377;在信息的交換過程中,需要維護大量的數據接口信息,成本很高,限制了信息的充分共享#65377;
(3)協同困難#65377;當前的Internet瀏覽查詢方式雖然成本較低,但需要采購人員知道相關的采購網站,逐個瀏覽各個采購網站收集信息,匯總后作出決策分析,其效率十分低下#65377;發揮高效作用的前提是采購人員所登錄的網站最大限度地包括所需的各種采購信息#65377;很顯然,單憑人工方式是無法完成的,它是一種被動的采購方式#65377;
基于以上分析,人們迫切需要一種新的系統架構和新的系統設計與實現途徑#65377;這種新模式還能利用現有的經過公眾認可且都在使用的標準來進行平滑升級,以保證系統的兼容性和通用性#65377;為此提出了基于Web Services的電子采購系統(Eprocurement System Based on Web Services),它是我國動態電子商務應用系統的一個重要組成部分#65377;系統目標如下:
(1)為企業電子采購提供全程服務,而不僅僅是簡單的信息發布;
(2)系統具有開放性#65380;平臺無關性,能夠與企業現存的系統很好地兼容;
(3)企業可以根據自己的個性化要求進行定制,而且過程不復雜;
(4)方便應用服務提供商(Application Service Provider,ASP)擴展和維護系統功能#65377;
2.2系統功能設計
電子采購系統是一個涉及面廣#65380;功能較復雜的系統#65377;其不僅包括供貨方(訂貨方)信息處理功能,還包括網上信息搜尋#65380;網上交易功能#65377;它既可以獨立于企業管理信息系統存在,也可以與企業的ERP#65380;CRM等系統相互使用#65377;由于這里只是一個原型系統,并沒有打算考慮到網上采購所能遇到的全部實際情況,僅僅是提出一個采購系統原型框架,展現了Web Services的強大威力#65377;在實際運行中,Web Services應該是由程序軟件根據UDDI注冊信息通過編程自動獲取#65377;然而目前網上支持的UDDI只有三個,且都是在國外網站上#65377;因此在本系統實現時將直接給出Web Services的地址#65377;這種方式也是目前Web Services實際使用方式的一種#65377;
一個功能完備的網上采購系統將分成企業信息處理模塊#65380;網上交易處理模塊#65380;采購單生成模塊#65380;電子支付模塊以及報表打印模塊,如圖3所示#65377;
(1)訂貨子系統
①信息管理模塊#65377;此模塊實現訂貨方收集各種供貨方企業信息#65380;產品信息#65380;產品相關信息#65380;管理供貨方等級信息及查詢供貨方信息等功能#65377;
②訂單生成模塊#65377;一個采購過程是從一個采購單生成開始的#65377;采購單的生成有兩種方式,一種是采購管理部門提出采購計劃,采購人員人工輸入采購單;另一種是利用企業已有的信息管理系統,如ERP系統自動生成采購申請單,然后根據一些相關規則審批形成最后的采購單#65377;
③電子采購模塊#65377;供貨方收到訂貨方的采購訂單后,供貨方的系統根據供貨方產品數據庫響應采購單;訂貨方可以比較多個供貨方產品信息得出最終選擇#65377;某些需要人工議價的地方可以利用網上議價室實現#65377;
④電子支付模塊#65377;它是本系統的一個擴充#65377;當網上采購雙方達成協議之后,可以利用電子支付這種方便快捷的方式進行交易#65377;傳統的支付方式速度慢#65380;周期長#65380;成本較高,影響了企業流動資金的運轉,已不適應當今市場經濟高效#65380;快捷的要求#65377;企業之間的電子支付可以縮短現金支付時間,減少企業相關報表;利用電子方式保存的信息可以方便快捷地實現搜索功能和統計功能,為以后企業領導的查閱#65380;決策提供方便#65377;
⑤報表打印模塊#65377;盡管以電子方式存儲的數據有著種種方便,但是人們傳統上更愿意閱讀那些報表之類的信息#65377;利用計算機實現電子采購可以最大限度地減少報表的數量#65377;
(2)供貨系統
供貨系統的功能設計方法與訂貨系統基本類似,在此不在贅述#65377;
3系統實現
基于Web Services的主動式電子采購系統是一種需要訂貨方與供貨方之間相互配合才能發揮最大效率的系統#65377;訂貨方系統的實現需要利用大量的供貨方提供的Web Services,同樣供貨系統也是如此#65377;為簡單說明問題,本文只給出訂貨方系統的部分實現方法#65377;
訂貨方選用Windows 2000 Server+SQL Server 2000+Visual Studio.NET實現#65377;Windows 2000 Server是微軟在服務器操作系統NT基礎上的升級版,進一步增加了系統的易用性#65380;穩定性#65380;界面友好性#65377;SQL Server 2000數據庫與Windows 2000系統緊密結合,在功能上有了很大的擴充,性能進一步提高,是中小企業數據庫軟件的首選#65377;Visual Studio.NET開發工具作為微軟.NET計劃中的重要一員于2002年一經推出就受到了廣大開發人員的喜愛,它強大的開發環境#65380;高效的開發效率#65380;翔實的資料信息是其他開發工具所無法比擬的#65377;在編程語言方面選用了C#語言,C#語言是微軟新推出的一種專門為網絡編程量身定做的編程語言#65377;它是在繼承了Java#65380;C#65380;C++[9]等語言的優點后發展起來的一門簡單易學#65380;高效優質的語言#65377;C#語言吸收了Java語言的虛擬機概念,利用CTL這個運行庫做到了跨平臺運行;同時,它與Windows的緊密結合也使它成為Windows下編程的最好選擇#65377;因此,在系統實現時選用了上述組合#65377;
(1)訂貨方發布采購單的Web服務實現
利用Visual Studio.NET開發環境建立一個ASPX Web服務,命名為listPurchaseservice(具體代碼略)#65377;此服務首先檢索采購訂單數據庫,把還沒有完成的采購訂單信息檢索出來,并利用DataSet格式發布給供貨方#65377;DataSet是微軟推出的一種新的基于XML的數據格式#65377;因此只要信息接收者有一個XML解析器就可以進行數據分析#65377;當然,如果可以利用.NET開發環境的話,開發效率和運行效率都會有大幅度提升#65377;
(2)訂貨方提供的供貨方基本信息修改Web服務的實現
此服務可以使供貨方動態地修改自己的基本信息,如公司名稱#65380;公司密碼#65380;公司電話#65380;聯系人#65380;產品簡介等#65377;但公司編號#65380;公司信用等級是由訂貨方維護,供貨方只能瀏覽,無法修改#65377;
(3)訂貨方利用供貨方提供的Web服務實現流水化電子采購
實現流水化電子采購需要供貨方提供一整套的Web服務,包括產品信息的檢索#65380;采購單的處理#65380;網上議價#65380;訂貨單的處理等#65377;
4需要解決的關鍵問題
(1)Web Services代理的實現
使用Web Services部署數據庫應用系統時,若不知道Web Services的URL,必須使用發現工具來完成對Web Services站點的發現工作;若已知URL,發現工作可省略#65377;發現Web Services后,必須使用Web Services描述語言工具Wsdl.exe來創建服務代理#65377;服務代理是一個位于本地計算機上的Class,它封裝了服務通信所需的所有復雜的功能#65377;因此在應用系統中,可以像與本地對象交互一樣與服務代理進而與Web Services服務器進行交互#65377;
(2)Web Services的安全
創建了公用的Web Services后,任何知道該服務URL的人都可以使用#65377;因此必須采取措施來確保Web Services的安全,以便只有被授權者才能使用它們#65377;例如,可使用SOAP報頭(XML)來發送認證信息(作為命令的一部分),只有合法用戶才能訪問該服務#65377;
5結束語
本文中所提出的主動式電子采購系統既可以作為動態電子商務系統的一部分,也可以作為企業獨立的采購系統#65377;主動式電子采購系統能很好地將Internet上的各種資源加以利用,克服了目前傳統電子采購系統的被動性#65380;數據不兼容性等局限;最大限度地實現了采購的自動化#65380;處理的智能化#65380;成本的低廉化#65380;采購過程的流程化,大大縮短了網上采購的周期#65377;同時,該系統也可以更好地維護采購方與供貨方之間的關系,促使雙方結成業務合作伙伴關系,實現雙贏#65377;
本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。