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