業務中台是企業數字化轉型的重要平台和基礎。業務中台是企業能力共享平台,前台可以基於中台能力快速搭建新的應用、推出新的產品和服務、快速響應業務需求。那么如何建設業務中台呢?
01 什么是業務中台?
中台可以作為一種企業組織管理模式和理念(Middle Office),也可以作為一種新的企業IT架構(Middle Platform)。從技術系統層面看,中台是企業級共享服務平台。業務中台是從多個相似的前台業務應用共享的需求中產生的。業務中台本質上是一個體系或系統,它實現了企業核心的業務運行機制,因而處於企業運行生態的核心位置,所有應用系統都必須與之建立聯系。業務能力輸出的內容主要是核心業務數據和業務流程,這是中台存在的本質。
業務中台圍繞以交易為核心關聯的領域組成。典型的業務中台由多個業務服務中心組成。下圖就是阿里的業務中台,包括用戶中心、商品中心、交易中心、評價中心、店鋪中心、搜索中心、營銷中心等。

中心是一個獨立的體系,它能夠獨立運營,支撐多個業務場景。同時,它也是中台能力的物理載體,既提供了中台能力的編碼實現,又在運行時生成一個物理進程承載多個中台能力。
中台建設過程中,要把握和前台的邊界。中台既要滿足業務的需求,但又不能過度參與業務。中台提供的能力要具有靈活性和可定制性。便於業務方根據規范自主完成,減少溝通成本,提升效率。中台所沉淀的共享服務能力並不要求支撐所有前台業務,只要有多於一個前台業務需要某一種能力,此能力即可沉淀為中台能力,因此不能大而全地建設中台。中台的建設是可以分階段逐步實施的,無需將所有重構全部一起推動。
02 業務中台建設五步法
業務中台建設主要遵循五步法:
第一步是業務調研和抽象,並划分領域(主題域);
第二步是企業級架構設計,包括業務中心划分和應用架構、技術架構設計、數據流向等;
第三步是1級架構設計,包括產品設計、組件建模、系統設計;
第四步是分步實施中台;
第五步是持續進行中台運營,包括業務運營、內容運營、技術運營和數據運營等。

我們這里重點關注前三個步驟。
03 業務調研、抽象和領域建模
在業務抽象階段,通過業務調研和業務分析,設計業務藍圖和抽象業務元素,為下一階段的中心建模階段准備頂層思想和業務素材。這一階段,根據企業不同的實際情況,可輕可重。比如企業已經做過咨詢調研和流程梳理工作了,那就可以在以往工作成果基礎上進行短期的業務理解和業務設計工作了。如果企業對以往的咨詢工作並不滿意或者上一次咨詢時間久遠,競爭環境發生了巨大的變化,這就需要做仔細完整的業務咨詢了。
1.業務調研
這里的調研分析不同於傳統的系統調研。我們更加強調的是,以面向中心的思想來探討業務,認為業務流程只是形式,核心是各領域中心的結構和運行機制。各中心的設計需要滿足業務流程的需要,但是這不是核心目的。我們主張在業務調研過程中進行領域模型的探討,反復思考逐步清晰業務領域的邊界。
2.頂層業務分析
在業務調研結束后,結合行業趨勢、類似項目的比較以及自身的經驗,輸出企業的商業模式和核心業務場景。業務場景包括企業級業務場景、部門級業務場景和操作級業務場景。並在業務場景梳理過程中,找出企業痛點。最終設計出企業TO-BE的業務藍圖和應用藍圖。
3.業務抽象
通過頂層業務分析,明確了總體方向后,我們便可以展開對具體業務場景的梳理和抽象,並輸出功能需求清單。在此過程中,還需要定義出功能操作的原子業務對象或業務實體。原子業務對象包括原子業務實體、原子業務活動和原子業務規則。基於業務實體,結合對應的功能需求,定義出需要系統提供的能力。根據能力的主題和實體間的密切關系,我們便能對實體進行歸類,定義出主題域。
以下是具體示例:
首先,我們梳理出企業功能需求。如某飲料企業的功能需求匯總表如下圖所示。

其次,找出每一個功能需求所對應的業務對象或實體。這一步需要剝離功能的差異性,抽象功能的共同點,才能保證定義合理。實體分為兩類:業務實體(靜態實體)和過程實體。實體性質相同或者實體結構相似度較高,都可歸納為同一實體。在實體基礎上,為了滿足當前功能需求,我們需要定義出系統所需提供的能力。能力就是對實體施加的操作或發出的命令,這里的能力我們稱為領域能力。
最后,根據能力的主題、實體的密切關系,定義出主題域(也可以稱為“業務域”)。業務域的命名一般由資深業務架構師來定義,以避免出現二義性。基於功能需求的抽象,輸出的產物見下表。

04 高階設計
1.中心規划
經過業務的調研和分析,技術架構師理解並熟悉了業務。基於上階段輸出的主題域,技術架構師按照中心的多個划分標准,進行中心的規划。這里使用的是實體抽象法。
中心規划時要遵循業務中台的分層模型。業務中台從下向上可拆分為業務實體層、業務協作層和業務活動層,如下圖。該分層結構不僅定義了業務中台的結構,也定義了數據流向、服務依賴關系、單次事務的調用次數等。我們可以基於此定義中台的開發規范。

1)業務實體層(BusinessEntity Layer,BEL):由對靜態業務實體進行管理的中心所構成,也就是我們分析的企業靜態資源管理。靜態資源包括通用業務對象,比如省地市、元數據,還包括商品、會員、用戶等。
2)業務協作層(BusinessCollaboration Layer,BCL):由以完成或管理支撐類業務活動為目標的中心所構成,比如促銷中心、評價中心等。本層的中心並不一定是業務活動不可或缺的部分(或者說主流程的一部分),但是沒有這些支撐類的業務中心,我們的服務和業務水平就不能更上一層樓。
3)業務活動層(BusinessActivity Layer,BAL):由以完成或管理核心類業務活動為目標的中心所構成,比如交易中心、供應中心、物流中心等。本層的中心都是企業業務活動必不可少的部分,它們為業務活動提供了核心運行機制。
中台的內部層級關系確定下來后,接下來就需要確定層級間的依賴關系了。層級間的依賴,其實就是不同類型中心的調用關系和異步數據流動關系。
划分出多個主題域后,技術架構師需要結合技術的實現,將領域進行組合規划出中心。中心的划分標准主要從實體的聚合度、中心的職責、中心顆粒度、能否獨立運營等方面來權衡。確定中心的過程也就是划定功能邊界的過程。下圖是某企業的中心划分結果。

2. 0級架構設計
業務中台的0級架構本質上是應用架構,它以中心為最小單位進行設計,因此也稱為整體架構設計。0級架構包括了功能層級的架構和技術層級的架構。
功能層級的架構需要描述業務中台在整個數字平台中所處的位置,業務中台由哪些中心組成,以及中心與應用、中心與后台的交互關系。功能層級的0級架構承接了企業的應用藍圖規划,指導企業各IT系統的職責划分和定位。
下圖為一個企業功能層級的0級架構示意圖。

技術層級的0級架構需要說明各系統、各中心分別使用什么技術來實現,以及整個體系的技術分層。如下圖所示,技術架構總體上分為展現層、服務層、接口系統、運營管理和運維支撐。

3. 中台核心數據流規划
為了簡化業務流程,根據前期的業務分析,結合0級架構的設計,我們可規划出企業的業務數據流(以房屋租賃行業為例,多業態),如下圖所示。

05 組件建模
1. 產品設計
產品設計是在業務頂層設計的指導下,逐層往下抽象的過程,主要是將業務調研的成果轉化為產品原型和需求規格說明書(主要由業務場景、業務流程構成)。需要強調的是:中台產品的詳細設計需要以面向中心為指導思想。不僅需要設計出應用需要實現的功能,更重要的是要將需要中心支撐的功能明確標識出來,歸到中心的待實現列表里。這樣技術工程師在領域建模階段才有具體和明確的輸入。
2. 組件模型設計
組件模型設計承接0級架構設計,是對中心內容的展開。通過對中心功能的分析和對中心業務實體的抽象,將具有較強依賴關系的業務實體聚合為一個組件,或者將具有相同主題的業務功能聚合為一個業務組件。最后以結構化的形式聚合這些組件,構成中心。 組件是可以獨立為微服務的,只要符合微服務的條件,就可以獨立,但在具體實踐中需要進行權衡。
3. 1級架構設計
組件模型設計完成后,需要將模型轉化為應用架構。這里的應用架構是指中心內部的應用架構,我們稱為1級架構。1級架構是以組件為最小單位設計的功能層級的架構。1級的功能架構是必不可少的,它指導着我們的設計和開發;技術層級的1級架構可視情況而定,如果技術內容比較復雜則需要輸出。下圖為某企業功能層級的交易中心1級架構。

4. 關鍵交互圖設計
前面已經完成了0級和1級的架構設計,有什么方法能證明設計是否可以滿足實際業務場景的需要嗎?我們可以通過實現業務場景的動態交互圖,來反向論證設計的合理性。如何判斷動態交互圖是否合理呢?根據業務邏輯是否清晰、流程是否簡潔、客戶交互是否高效來判斷。