第 4 章:SOA 方法學(xué)
這是《SOA:原理方法實踐》的第 4 章。在第 3 章我們已經(jīng)詳細(xì)闡述了作為一種新的方法,SOA使用哪些原理和方法去構(gòu)建IT系統(tǒng),并使得構(gòu)建的IT系統(tǒng)更加靈活,更加和業(yè)務(wù)對齊。那么如何在實踐的層面上,在IT的生命周期中貫徹SOA的原理和思想,一步步構(gòu)建出符合SOA設(shè)計原則的IT系統(tǒng)呢?這個問題的答案屬于SOA方法學(xué)的范疇。
廣義上講,SOA方法學(xué)貫穿于IT生命周期的各個階段和各個方面:IT系統(tǒng)項目的規(guī)劃,系統(tǒng)分析和設(shè)計,系統(tǒng)的實施,系統(tǒng)的部署和維護(hù),以及整個過程中的監(jiān)控和管理等。從實踐的角度說,已經(jīng)出現(xiàn)如下SOA方法學(xué)。
(1)面向服務(wù)的分析和設(shè)計(SOAD)。以服務(wù)為中心,根據(jù)業(yè)務(wù)需求發(fā)現(xiàn)服務(wù)、描述服務(wù),并設(shè)計服務(wù)的實現(xiàn)。
(2)面向服務(wù)的開發(fā)過程。結(jié)合現(xiàn)有開發(fā)過程,規(guī)劃以服務(wù)為中心的開發(fā)過程中的角色、職責(zé)、活動和工件。
(3)SOA的成熟度分析和遷移路線圖。以服務(wù)為中心,分析現(xiàn)有或目標(biāo)系統(tǒng)的成熟度,并設(shè)計從現(xiàn)有成熟度遷移到目標(biāo)成熟度的路線圖。
(4)SOA監(jiān)管。設(shè)計組織和流程,確保SOA的設(shè)計原則在IT生命周期中得以貫徹,管理服務(wù)生命周期中的各種遷移的合理性等。
本章對SOA方法學(xué)的闡述主要集中在面向服務(wù)的分析和設(shè)計。首先介紹SOA方法學(xué)和主要的幾種方法學(xué)的區(qū)別和聯(lián)系,其次以IBM的SOMA(Service Oriented Modeling and Architecture,面向服務(wù)的建模與架構(gòu))為例,介紹SOA分析和設(shè)計中的主要內(nèi)容和方法。
4.1 SOA方法學(xué)和其他方法學(xué)的比較
與SOA的設(shè)計原則類似,SOA方法學(xué)并不是全新的方法學(xué),它是現(xiàn)有方法學(xué)的繼承和發(fā)展。一方面,原有的方法學(xué)并不能解決由于服務(wù)概念的引入帶來的問題,如怎樣發(fā)現(xiàn)服務(wù),怎樣定義服務(wù);另一方面,服務(wù)是一個水平的概念,而不是一個垂直的概念,在服務(wù)分析和設(shè)計的過程中,需要處理服務(wù)和現(xiàn)有方法學(xué)產(chǎn)物的關(guān)系,如業(yè)務(wù)流程和服務(wù),企業(yè)架構(gòu)和SOA,服務(wù)和對象等。因此服務(wù)的分析和設(shè)計最主要的職責(zé)在于發(fā)現(xiàn)服務(wù)、定義服務(wù)和實現(xiàn)服務(wù),并指導(dǎo)如何和其他方法學(xué)結(jié)合完成這些職責(zé)。
如圖4-1所示揭示了現(xiàn)有幾種方法學(xué)的定位。圖的橫坐標(biāo)將項目周期分為分析、設(shè)計和開發(fā)三個階段,縱坐標(biāo)將域分為應(yīng)用、架構(gòu)和業(yè)務(wù)。流程建模(BPM)用于業(yè)務(wù)領(lǐng)域的分析和設(shè)計,如業(yè)務(wù)流程的定義、業(yè)務(wù)數(shù)據(jù)的定義等;企業(yè)架構(gòu)(EA)和方案架構(gòu)(SA)側(cè)重在架構(gòu)領(lǐng)域的分析和設(shè)計,如根據(jù)業(yè)務(wù)需求確定目前目標(biāo)業(yè)務(wù)系統(tǒng)和IT系統(tǒng),根據(jù)目標(biāo)系統(tǒng)需求設(shè)計主要架構(gòu)元素和它們之間的關(guān)系;面向?qū)ο蟮姆治龊驮O(shè)計(OOAD)則貫穿分析、設(shè)計和開發(fā)三個階段,它主要分析細(xì)粒度的業(yè)務(wù)需求,如用例,分析和設(shè)計實現(xiàn)這些需求的類和對象,以及它們之間的關(guān)系。
圖4-1 傳統(tǒng)的方法學(xué)
如圖4-2所示,面向服務(wù)的分析和設(shè)計貫穿項目周期的三個階段和IT系統(tǒng)的三個域。這暗示著,在操作層面上,面向服務(wù)的分析和設(shè)計會和其他方法學(xué)緊密相聯(lián)。
圖4-2 SOA和傳統(tǒng)的方法學(xué)
1.BPM和SOA
業(yè)務(wù)流程建模是一個相當(dāng)零散的領(lǐng)域,存在各種各樣的方法和技術(shù),有效的方法可以幫助企業(yè)對業(yè)務(wù)進(jìn)行合理的劃分,從而求得業(yè)務(wù)層面的靈活性。有些方法則側(cè)重于流程建模本身,例如如何確定和定義業(yè)務(wù)流程中的業(yè)務(wù)活動、業(yè)務(wù)數(shù)據(jù)、業(yè)務(wù)規(guī)則、業(yè)務(wù)指標(biāo)和業(yè)務(wù)事件等,但是BPM并不會幫助我們?nèi)グl(fā)現(xiàn)和定義服務(wù)。從SOA的方法學(xué)來看,各種BPM的結(jié)果是面向服務(wù)的分析和設(shè)計的重要輸入,如業(yè)務(wù)組件、業(yè)務(wù)流程和業(yè)務(wù)目標(biāo)是服務(wù)發(fā)現(xiàn)的重要依據(jù),而業(yè)務(wù)指標(biāo)、業(yè)務(wù)數(shù)據(jù)、業(yè)務(wù)規(guī)則等是服務(wù)暴露的分析的重要依據(jù)。
2.EA和SOA
盡管和BPM一樣,EA是一個零散的領(lǐng)域,但是當(dāng)前的EA主要側(cè)重于定義跨越業(yè)務(wù)單元邊界的系統(tǒng)框架,企業(yè)范圍內(nèi)系統(tǒng)的主要構(gòu)成元素,這些元素間的關(guān)系,以及將這些元素有機組合在一起的參考架構(gòu)。但是,各種EA技術(shù)都缺乏業(yè)務(wù)領(lǐng)域的藍(lán)圖指導(dǎo)企業(yè)架構(gòu)的設(shè)計。從SOA方法學(xué)來看,一方面,面向服務(wù)的分析和設(shè)計通過和BPM結(jié)合將業(yè)務(wù)分解為各種類型的服務(wù),可以作為企業(yè)業(yè)務(wù)的藍(lán)圖指導(dǎo)企業(yè)架構(gòu)的設(shè)計;另一方面,企業(yè)架構(gòu)設(shè)計的結(jié)果,如參考架構(gòu),又是服務(wù)實現(xiàn)的重要依據(jù)。
3.OOAD和SOA
面向?qū)ο蟮姆治龊驮O(shè)計告訴我們使用Use Case捕獲需求,并設(shè)計類、對象及對象間交互來滿足Use Case定義的需求。但是面向?qū)ο蟮姆治龊驮O(shè)計往往只是局限在單個應(yīng)用內(nèi)部,它不會缺乏業(yè)務(wù)藍(lán)圖和企業(yè)架構(gòu)藍(lán)圖的指導(dǎo)。從SOA方法學(xué)看,在原理層面上,OOAD中的很多設(shè)計原則,如抽象、隔離關(guān)注等被SOA繼承和發(fā)揚,并應(yīng)用于服務(wù)的定義和實現(xiàn)中。而在操作層面上,服務(wù)模型為OOAD進(jìn)行類和對象設(shè)計提供了業(yè)務(wù)藍(lán)圖和企業(yè)架構(gòu)藍(lán)圖,與此同時,Use Case作為對業(yè)務(wù)流程的補充說明被用于服務(wù)的發(fā)現(xiàn)和定義中。
4.2 面向服務(wù)的分析和設(shè)計概述
本章以下小節(jié)將以IBM的SOMA為例,說明面向服務(wù)的分析和設(shè)計的主要任務(wù)和方法。 IBM的SOMA將面向服務(wù)的分析和設(shè)計分為服務(wù)發(fā)現(xiàn)、服務(wù)規(guī)約和服務(wù)實現(xiàn)。服務(wù)的實現(xiàn)包括服務(wù)、組件和服務(wù)組裝的實現(xiàn)。
為了開始面向服務(wù)的分析和設(shè)計,如下的輸入需要被用在分析和設(shè)計的過程中。
(1)業(yè)務(wù)領(lǐng)域(Business Domain)和業(yè)務(wù)功能域(Business Function Area)。業(yè)務(wù)領(lǐng)域和業(yè)務(wù)功能域的劃分勾勒了目標(biāo)企業(yè)的業(yè)務(wù)結(jié)構(gòu),它一方面幫助我們從全局的角度來理解目標(biāo)企業(yè)的業(yè)務(wù),另一方面也是我們進(jìn)行組織服務(wù)層次結(jié)構(gòu)的重要依據(jù)。
(2)業(yè)務(wù)流程(Business Process)。業(yè)務(wù)流程,尤其是第一級的業(yè)務(wù)流程,對企業(yè)經(jīng)營全局至關(guān)重要。通常,通過第一級的業(yè)務(wù)流程可以追溯到企業(yè)中最為重要的業(yè)務(wù)活動,因此第一級業(yè)務(wù)流程是我們進(jìn)行服務(wù)分析和設(shè)計的主要入口點。
(3)業(yè)務(wù)目標(biāo)(Business Goal)。組織和業(yè)務(wù)流程都是為業(yè)務(wù)目標(biāo)服務(wù)的,為了完成業(yè)務(wù)目標(biāo),組織和業(yè)務(wù)流程都有可能進(jìn)行適當(dāng)?shù)恼{(diào)整。分析業(yè)務(wù)目標(biāo)在有些時候可以幫助我們發(fā)現(xiàn)一些通過業(yè)務(wù)流程分析遺漏的服務(wù);與此同時,業(yè)務(wù)目標(biāo)也是服務(wù)描述中一部分重要的內(nèi)容。
(4)現(xiàn)有系統(tǒng)(Existing System)?,F(xiàn)有系統(tǒng)是目前業(yè)務(wù)活動和業(yè)務(wù)流程的寫照,通過分析現(xiàn)有系統(tǒng)模塊和功能,能夠幫助發(fā)現(xiàn)服務(wù)。與此同時,對于現(xiàn)有系統(tǒng)的分析和理解是進(jìn)行服務(wù)實現(xiàn)設(shè)計的重要前提。
在掌握了業(yè)務(wù)領(lǐng)域劃分、業(yè)務(wù)流程、業(yè)務(wù)目標(biāo)和現(xiàn)有系統(tǒng)后,SOMA按照三個階段來進(jìn)行服務(wù)分析和設(shè)計--發(fā)現(xiàn)服務(wù)、描述服務(wù)和服務(wù)實現(xiàn),如圖4-3所示。在SOMA三個階段的分析和設(shè)計過程中,分析和設(shè)計人員還需要借助于傳統(tǒng)方法中的一些素材,如業(yè)務(wù)環(huán)境和業(yè)務(wù)用例、IT環(huán)境、當(dāng)前應(yīng)用或組件的模型和設(shè)計等,從而完成與現(xiàn)有業(yè)務(wù)和IT緊密結(jié)合的服務(wù)規(guī)范和服務(wù)設(shè)計。在運用SOMA的過程中,這三個階段并不是一次性完成的,一般需要一個迭代的過程。另外,從企業(yè)范圍而言,分析和確定的服務(wù)模型也有一個演化的過程,并逐漸地精化,越來越貼近業(yè)務(wù)。
圖4-3 面向服務(wù)的建模和架構(gòu)(SOMA)概貌圖
4.2.1 服務(wù)發(fā)現(xiàn)
服務(wù)發(fā)現(xiàn)是SOMA進(jìn)行服務(wù)分析和設(shè)計的第一步。服務(wù)發(fā)現(xiàn)的主要任務(wù),是確定在一定范圍內(nèi)(通常是企業(yè)范圍,或若干關(guān)鍵業(yè)務(wù)流程范圍內(nèi))可能成為服務(wù)的候選者列表。
目前有三種方式發(fā)現(xiàn)服務(wù)的候選者,它們分別是自上而下的領(lǐng)域分解、自下而上的現(xiàn)有系統(tǒng)分析和中間對齊的業(yè)務(wù)目標(biāo)建模。
1.自上而下(領(lǐng)域分解)方式
自上而下的領(lǐng)域分解方式從業(yè)務(wù)著手進(jìn)行分析,選擇端到端的業(yè)務(wù)流程進(jìn)行逐層分解至業(yè)務(wù)活動,并對其間涉及的業(yè)務(wù)活動和業(yè)務(wù)對象進(jìn)行變化分析。
業(yè)務(wù)組件模型是業(yè)務(wù)領(lǐng)域分解的輸入之一。業(yè)務(wù)組件模型是一種業(yè)務(wù)咨詢和轉(zhuǎn)型的工具,它根據(jù)業(yè)務(wù)職責(zé)、職責(zé)間的關(guān)系等因素,將業(yè)務(wù)細(xì)分為業(yè)務(wù)領(lǐng)域、業(yè)務(wù)執(zhí)行層次和業(yè)務(wù)組件。由于企業(yè)內(nèi)部和外部環(huán)境的不同,每個業(yè)務(wù)組件在成本、投資、競爭力等方面不盡相同,因此,每個業(yè)務(wù)組件在企業(yè)發(fā)展的過程中戰(zhàn)略職責(zé)和演化的路徑也是不同的,于是由于角度的不同,就形成了所謂的業(yè)務(wù)組件的"熱點視圖"。SOA是一種特別強調(diào)業(yè)務(wù)和IT互動的技術(shù)。對于面向服務(wù)的分析和設(shè)計,業(yè)務(wù)組件模型提供了進(jìn)行服務(wù)劃分的依據(jù),而且這種劃分的方法可以平滑地從業(yè)務(wù)視圖細(xì)化到服務(wù)視圖。
端到端的業(yè)務(wù)流程是業(yè)務(wù)領(lǐng)域分解的另一個輸入。將業(yè)務(wù)流程分解成子流程或者業(yè)務(wù)活動,逐級進(jìn)行,直到每個業(yè)務(wù)活動都是具備業(yè)務(wù)含義的最小單元。流程分解得到的業(yè)務(wù)活動樹上的每一個節(jié)點,都是服務(wù)的候選者,構(gòu)成了服務(wù)候選者組合。業(yè)務(wù)領(lǐng)域分解可以幫助發(fā)現(xiàn)主要的服務(wù)候選者,加上自下而上和中間對齊方式發(fā)現(xiàn)的新服務(wù)候選者,最終會構(gòu)成一個服務(wù)候選者列表。在SOA的方法中,服務(wù)是業(yè)務(wù)組件間的契約,因此將服務(wù)候選者劃分到業(yè)務(wù)組件,是服務(wù)分析中不可或缺的一步。服務(wù)候選者列表經(jīng)過業(yè)務(wù)組件的劃分,會最終形成層次化的服務(wù)目錄。
變化分析的目的是將業(yè)務(wù)領(lǐng)域中易變的部分和穩(wěn)定的部分區(qū)分開來,通過將易變的業(yè)務(wù)邏輯及相關(guān)的業(yè)務(wù)規(guī)則剝離出來,來保證未來的變化不會破壞現(xiàn)有設(shè)計,從而提升架構(gòu)應(yīng)對變化的能力。變化分析可能會從在未來需求的分析中發(fā)現(xiàn)一些新的服務(wù)候選者,這些服務(wù)候選者需要加入到服務(wù)候選者目錄中。
2.自下而上(已有資產(chǎn)分析)方式
自下而上的已有資產(chǎn)分析方式的目的是利用已有資產(chǎn)來實現(xiàn)服務(wù),已有資產(chǎn)包括:已有系統(tǒng)、套裝或定制應(yīng)用、行業(yè)規(guī)范或業(yè)務(wù)模型等。
通過對已有資產(chǎn)的業(yè)務(wù)功能、技術(shù)平臺、架構(gòu)及實現(xiàn)方式的分析,除了能夠驗證服務(wù)候選者或者發(fā)現(xiàn)新的服務(wù)候選者,還能夠通過分析已有系統(tǒng)、套裝或定制應(yīng)用的技術(shù)局限性,盡早驗證服務(wù)實現(xiàn)決策的可行性,為服務(wù)實現(xiàn)決策提供重要的依據(jù)。
3.中間對齊(業(yè)務(wù)目標(biāo)建模)方式
中間對齊的業(yè)務(wù)目標(biāo)建模方式的目的是幫助發(fā)現(xiàn)與業(yè)務(wù)對齊的服務(wù),并確保關(guān)鍵的服務(wù)在流程分解和已有資產(chǎn)分析的過程中沒有被遺漏。
業(yè)務(wù)目標(biāo)建模將業(yè)務(wù)目標(biāo)分解成子目標(biāo),然后分析哪些服務(wù)是用來實現(xiàn)這些子目標(biāo)的。在這個過程中,為了可以度量這些服務(wù)的執(zhí)行情況并進(jìn)而評估業(yè)務(wù)目標(biāo),我們會發(fā)現(xiàn)關(guān)鍵業(yè)務(wù)指標(biāo)、度量值和相關(guān)的業(yè)務(wù)事件。
結(jié)合這三種方式的分析,我們發(fā)現(xiàn)服務(wù)候選者組合,并按照業(yè)務(wù)范圍劃分為服務(wù)目錄。同時為服務(wù)規(guī)約做好其他準(zhǔn)備,如通過對已有資產(chǎn)分析進(jìn)行的技術(shù)可行性評估,通過業(yè)務(wù)目標(biāo)建模發(fā)現(xiàn)的業(yè)務(wù)事件等。
關(guān)于服務(wù)發(fā)現(xiàn)示例,請參見本書第13章"SOA體系結(jié)構(gòu)的實例講解"。
4.2.2 服務(wù)規(guī)約
經(jīng)過服務(wù)發(fā)現(xiàn)階段,服務(wù)目錄基本形成,但是對于每個服務(wù)本身的屬性信息依然零散。為了能夠?qū)⒎?wù)作為業(yè)務(wù)和IT層面互動的契約,服務(wù)規(guī)約階段是必不可少的。服務(wù)規(guī)約階段的主要任務(wù)是規(guī)范性地描述服務(wù)各個方面的屬性,其中既包括輸入/輸出消息等功能性屬性,服務(wù)安全約束和響應(yīng)時間等服務(wù)質(zhì)量約束,以及服務(wù)在業(yè)務(wù)層面的諸多屬性,如涉及的業(yè)務(wù)規(guī)則、業(yè)務(wù)事件、時間/人員消耗等。與此同時,規(guī)范描述服務(wù)相關(guān)方面的關(guān)系也很重要,如服務(wù)間依賴關(guān)系,服務(wù)和業(yè)務(wù)組件間關(guān)系,服務(wù)和IT組件間關(guān)系和服務(wù)消息間關(guān)系等。
進(jìn)行服務(wù)暴露決策是服務(wù)規(guī)約的第一步。理論上所有的服務(wù)候選者都可以暴露為服務(wù),但是一旦暴露為服務(wù),該服務(wù)候選者就必須滿足附加的安全性、性能等方面的要求。企業(yè)還必須為服務(wù)的規(guī)劃、設(shè)計、開發(fā)、維護(hù)、監(jiān)管支付額外的開支,因此,我們會根據(jù)一定的規(guī)則來決定將哪些服務(wù)候選者暴露為服務(wù)。
這些規(guī)則包含以下幾個方面:
- 業(yè)務(wù)對齊。該服務(wù)候選者可以支持相關(guān)的業(yè)務(wù)流程和業(yè)務(wù)目標(biāo)。
- 可組裝。該服務(wù)候選者滿足技術(shù)中立、自包含及無狀態(tài)等特點,同時還滿足復(fù)合應(yīng)用的相關(guān)非功能性需求。
- 可重用。該服務(wù)候選者可以在不同的應(yīng)用、流程中重用,從而減少重復(fù)的功能實現(xiàn),降低開發(fā)和維護(hù)的成本。
基于企業(yè)應(yīng)用開發(fā)的經(jīng)驗,我們還可以有其他一些方面的考慮。
經(jīng)過服務(wù)暴露決策后,層次化的服務(wù)目錄基本形成。下一步是結(jié)合傳統(tǒng)的方法學(xué)對服務(wù)各方面屬性進(jìn)行描述。這里說的傳統(tǒng)的方法學(xué)是指企業(yè)架構(gòu),面向?qū)ο蟮姆治龊驮O(shè)計等。在企業(yè)架構(gòu)方法學(xué)的產(chǎn)物中,企業(yè)數(shù)據(jù)模型有助于服務(wù)消息的定義,IT組件模型有助于服務(wù)和IT組件間關(guān)系的描述,企業(yè)安全架構(gòu)有助于服務(wù)安全約束規(guī)約,企業(yè)基礎(chǔ)設(shè)施架構(gòu)有助于服務(wù)質(zhì)量的描述。在面向?qū)ο蠓治龊驮O(shè)計的產(chǎn)物中,業(yè)務(wù)用例和系統(tǒng)用例有助于服務(wù)消息、服務(wù)相關(guān)業(yè)務(wù)規(guī)則和業(yè)務(wù)事件等描述,組件靜態(tài)模型和動態(tài)模型有助于描述服務(wù)間關(guān)系。
經(jīng)過服務(wù)規(guī)約,服務(wù)組件(企業(yè)組件)和服務(wù)的各個方面的屬性被規(guī)范下來,它會成為業(yè)務(wù)和IT層面互動的基礎(chǔ)。以后,業(yè)務(wù)對IT的新需求會體現(xiàn)為服務(wù)層面的變更,IT層面的變化會盡量遵循服務(wù)規(guī)約。在SOA監(jiān)管的配合下,任何對服務(wù)規(guī)約的變更都是可管理和可控制的。
關(guān)于服務(wù)規(guī)約示例,請參見本書第13章"SOA體系結(jié)構(gòu)的實例講解"。
4.2.3 服務(wù)實現(xiàn)
經(jīng)過服務(wù)規(guī)約階段,作為業(yè)務(wù)和IT互動的服務(wù)契約已經(jīng)形成。但是服務(wù)契約和IT的現(xiàn)狀還是有很大差距的,如和某個服務(wù)對應(yīng)的業(yè)務(wù)邏輯分散于不同的應(yīng)用中,分散在不同的地域,某些服務(wù)目前主要依靠人工完成,還沒有IT層面的實現(xiàn)。
為了將服務(wù)契約落在實地,服務(wù)實現(xiàn)階段通過差距分析,并結(jié)合傳統(tǒng)方法學(xué)完成每個服務(wù)實現(xiàn)決策。這其中包括的內(nèi)容甚多,其主要內(nèi)容如下。
(1)現(xiàn)有系統(tǒng)分析:調(diào)研現(xiàn)有系統(tǒng)架構(gòu),了解架構(gòu)風(fēng)格、主要架構(gòu)元素和能力和架構(gòu)元素的基本特征;調(diào)研現(xiàn)有應(yīng)用,了解應(yīng)用主要功能和對外接口,技術(shù)實現(xiàn)特征等;如果應(yīng)用構(gòu)建已經(jīng)遵循基于組件開發(fā)規(guī)范,編制應(yīng)用已有組件目錄;如果應(yīng)用并沒有組件化,將應(yīng)用覆蓋的業(yè)務(wù)功能和服務(wù)規(guī)約確定的企業(yè)組件進(jìn)行映射,確定應(yīng)用現(xiàn)有"組件"目錄。
(2)確定服務(wù)分配:通過服務(wù)組件和現(xiàn)有系統(tǒng)分析確定的IT組件間差距分析,確定服務(wù)組件和IT組件間映射關(guān)系。例如,一個服務(wù)組件對應(yīng)一個或多個IT組件,沒有IT組件和服務(wù)組件對應(yīng),沒有服務(wù)組件和IT組件對應(yīng),服務(wù)組件和IT組件對應(yīng)時有能力缺失或不匹配等。經(jīng)過差距分析,一些服務(wù)中介被確定下來去實現(xiàn)服務(wù)路由,或消息格式等不匹配現(xiàn)象,一些新的IT組件被確定下來,如實現(xiàn)某業(yè)務(wù)流程的組件或?qū)崿F(xiàn)人工服務(wù)的組件等。最終,服務(wù)組件都被映射到IT組件上,從而完成服務(wù)分配。
(3)服務(wù)實現(xiàn)決策:服務(wù)分配僅僅確定了需要哪些組件來實現(xiàn)服務(wù),但是并沒有實現(xiàn)的策略和技術(shù)層面的決策。服務(wù)實現(xiàn)決策首先幫助確定服務(wù)實現(xiàn)策略,是在現(xiàn)有基礎(chǔ)上進(jìn)行服務(wù)包裝,還是重新構(gòu)建,如果重新構(gòu)建,是采用已經(jīng)包裝好的應(yīng)用,還是外包,或者自己構(gòu)建;如果是服務(wù)包裝的話,有哪些候選方案等。通常服務(wù)實現(xiàn)決策和傳統(tǒng)的架構(gòu)決策是關(guān)聯(lián)在一起的。
(4)服務(wù)基礎(chǔ)設(shè)施設(shè)計:服務(wù)的功能實現(xiàn),非功能需求的滿足都需要服務(wù)基礎(chǔ)設(shè)施的支持。在進(jìn)行服務(wù)實現(xiàn)決策后,需要根據(jù)具體的需求確定服務(wù)基礎(chǔ)設(shè)施的能力,如用于支撐人工服務(wù)的人工服務(wù)容器,用于支撐服務(wù)編排的流程引擎等。
將服務(wù)實現(xiàn)階段的各種產(chǎn)物和傳統(tǒng)設(shè)計方法結(jié)合起來,就可以開始指導(dǎo)實際服務(wù)實現(xiàn)的實施。
posted on 2007-11-05 12:09
白切面片 閱讀(540)
評論(0) 編輯 收藏