版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、基于.Net的Microsoft企業(yè)體系結(jié)構(gòu)的分析學(xué)號:姓名:摘要本專題的目標(biāo)讀者是那些希望理解Microsoft在企業(yè)、應(yīng)用程序和技術(shù)體系結(jié)構(gòu)方面提供的方法的商業(yè)、軟件和基礎(chǔ)設(shè)施體系結(jié)構(gòu)設(shè)計(jì)師及其程序設(shè)計(jì)人員。全專題闡述了體系結(jié)構(gòu)設(shè)計(jì)中需要考慮的各個(gè)要素,討論了Microsoft.Net在企業(yè)解決方案中的結(jié)構(gòu)和模式實(shí)現(xiàn),包括體系結(jié)構(gòu)的術(shù)語、模式、概念和定義,以及體系結(jié)構(gòu)的一系列視圖。全文定位比較高,對于架構(gòu)和模式不是比較了解的讀者可以參閱本專題提供的參看書目,對于專題提到的一些模式實(shí)現(xiàn)是以.NetFramework為基礎(chǔ)的,有相關(guān)語言功底的讀者就能夠看懂示例代碼,對ASP.NET不是很熟悉的
2、讀者也可以參考MSD聯(lián)機(jī)幫助。接下來就以下幾個(gè)方面對Microsoft企業(yè)體系結(jié)構(gòu)進(jìn)行分析和討論。企業(yè)體系結(jié)構(gòu)ANSI/IEEEStd1471-2000中使用的體系結(jié)構(gòu)定義是:“一個(gè)系統(tǒng)的基本組織,表現(xiàn)為系統(tǒng)的組件、組件之間的相互關(guān)系、組件與環(huán)境之間的相互關(guān)系以及設(shè)計(jì)和進(jìn)化的原理。”企業(yè)體系結(jié)構(gòu)(EA)是幫助組織理解自己的結(jié)構(gòu)及其原理的概念工具。它提供了企業(yè)的結(jié)構(gòu)圖,是業(yè)務(wù)和技術(shù)變化的規(guī)劃工具。一般來說,企業(yè)體系結(jié)構(gòu)表現(xiàn)為一整套相互關(guān)聯(lián)的模型,這些模型描述了企業(yè)的結(jié)構(gòu)和功能。企業(yè)體系結(jié)構(gòu)主要用于系統(tǒng)化的IT規(guī)劃和架構(gòu),以及改進(jìn)的決策過程。EA中的各個(gè)模型以邏輯方式來排列,可以使企業(yè)的詳細(xì)信息處
3、于不斷增長中,包括:*目的和目標(biāo)。過程和組織。*系統(tǒng)和數(shù)據(jù)。*使用的技術(shù)。關(guān)于Microsoft.NetFramework.NETFramework是一種新的計(jì)算平臺,它簡化了在高度分布式Internet環(huán)境中的應(yīng)用程序開發(fā)。.NETFramework旨在實(shí)現(xiàn)下列目標(biāo):*提供一個(gè)一致的面向?qū)ο蟮木幊汰h(huán)境,而無論對象代碼是在本地存儲和執(zhí)行,還是在本地執(zhí)行但在Internet上分布,或者是在遠(yuǎn)程執(zhí)行的。*提供一個(gè)將軟件部署和版本控制沖突最小化的代碼執(zhí)行環(huán)境。*提供一個(gè)保證代碼(包括由未知的或不完全受信任的第三方創(chuàng)建的代碼)安全執(zhí)行的代碼執(zhí)行環(huán)境。*提供一個(gè)可消除腳本環(huán)境或解釋環(huán)境的性能問題的代碼執(zhí)
4、行環(huán)境。«使開發(fā)人員的經(jīng)驗(yàn)在面對類型大不相同的應(yīng)用程序(如基于Windows的應(yīng)用程序和基于Web的應(yīng)用程序)時(shí)保持一致。按照工業(yè)標(biāo)準(zhǔn)生成所有通信,以確保基于.NETFramework的代碼可與任何其他代碼集成。.NETFramework具有兩個(gè)主要組件:公共語言運(yùn)行庫和.NETFramework類庫。公共語言運(yùn)行庫是.NETFramework的基礎(chǔ)。您可以將運(yùn)行庫看作一個(gè)在執(zhí)行時(shí)管理代碼的代理,它提供核心服務(wù)(如內(nèi)存管理、線程管理和遠(yuǎn)程處理),而且還強(qiáng)制實(shí)施嚴(yán)格的類型安全以及可確保安全性和可靠性的其他形式的代碼準(zhǔn)確性。事實(shí)上,代碼管理的概念是運(yùn)行庫的基本原則。以運(yùn)行庫為目標(biāo)的代碼稱
5、為托管代碼,而不以運(yùn)行庫為目標(biāo)的代碼稱為非托管代碼。.NETFramework的另一個(gè)主要組件是類庫,它是一個(gè)綜合性的面向?qū)ο蟮目芍赜妙愋图?,您可以使用它開發(fā)多種應(yīng)用程序,這些應(yīng)用程序包括傳統(tǒng)的命令行或圖形用戶界面(GUI)應(yīng)用程序,也包括基于ASP.NET所提供的最新創(chuàng)新的應(yīng)用程序(如Web窗體和XMLWebservices)。.NETFramework可由非托管組件承載,這些組件將公共語言運(yùn)行庫加載到它們的進(jìn)程中并啟動托管代碼的執(zhí)行,從而創(chuàng)建一個(gè)可以同時(shí)利用托管和非托管功能的軟件環(huán)境。.NETFramework不但提供若干個(gè)運(yùn)行庫宿主,而且還支持第三方運(yùn)行庫宿主的開發(fā)。例如,ASP.NE
6、T承載運(yùn)行庫以為托管代碼提供可伸縮的服務(wù)器端環(huán)境。ASP.NET直接使用運(yùn)行庫以啟用ASP.NET應(yīng)用程序和XMLWebservices。下面的插圖顯示公共語言運(yùn)行庫和類庫與應(yīng)用程序之間以及與整個(gè)系統(tǒng)之間的關(guān)系。該插圖還顯示托管代碼如何在更大的結(jié)構(gòu)內(nèi)運(yùn)行。.NETFramework環(huán)境Microsoft體系結(jié)構(gòu)剖析企業(yè)體系結(jié)構(gòu)中的信息可以從不同角度來審視,并且可以滿足各種需要。體系結(jié)構(gòu)的用戶包括業(yè)務(wù)經(jīng)理和分析員、系統(tǒng)體系結(jié)構(gòu)設(shè)計(jì)師、工作流程和程序分析員、后勤專家、組織分析員等。這些人員要求有高級的概括信息、詳細(xì)的數(shù)據(jù)和各種級別的中間數(shù)據(jù)。這些需要通過創(chuàng)建概念視圖、邏輯分析和物理實(shí)現(xiàn)來滿足。在M
7、icrosoft,我們發(fā)現(xiàn)了四個(gè)重要并且常用的基本審視角度。它們是業(yè)務(wù)、應(yīng)用程序、信息和技術(shù)角度。業(yè)務(wù)角度“業(yè)務(wù)角度”描述了業(yè)務(wù)的運(yùn)作方式。它包括廣泛的商業(yè)策略,以及為了將組織從當(dāng)前狀態(tài)推進(jìn)到構(gòu)想的未來狀態(tài)而做的計(jì)劃。一般包括以下內(nèi)容: 企業(yè)的高級目標(biāo)。 整個(gè)企業(yè)或企業(yè)的重要部分實(shí)施的業(yè)務(wù)過程。執(zhí)行的業(yè)務(wù)功能。*主要的組織結(jié)構(gòu)。*各元素之間的相互關(guān)系。應(yīng)用程序角度“應(yīng)用程序角度”定義了企業(yè)的資產(chǎn)應(yīng)用,以應(yīng)用程序?yàn)橹行摹R话惆ㄏ铝袃?nèi)容:有關(guān)支持業(yè)務(wù)過程的自動服務(wù)的描述。*有關(guān)組織中應(yīng)用程序系統(tǒng)的相互作用和相互依賴(接口)的描述。*根據(jù)企業(yè)目標(biāo)開發(fā)新應(yīng)用程序和改造舊應(yīng)用程序,以及發(fā)展技術(shù)平臺的計(jì)
8、劃。應(yīng)用程序角度可表示跨組織的服務(wù)、信息和功能,連接具有不同技能和技術(shù)的用戶以便達(dá)到共同的業(yè)務(wù)目標(biāo)。信息角度“信息角度”描述了組織在業(yè)務(wù)處理和運(yùn)作過程中需要知道的信息。包括下列內(nèi)容:*標(biāo)準(zhǔn)數(shù)據(jù)模型。*數(shù)據(jù)管理策略。*組織中信息產(chǎn)生和使用的模式說明。信息角度還描述了數(shù)據(jù)與工作流程關(guān)聯(lián)的方式,包括整個(gè)組織中存在的結(jié)構(gòu)化數(shù)據(jù)存儲(如數(shù)據(jù)庫)和非結(jié)構(gòu)化數(shù)據(jù)存儲(如文檔、電子表格和演示文稿等)。技術(shù)角度“技術(shù)角度”對組織提供硬件和軟件支持。它包括但不僅限于:*臺式機(jī)和服務(wù)器硬件。«操作系統(tǒng)。網(wǎng)絡(luò)連接組件。打印機(jī)。調(diào)制解調(diào)器。技術(shù)角度對支持應(yīng)用程序和信息角度所需的基礎(chǔ)設(shè)施和系統(tǒng)組件提供了邏輯化的
9、、獨(dú)立于供應(yīng)商的描述。它定義了一套完成業(yè)務(wù)所需的技術(shù)標(biāo)準(zhǔn)和服務(wù)。盡管有許多角度,但是從這些角度看到的只是一個(gè)企業(yè)體系結(jié)構(gòu)。企業(yè)體系結(jié)構(gòu)的價(jià)值不在于任何一個(gè)單獨(dú)的角度,而在于各角度之間的相互關(guān)系、相互作用和相互依賴。盡管所有角度都是企業(yè)體系結(jié)構(gòu)的關(guān)鍵元素,本文仍將集中討論應(yīng)用程序和技術(shù)角度。應(yīng)用程序和技術(shù)體系結(jié)構(gòu)軟件系統(tǒng)的“功能”需求描述了軟件提供的商業(yè)價(jià)值。對于天氣預(yù)報(bào)服務(wù)來說,功能需求可以描述為“將組織良好的信息A作為輸入,服務(wù)將返回對于信息A所表示的時(shí)間跨度和地理位置來說正確的信息B”?!皯?yīng)用程序體系結(jié)構(gòu)”是自動服務(wù)的體系結(jié)構(gòu),用于支持和實(shí)現(xiàn)這樣的業(yè)務(wù)需求,包括該業(yè)務(wù)與其他應(yīng)用程序之間的接
10、口。它描述了應(yīng)用程序的結(jié)構(gòu),以及該結(jié)構(gòu)如何實(shí)現(xiàn)組織的功能需求。雖然在理想情況下,一個(gè)組織應(yīng)該只有一個(gè)應(yīng)用程序體系結(jié)構(gòu),但實(shí)際上,一個(gè)組織往往會有許多不同的應(yīng)用程序體系結(jié)構(gòu)。軟件系統(tǒng)的“運(yùn)作”需求定義了軟件的可靠性、可管理性、性能、安全性和互操作性等。常見的例子是僅對授權(quán)用戶開放的服務(wù),這種服務(wù)要求在99.999%的時(shí)間內(nèi)都能正確實(shí)現(xiàn)它的功能?!凹夹g(shù)體系結(jié)構(gòu)”是支持組織以及實(shí)現(xiàn)運(yùn)作(非功能)需求(尤其是組織的應(yīng)用程序和信息體系結(jié)構(gòu))的硬件和軟件基礎(chǔ)設(shè)施的體系結(jié)構(gòu)。它描述了所使用技術(shù)的結(jié)構(gòu)和內(nèi)部關(guān)系,以及這些技術(shù)如何支持組織的運(yùn)作需求。好的技術(shù)體系結(jié)構(gòu)可以提供安全性、可用性和可靠性,還可以支持各種
11、其他運(yùn)作需求。但是如果應(yīng)用程序的設(shè)計(jì)沒有利用技術(shù)體系結(jié)構(gòu)的優(yōu)點(diǎn)的話,它的執(zhí)行效果會很差,或者會難以部署和運(yùn)作。同樣,即使一個(gè)優(yōu)秀的應(yīng)用程序體系結(jié)構(gòu)是通過使用最新的技術(shù)、利用可重用軟件組件來構(gòu)建的,能很好地滿足業(yè)務(wù)過程的需求,它也可能不能很好地反映實(shí)際的技術(shù)配置,例如:服務(wù)器沒有經(jīng)過正確配置來支持應(yīng)用程序組件,網(wǎng)絡(luò)硬件設(shè)置不能支持信息流等。這顯示了應(yīng)用程序體系結(jié)構(gòu)和技術(shù)體系結(jié)構(gòu)之間的相互關(guān)系:一個(gè)好的技術(shù)體系結(jié)構(gòu)能夠支持組織中關(guān)鍵的應(yīng)用程序,而一個(gè)好的應(yīng)用程序體系結(jié)構(gòu)能夠充分利用技術(shù)體系結(jié)構(gòu),在整個(gè)運(yùn)作需求中提供一致的性能。1I1應(yīng)用程序休蔡結(jié)構(gòu)技術(shù)體蔡結(jié)構(gòu)應(yīng)用程序開發(fā)數(shù)據(jù)中心的設(shè)置和運(yùn)作功能需
12、求運(yùn)作窩求部署軟件包利笛略_設(shè)需網(wǎng)絡(luò)圖1:體系結(jié)構(gòu)之間的關(guān)系概念、邏輯和物理視圖所有體系結(jié)構(gòu)角度都有多種體系結(jié)構(gòu)視圖,通常分為概念、邏輯和物理視圖?!案拍钜晥D”是最抽象的視圖,一般用系統(tǒng)用戶(非IT專業(yè)用戶)熟悉的術(shù)語來描述。概念視圖用于定義應(yīng)用程序的功能需求和商業(yè)用戶視圖,以便生成業(yè)務(wù)模型。“邏輯視圖”顯示了主要的功能組件和它們在系統(tǒng)中的關(guān)系,而不涉及功能的實(shí)現(xiàn)細(xì)節(jié)。體系結(jié)構(gòu)設(shè)計(jì)師創(chuàng)建的“應(yīng)用程序模型”就是業(yè)務(wù)模型的邏輯視圖,因?yàn)樗鼈儧Q定了如何滿足業(yè)務(wù)目標(biāo)和需求。應(yīng)用程序模型表示應(yīng)用程序體系結(jié)構(gòu)的邏輯視圖?!拔锢硪晥D”是最不抽象的,它們表示特定的實(shí)現(xiàn)組件和它們之間的關(guān)系。物理視圖中的每個(gè)元素
13、一般都由設(shè)計(jì)和開發(fā)過程來實(shí)現(xiàn),如軟件和硬件系統(tǒng)?!皩?shí)現(xiàn)視圖”通常歸組織的開發(fā)或運(yùn)作部門管理,因此不在本文的討論范圍內(nèi)。圖2:體系結(jié)構(gòu)視圖每一個(gè)體系結(jié)構(gòu)級別均可能有(事實(shí)上通常都會有)多個(gè)視圖,例如,每個(gè)應(yīng)用程序通常都會有一個(gè)邏輯應(yīng)用程序體系結(jié)構(gòu)。這些視圖由一組需求來驅(qū)動,反過來又會生成設(shè)計(jì)、開發(fā)、配置和運(yùn)作過程及系統(tǒng)的輸入。功能將求1運(yùn)作需求:iF應(yīng)用程序休索結(jié)構(gòu)1.技術(shù)休系結(jié)構(gòu)1:1tf11ItJar壬t念檯圖|斗H卜|構(gòu)念視BB,d11二逆輯視圖ii邏輯視團(tuán)_FfJ£冥現(xiàn)視圏I案現(xiàn)視國設(shè)計(jì)模式f應(yīng)用程作開發(fā)設(shè)究和運(yùn)作+數(shù)據(jù)中心模式!T應(yīng)用程序部署+設(shè)希網(wǎng)絡(luò)圖3:體系結(jié)構(gòu)視圖和模式
14、本指南的其余部分將集中討論應(yīng)用程序和技術(shù)體系結(jié)構(gòu),以及利用Web服務(wù)技術(shù)構(gòu)造基于服務(wù)的應(yīng)用程序的概念和關(guān)鍵模式。雖然實(shí)現(xiàn)部分(包括設(shè)計(jì)、開發(fā)、配置、部署和管理)對于總體系統(tǒng)的生成十分重要,但是不在本文的討論范圍內(nèi)。應(yīng)用程序體系結(jié)構(gòu)如前所述,應(yīng)用程序體系結(jié)構(gòu)提供了三種視圖:概念、邏輯和物理視圖。體系結(jié)構(gòu)設(shè)計(jì)師可以使用這些視圖在組織中生成支持和滿足其業(yè)務(wù)需求的模型。理想情況下,每個(gè)視圖只有一個(gè)模型,但實(shí)際上每個(gè)視圖可能有多個(gè)模型,這是由于組織和技術(shù)在不斷成長和改變。然而,是否能得到這些模型的合理的最小集合是組織是否靈活、高效的關(guān)鍵。概念視圖概念視圖用于定義應(yīng)用程序的業(yè)務(wù)需求和商業(yè)用戶視圖,以便生成
15、“業(yè)務(wù)模型”。概念性建模技術(shù)(如用例分析、活動圖解、過程設(shè)計(jì)和業(yè)務(wù)實(shí)體建模等)有助于構(gòu)建關(guān)鍵業(yè)務(wù)過程及其使用的數(shù)據(jù)的描述,可以強(qiáng)調(diào)業(yè)務(wù)目標(biāo)和需求,并且不包含實(shí)現(xiàn)技術(shù)。邏輯視圖體系結(jié)構(gòu)設(shè)計(jì)師創(chuàng)建的“應(yīng)用程序模型”就是業(yè)務(wù)模型的邏輯視圖,因?yàn)樗鼈儧Q定了如何滿足業(yè)務(wù)目標(biāo)和需求。應(yīng)用程序模型表示應(yīng)用程序體系結(jié)構(gòu)的邏輯視圖。體系結(jié)構(gòu)設(shè)計(jì)師關(guān)心的是應(yīng)用程序的總體結(jié)構(gòu)。他們決定數(shù)據(jù)管理和處理步驟的對應(yīng)關(guān)系,根據(jù)邏輯信息和順序設(shè)計(jì)模型部件之間的交互,并確定模型保留的數(shù)據(jù)類型和狀態(tài)。物理視圖應(yīng)用程序模型的每個(gè)元素均要求映射到真正的技術(shù)元素。通過這種方法,應(yīng)用程序模型以“實(shí)現(xiàn)模型”的方式得以實(shí)現(xiàn)。當(dāng)程序員將詳細(xì)的
16、業(yè)務(wù)邏輯編寫成代碼時(shí),常規(guī)的開發(fā)過程承擔(dān)了部分實(shí)現(xiàn)任務(wù),但大部分實(shí)現(xiàn)活動應(yīng)歸為框架完成。框架完成是一種開發(fā)技術(shù),大多數(shù)分布式應(yīng)用程序和數(shù)據(jù)管理的基礎(chǔ)設(shè)施都是由復(fù)雜的框架處理的,而這些框架由自定義的應(yīng)用程序邏輯和公布的控件結(jié)構(gòu)進(jìn)行了擴(kuò)展??蚣芡瓿墒归_發(fā)人員避免了繁瑣的工作(例如錯(cuò)綜復(fù)雜的異步消息處理),使普通開發(fā)人員能夠?qū)?xiàng)目作出更大的貢獻(xiàn)。為組織規(guī)劃和構(gòu)建不同級別的模型是一項(xiàng)相當(dāng)費(fèi)時(shí)費(fèi)力的工作。而且,能否正確定義這些模型對于組織來說也是至關(guān)重要的。體系結(jié)構(gòu)模型的設(shè)計(jì)錯(cuò)誤總是會導(dǎo)致嚴(yán)重的設(shè)計(jì)問題或運(yùn)作問題(例如可伸縮性和可靠性問題),嚴(yán)重時(shí)甚至?xí)?dǎo)致項(xiàng)目無法完成以及影響業(yè)務(wù)。體系結(jié)構(gòu)設(shè)計(jì)師正在尋
17、找框架和指南以幫助他們創(chuàng)建和實(shí)現(xiàn)這些模型,并把由于使用錯(cuò)誤模型而帶來的風(fēng)險(xiǎn)降到最低。體系結(jié)構(gòu)設(shè)計(jì)師可以使用兩種體系結(jié)構(gòu)指南和幫助來加快建模速度和降低風(fēng)險(xiǎn)。第一是一組體系結(jié)構(gòu)概念,它們提供:*一般的理解和通信。*關(guān)于如何以及何時(shí)使用某個(gè)概念的指南,以及有關(guān)其屬性的信息。*根據(jù)這些指南或?qū)嶋H的技術(shù),何時(shí)可以實(shí)現(xiàn)和使用這些概念的指示。第二是一組模式,基于大量成功的分布式應(yīng)用程序的實(shí)際經(jīng)驗(yàn),由這些基本概念組成。這些模式通過提供優(yōu)秀的、經(jīng)過測試的體系結(jié)構(gòu)模型,封裝了重要的最佳分布式應(yīng)用程序設(shè)計(jì)實(shí)例,并且能使項(xiàng)目失敗的風(fēng)險(xiǎn)降到最低。應(yīng)用程序設(shè)計(jì)過程和工具圖4:應(yīng)用程序體系結(jié)構(gòu)的視圖這兩組指南(概念和模式)
18、在概念級(它們是企業(yè)模型概念和模式)、邏輯級(它們是應(yīng)用程序概念和模式)和技術(shù)級都有對應(yīng)的指南。提供這些概念和模式對于在組織中成功、快速和高效地實(shí)現(xiàn)系統(tǒng)以及采用技術(shù)是十分關(guān)鍵的。應(yīng)用程序體系結(jié)構(gòu):概念視圖過去,應(yīng)用程序的構(gòu)建是通過集成本地系統(tǒng)服務(wù)(如文件系統(tǒng)和設(shè)備驅(qū)動程序)來實(shí)現(xiàn)的。這種模型在訪問豐富的開發(fā)資源以及精確控制應(yīng)用程序的行為方面提供了很大的靈活性,但同時(shí)也容易出錯(cuò)、成本較高并且較為費(fèi)時(shí)?,F(xiàn)在,可以通過集成整個(gè)網(wǎng)絡(luò)上現(xiàn)有的應(yīng)用程序和服務(wù),然后使用諸如業(yè)務(wù)實(shí)體、數(shù)據(jù)實(shí)體和其他方面在其上提供獨(dú)特的附加價(jià)值,來構(gòu)造復(fù)雜的分布式應(yīng)用程序。這就使開發(fā)人員能夠?qū)⒆⒁饬杏谔峁┆?dú)特的業(yè)務(wù)價(jià)值,從
19、而減少進(jìn)入市場的時(shí)間,提高開發(fā)效率,并且最終開發(fā)出高質(zhì)量的軟件。多年來,這一直是一個(gè)強(qiáng)大的體系結(jié)構(gòu)模型,但它產(chǎn)生了“應(yīng)用程序通風(fēng)口”或“信息孤島”,而這在體系結(jié)構(gòu)重用中會引起重大問題?,F(xiàn)在,我們進(jìn)入下一個(gè)計(jì)算階段。這個(gè)階段通過Internet和Web服務(wù)概念來實(shí)現(xiàn),能夠創(chuàng)建可以隨時(shí)隨地使用的強(qiáng)大的應(yīng)用程序。它增加了應(yīng)用程序的應(yīng)用范圍,并且可以不斷交付軟件。在這種情況下,軟件即服務(wù)-一種通過通信網(wǎng)絡(luò)來訂購和使用的服務(wù)。NET通過結(jié)合N層計(jì)算的高效的緊耦合特點(diǎn)以及Web以信息為導(dǎo)向的松耦合概念來推進(jìn)了這種理念。這種計(jì)算方式稱為“XMLWebService”。它代表了下一代應(yīng)用程序開發(fā)技術(shù),并且是概
20、念性應(yīng)用程序體系結(jié)構(gòu)的基礎(chǔ)。Web服務(wù)是應(yīng)用程序邏輯的有效單元,它們提供了基于消息的、適合通過網(wǎng)絡(luò)訪問的接口。通常,服務(wù)既提供業(yè)務(wù)邏輯,也提供與要解決的問題相關(guān)的狀態(tài)管理。在設(shè)計(jì)服務(wù)時(shí),您的目標(biāo)是有效地封裝與現(xiàn)實(shí)世界中的過程相關(guān)的邏輯和數(shù)據(jù),對要包括在內(nèi)的內(nèi)容和要作為獨(dú)立服務(wù)實(shí)現(xiàn)的內(nèi)容作出明智的選擇。狀態(tài)處理由業(yè)務(wù)規(guī)則來管理。業(yè)務(wù)規(guī)則是相對穩(wěn)定的算法(例如從商品清單匯總出發(fā)票的方法),一般是作為應(yīng)用程序邏輯來實(shí)現(xiàn)的。服務(wù)由策略來管理。與業(yè)務(wù)規(guī)則相比,策略的穩(wěn)定性較差,并且可能是區(qū)域性的或針對特定客戶的。策略一般是通過在運(yùn)行時(shí)查閱表格來驅(qū)動的。因此,服務(wù)的更完整的定義應(yīng)該是:“服務(wù)是能在網(wǎng)絡(luò)上運(yùn)
21、行的軟件單元,它通過消息來實(shí)現(xiàn)邏輯、管理狀態(tài)和通信,并且由策略來管理。”應(yīng)用程序模式模式是問題在環(huán)境中的解決方案。模式將從某個(gè)領(lǐng)域內(nèi)收集的特定知識整理成文。應(yīng)用程序模式是體系結(jié)構(gòu)級的模式,它定義了體系結(jié)構(gòu)設(shè)計(jì)在特定應(yīng)用程序環(huán)境中的最佳實(shí)例。模式有許多種分類法可以作為特定模式的定義和解釋,但不在本文的討論范圍內(nèi)。許多現(xiàn)有的體系結(jié)構(gòu)模式都可以應(yīng)用到基于Web服務(wù)的體系結(jié)構(gòu)中,但在Web服務(wù)的新結(jié)構(gòu)還帶來了大量新的模式。技術(shù)體系結(jié)構(gòu)與應(yīng)用程序體系結(jié)構(gòu)相似,技術(shù)體系結(jié)構(gòu)也提供了三種視圖:概念、邏輯和物理視圖。體系結(jié)構(gòu)設(shè)計(jì)師可以使用這些視圖在組織中生成支持和滿足其運(yùn)作需求的模型。就象應(yīng)用程序一樣,應(yīng)當(dāng)只
22、有一個(gè)技術(shù)體系結(jié)構(gòu),但實(shí)際上由于組織和技術(shù)在不斷成長和改變,幾乎總是存在多個(gè)技術(shù)體系結(jié)構(gòu)。組織的一個(gè)關(guān)鍵需求是將這些完全不同的技術(shù)體系結(jié)構(gòu)集成到一個(gè)完整的體系結(jié)構(gòu)中,以便重用現(xiàn)有的應(yīng)用程序,并使這些技術(shù)體系結(jié)構(gòu)達(dá)到合理的最小集合。這樣一個(gè)公共的體系結(jié)構(gòu)對于創(chuàng)建高效、靈活的組織是至關(guān)重要的。概念視圖技術(shù)體系結(jié)構(gòu)的概念視圖用于將技術(shù)領(lǐng)域制定為結(jié)構(gòu)和框架。它用于定義、命名和定位IT供應(yīng)商和使用技術(shù)的組織都能理解的領(lǐng)域,確保在實(shí)現(xiàn)組織的運(yùn)作或非功能性需求時(shí)所需的所有技術(shù)領(lǐng)域都得到定義并可供組織使用。邏輯視圖技術(shù)體系結(jié)構(gòu)的邏輯視圖是主要的功能元素,它們提供對企業(yè)級運(yùn)作需求的支持,并提供相互之間的內(nèi)部關(guān)系。企業(yè)技術(shù)元素(例如數(shù)據(jù)庫、郵件系統(tǒng)、交易支持和可靠的消息傳送)是在邏輯視圖中提供的。在這個(gè)級別上提供的技術(shù)通常由企業(yè)軟件供應(yīng)商與服務(wù)器一起提供。物理視圖技術(shù)體系結(jié)構(gòu)的每個(gè)元素均需要映射到
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度城市照明工程承包服務(wù)合同3篇
- 2025年度幼兒園窗戶安全改造及責(zé)任認(rèn)定合同4篇
- 2024年綜合安防系統(tǒng)集成服務(wù)合同
- 2025年度商業(yè)場所蟲害防治與形象維護(hù)服務(wù)合同4篇
- 2025年度生態(tài)園區(qū)代建工程合同模板4篇
- 2025年度殯儀館遺體運(yùn)輸與悼念活動全程服務(wù)合同書3篇
- 2024年版婚內(nèi)共同財(cái)產(chǎn)管理及使用合同
- 2025年度新能源儲能項(xiàng)目搭建與銷售合同4篇
- 2025年度化工企業(yè)環(huán)境風(fēng)險(xiǎn)防控合同3篇
- 2025年度大豆國際貿(mào)易結(jié)算與清算服務(wù)合同3篇
- 直播帶貨助農(nóng)現(xiàn)狀及發(fā)展對策研究-以抖音直播為例(開題)
- 腰椎間盤突出疑難病例討論
- 《光伏發(fā)電工程工程量清單計(jì)價(jià)規(guī)范》
- 2023-2024學(xué)年度人教版四年級語文上冊寒假作業(yè)
- (完整版)保證藥品信息來源合法、真實(shí)、安全的管理措施、情況說明及相關(guān)證明
- 營銷專員績效考核指標(biāo)
- 陜西麟游風(fēng)電吊裝方案專家論證版
- 供應(yīng)商審核培訓(xùn)教程
- 【盒馬鮮生生鮮類產(chǎn)品配送服務(wù)問題及優(yōu)化建議分析10000字(論文)】
- 肝硬化心衰患者的護(hù)理查房課件
- 2023年四川省樂山市中考數(shù)學(xué)試卷
評論
0/150
提交評論