引言
軟件的本質決定了它的復雜性,而電子商務中應用到的軟件不僅復雜而且多變,不斷變更的多樣化需求使得傳統軟件架構已經無法滿足當前的需要。面向服務的軟件架構(SOA)為處理這種復雜性提供了一種有效的解決方案。
1.電子商務定義
網絡技術的迅速發展,使得互聯網已日益成為一個世界上最大的、交互式的、多媒體的市場交易體系結構,它是收集信息和提供信息的最佳渠道。通過互聯網,商家和用戶可以方便的傳遞信息,完成交易。這種全新的交易方式實現了公司間信息與資金的無紙化交換。于是電子商務便孕育而生,并逐漸流行起來。“由于信息技術的爆炸式增長和電子商務的迅速出現,我們正目睹一場商業革命。信息收集、購物、貿易、中介代理、銀行業、會計、審計、金融、談判、協同、營銷、供應、伙伴合作、培訓、開會、排程、生產、分銷、服務、零售等商務活動均因新的信息技術而變化。簡而言之,我們所知道的許多經營行為都將發生變化。所有的組織,無論是大型企業還是中小型公司都將不可避免地面對這些技術發展所帶來的挑戰。”[1] 如今,電子商務的普遍應用,正證實了這些預言。
2.面向服務的架構(SOA,Service oriented Architecture)
面向服務的體系結構是一個組件模型,它將應用程序的不同功能單元(稱為服務)通過這些服務之間定義良好的接口和契約聯系起來。接口是采用中立的方式進行定義的,它應該獨立于實現服務的硬件平臺、操作系統和編程語言。這使得構建在各種各樣的系統中的服務可以以一種統一和通用的方式進行交互[1]。
2.1SOA的優勢
面向服務的體系結構可以基于現有的系統投資來發展,而不需要徹底重新創統。如果企業將開發力量集中在創建服務、利用現有的技術、結合基于組件的方開發軟件上,將獲得如下幾方面好處:
2.1.1利用現有的資產。SOA提供了一個抽象層,通過這個抽象層,企業可續利用它在IT方面的投資,方法是將這些現有的資產包裝成為提供企業功能的企業可以繼續從現有的資源中獲取價值,而不必重新從頭開始構建。
2.1.2更易于集成和管理復雜性。在面向服務的體系結構中,集成點是規范是實現。這提供了實現透明性,并將基礎設施和實現發生的改變所帶來的影響降低限度。通過提供針對基于完全不同的系統構建的現有資源和資產的服務規范,變得更加易于管理,因為復雜性是隔離的。當更多的企業一起協作提供價值鏈會變得更加重要。
2.1.3更快的響應和上市速度。從現有的服務中組合新的服務的能力為需要地響應苛刻的商業要求的組織提供了獨特的優勢。通過利用現有的組件和服務,減少完成軟件開發生命周期包括收集需求、進行設計、開發和測試所需的時間。得可以快速地開發新的業務服務,并允許組織迅速地對改變做出響應和減少上市時間。
2.1.4減少成本和增加重用。通過以松耦合的方式公開業務服務,企業可以業務要求更輕松地使用和組合這些服務。這意味資源副本的減少、以及重用和降本的可能性的增加。而這一切都依賴于的優勢高可復用性、靈活性,以及更好的靈活性和可用性。
2.2Web服務的基礎架構
Web服務是描述了一些操作的接口,該接口隱藏了服務實現的細節,允許通過獨立于服務實現、獨立于硬件和軟件平臺、獨立于編寫服務所用的編寫語言的方式使用該服務,這使得基于Web服務的應用程序具備松散耦合、面向組件和跨技術實現的特點[2]。通過標準化的XML傳遞機制,用戶可以通過網絡訪問這些操作。Web服務是用標準的、規范的基于XML的WSDL(Web Services Description Language,Web服務描述語言)語言描述的,這稱為Web服務的服務描述。這一描述包含了與服務交互所需要的全部細節,包括消息格式、傳輸協議和位置,Web服務可以單獨或同其他Web服務一起用于實現復雜的商業交易。 基本的Web服務架構包含了SOAP、WSDL、UDDI等支持服務請求者與服務提供者進行交互,以及用于Web服務發現的規范,如下圖所示。
服務提供者通常用WSDL來描述它所提供的web服務,然后將該WSDL描述發布; 服務請求者可以通過UDDI或其他注冊庫(registry)來獲取WSDL描述,并通過性服務提供者發送一個SOAP消息來請求執行服務。基本的Web服務標準,己經適于構建基于SOA的應用了。
3.SOA的主要支撐技術
SOA技術實施中涉及的主要技術包括以下幾個: ESB 、Web Service、XML、SOAP、WSDL、UDDI。其中ESB、Web Service、XML尤為重要。
3.1ESB(Enterprise Service Bus)
企業服務總線(ESB),它是SOA架構的支柱技術。它提供一種開放的、基于標準的消息機制,完成服務與服務、服務與其它組件之間的互操作。XML[3](Extensible Markup Language)可擴展的標記語言(XML),XML是由萬維網協會(W3C)創建的一種基于文本的規范標記語言,是Web Service平臺中表示數據的基本格式。
3.2Web service
Web service是建立可互操作的分布式應用程序的新平臺, 它定義了應用程序如何在Web上實現互操作性。Web Service是就現在而言最適合實現SOA的一些技術的集合, Web Service標準的成熟和應用的普及為廣泛的實現SOA架構提供了基礎。
4.SOA軟件架構在電子商務系統中的應用—電子競標系統
電子商務的智能化發展,使電子商務的應用迅速滲透到各個領域,而電子競標就是電子商務的一個重要部分,在電子商務中發揮著越來越重要的作用。電子競標是指消費者根據自己的要求,提供自己所需要的產品、服務需求和價格定位等相關信息,通過互聯網向外發布自己的信息,進行招標。供應商通過互聯網獲得招標信息,進行投標,再經過在線評標、定標等過程,最后,供應商之間以競爭的方式決定出最終產品或服務供應商,從而使消費者以最優的性能價格比獲得自己所要的產品或服務。這樣,通過招標、開標、投標、評標、定標和管理等操作,就完成了整個競標過程。
4.1基于SOA的電子競標系統的架構方案
各應用系統在瀏覽器/服務器接口(B/S)供用戶使用的同時,還可以通過Web服務接口(W/S)進行交互,實現數據共享和服務共享。各應用系統的管理端通過客戶端/服務器端接口(C/S)維護各自系統。Web Services 掛接在Internet 上, 同時通過UDDI 注冊機制在UDDI 注冊中心登記, 面向Internet 提供服務。外部用戶通過UDDI 注冊機制發現符合自己要求的服務, 找到服務提供者, 然后通過Internet遠程調用該服務。
4.2基于SOA的電子競標系統的設計分析
根據電子競標系統的需求分析,電子競標系統的主要功能有招標管理、支持在線評標、專家庫管理、投標管理、監督管理等。從這些功能中,需要找到合適的業務流程。以招標管理為例,招標管理主要包括發布招標信息、標書編制、開標、評標、決標、定標等招標項目全過程的業務管理功能。首先,利用SOA自上而下、自下而上或中間對齊的服務發現方式對該業務流程進行分解,獲得相對應的服務。有了這些服務后,需要進一步對服務進行規范化,從而可以將這些服務定義服務接口,以實現服務。
在電子競標系統的設計過程中,把整個系統分成幾個子系統,每一個子系統可利用Web Services 提供統一的接口標準,在SOA 下實現信息的構建、解析和傳輸,從而實現系統間的數據交換。
5.結論
SOA成本低、易集成,它可以整合現有資源,并且有了新的應用時也很容易擴展而無須對現有系統作大的改動,只需將新的功能注冊為服務即可。這樣既提高了復用性,又有很好的擴展性。SOA的松耦合性和靈活的特點必將使它成為電子商務應用中占有絕對優勢的軟件工程實踐方法。
參考文獻:
[1]毛新生.SOA原理.方法.實踐.北京:電子工業出版社,2007.
[2]柴曉路.《Web服務架構與開放互操作技術》,北京:清華大學出版社,2002.6.
[3]李勁.動態電子商務的Web 服務.北京:清華出版社,2002.
論文指導 >
SCI期刊推薦 >
論文常見問題 >
SCI常見問題 >