本篇重點(diǎn)說(shuō)明下SOA服務(wù)架構(gòu)規(guī)劃中服務(wù)目錄規(guī)劃集的形成。SOA服務(wù)架構(gòu)規(guī)劃不僅僅是基于SOA參考架構(gòu)的思想,更多的是需要基于TOGAF和企業(yè)架構(gòu)的思想來(lái)分析和構(gòu)建完整的服務(wù)架構(gòu)和服務(wù)目錄庫(kù)。 服務(wù)架構(gòu)規(guī)劃的重點(diǎn)有一項(xiàng)是形成完整的服務(wù)目錄庫(kù),除了服務(wù)本身的多維度分層外,更加重點(diǎn)重要的還是識(shí)別出粗粒度和可重用的各類(lèi)服務(wù)。SOA的核心思想就是要將企業(yè)的業(yè)務(wù)或信息系統(tǒng)劃分為多個(gè)松耦合的組件,然后根據(jù)端到端流程的協(xié)同關(guān)系來(lái)識(shí)別和發(fā)現(xiàn)服務(wù),即業(yè)務(wù)能力組件化和組件能力服務(wù)化;其次則是要基于云平臺(tái)能力向云端集中化遷移的核心思路,來(lái)考慮整個(gè)IT應(yīng)用架構(gòu)中需要平臺(tái)化的能力,同時(shí)將平臺(tái)層能力以服務(wù)化的方式暴露出來(lái)。 在整個(gè)服務(wù)架構(gòu)規(guī)劃中也可以看到,對(duì)于主數(shù)據(jù)和共享數(shù)據(jù)的平臺(tái)化建設(shè),PaaS技術(shù)平臺(tái)的建設(shè),最終將識(shí)別和產(chǎn)生共享數(shù)據(jù)服務(wù)和平臺(tái)技術(shù)服務(wù)。而對(duì)于從流程協(xié)同和業(yè)務(wù)架構(gòu)分析入手,更多的產(chǎn)生業(yè)務(wù)服務(wù);而對(duì)于從數(shù)據(jù)架構(gòu)中的CRUD矩陣分析入手則產(chǎn)生數(shù)據(jù)服務(wù)。 下面再重點(diǎn)闡述下整個(gè)服務(wù)架構(gòu)規(guī)劃的核心邏輯和過(guò)程: 首先最重要的仍然是當(dāng)前業(yè)務(wù)和IT現(xiàn)狀調(diào)研,一開(kāi)始不要陷入細(xì)節(jié),而是應(yīng)該從端到端業(yè)務(wù)流程分析入手,對(duì)于工程項(xiàng)目建設(shè),供應(yīng)鏈,研發(fā)生命周期管理,財(cái)務(wù)概預(yù)核決算,從客戶(hù)提出產(chǎn)品或服務(wù)的需求到最終的能力交付,都可以看到有不少的端到端流程,這些端到端流程是入手的基礎(chǔ)。通過(guò)端到端流程的梳理可以看到流程在多個(gè)業(yè)務(wù)部門(mén)和單位之間的協(xié)同,最終再將業(yè)務(wù)流程協(xié)同映射到跨多個(gè)業(yè)務(wù)系統(tǒng)或業(yè)務(wù)組件間的業(yè)務(wù)和數(shù)據(jù)協(xié)同??缦到y(tǒng)交互核心流程分析和梳理是識(shí)別組件或服務(wù)的關(guān)鍵一個(gè)步驟。 由于企業(yè)整個(gè)服務(wù)目錄規(guī)劃前期只會(huì)做到系統(tǒng)間協(xié)同和能力開(kāi)放,因此分析到跨系統(tǒng)的端到端流程已經(jīng)足夠來(lái)分析和識(shí)別有價(jià)值的服務(wù)。基于由頂向下的思路我們不會(huì)馬上落入到某一個(gè)業(yè)務(wù)活動(dòng),或者某一個(gè)業(yè)務(wù)系統(tǒng)中功能細(xì)節(jié),而是分而治之,先將業(yè)務(wù)系統(tǒng)內(nèi)部處理流程和邏輯看為黑盒,先分析清楚哪些能力是業(yè)務(wù)系統(tǒng)必須開(kāi)放出去以實(shí)現(xiàn)跨系統(tǒng)流程交互的。 在跨系統(tǒng)流程交互中分析中,自然會(huì)分析到業(yè)務(wù)協(xié)同和交互過(guò)程中傳遞的業(yè)務(wù)對(duì)象,我們會(huì)進(jìn)一步去分析這些業(yè)務(wù)對(duì)象映射的數(shù)據(jù)對(duì)象,通過(guò)單獨(dú)數(shù)據(jù)對(duì)象的分析以方便我進(jìn)行單純的數(shù)據(jù)架構(gòu)建模和數(shù)據(jù)CRUD分析,這個(gè)對(duì)于后續(xù)分析和識(shí)別數(shù)據(jù)分析是相當(dāng)重要的。 其次,基于業(yè)務(wù)和IT調(diào)研的內(nèi)容,我們會(huì)初步分析和構(gòu)建當(dāng)前企業(yè)的流程和業(yè)務(wù)架構(gòu),數(shù)據(jù)架構(gòu)和應(yīng)用架構(gòu),同時(shí)在業(yè)務(wù)架構(gòu)中識(shí)別和分析相關(guān)的業(yè)務(wù)組件。如果僅僅是分析到系統(tǒng)間的話(huà),那么最終的業(yè)務(wù)系統(tǒng)就是相關(guān)的業(yè)務(wù)組件,這跟我們識(shí)別和分析的粒度密切相關(guān)。 在這些都分析完成后,接著可以構(gòu)建完整的企業(yè)業(yè)務(wù)系統(tǒng)間的集成架構(gòu)視圖,也可以理解為當(dāng)前的系統(tǒng)間詳細(xì)接口和集成情況。這個(gè)圖梳理清楚后,基本系統(tǒng)間交互的接口全部梳理清楚,也清楚了系統(tǒng)間集成和交互關(guān)系。對(duì)于集成架構(gòu)圖的形成,一方面是采用第一步談到跨系統(tǒng)流程分析和梳理中的接口交互,數(shù)據(jù)架構(gòu)CRUD分析中的數(shù)據(jù)共享和交互;一方面是由底向上的分析當(dāng)前系統(tǒng)間已有的歷史接口情況,并對(duì)接口的業(yè)務(wù)場(chǎng)景和對(duì)應(yīng)流程進(jìn)行補(bǔ)充梳理,以形成完整的集成架構(gòu)視圖。 集成架構(gòu)視圖做好后,可以將前期分析的端到端流程執(zhí)行情況,進(jìn)一步在集成架構(gòu)視圖上進(jìn)行交互模擬,以確保核心的接口交互和服務(wù)沒(méi)有遺漏。特別要注意的是在前面我們重點(diǎn)分析的是端到端流程,但是很多不是端到端流程場(chǎng)景,例如只跨了兩個(gè)業(yè)務(wù)系統(tǒng)的簡(jiǎn)單業(yè)務(wù)流程或協(xié)同,業(yè)務(wù)需要進(jìn)一步考慮清楚,否則會(huì)出現(xiàn)較多的集成接口遺漏。 最后,我們需要基于集成架構(gòu)視圖情況,規(guī)劃和梳理服務(wù)目錄集,即按照服務(wù)的分層和分類(lèi)來(lái)重新審視當(dāng)前的系統(tǒng)間集成和能力共享。下面來(lái)看下幾類(lèi)典型服務(wù)的進(jìn)一步服務(wù)識(shí)別和規(guī)劃。 流程服務(wù):注意端到端流程也是流程服務(wù),但是該流程更加長(zhǎng),也很多對(duì)應(yīng)到最終的流程編排和組合。因此需要從端到端流程中進(jìn)一步找尋流程協(xié)作片段。這種流程片斷最好是完全的自動(dòng)化業(yè)務(wù)流,或者有較強(qiáng)的一致性和事務(wù)要求,這些都可以識(shí)別為流程服務(wù)。 業(yè)務(wù)服務(wù):業(yè)務(wù)服務(wù)更多強(qiáng)調(diào)的是業(yè)務(wù)規(guī)則類(lèi)服務(wù),或者強(qiáng)調(diào)基于業(yè)務(wù)功能操作觸發(fā)的單條數(shù)據(jù)操作類(lèi)服務(wù)。業(yè)務(wù)服務(wù)將更加體現(xiàn)服務(wù)調(diào)用的實(shí)時(shí)性,和業(yè)務(wù)操作場(chǎng)景的綁定以及業(yè)務(wù)邏輯的體現(xiàn)?;蛘呖梢岳斫鉃閷?duì)于業(yè)務(wù)流程中橫向?qū)崟r(shí)協(xié)同的服務(wù)都可以看做為業(yè)務(wù)服務(wù)。 數(shù)據(jù)服務(wù):更多的是從數(shù)據(jù)CRUD分析中識(shí)別出來(lái)的服務(wù),其中既包括了主數(shù)據(jù),也包括了共享動(dòng)態(tài)數(shù)據(jù)。一個(gè)服務(wù)如果更多是事后非實(shí)時(shí)的共享數(shù)據(jù)傳遞或數(shù)據(jù)查詢(xún),則更多的是數(shù)據(jù)服務(wù)。從這個(gè)層面來(lái)說(shuō)業(yè)務(wù)服務(wù)和數(shù)據(jù)服務(wù)本身存在一些較難界定清楚的地方。也有一些方法是單獨(dú)僅僅將主數(shù)據(jù)和共享數(shù)據(jù)中心提供出來(lái)的分析規(guī)劃為數(shù)據(jù)服務(wù),其它全部為業(yè)務(wù)服務(wù)。 服務(wù)全部識(shí)別清楚后,還需要進(jìn)一步對(duì)服務(wù)進(jìn)行歸并去重,服務(wù)組合或拆分,服務(wù)關(guān)鍵屬性的定義,以方便根據(jù)服務(wù)類(lèi)型,服務(wù)技術(shù)分層,服務(wù)提供系統(tǒng)多層面來(lái)規(guī)劃完整的服務(wù)目錄庫(kù)和服務(wù)視圖。
|
|