金磐石, 朱玉紅, 胡憲忠, 李 驍
(中國建設銀行股份有限公司 信息技術管理部, 北京100140)
基于SOA的銀行集團“新一代”系統(tǒng)架構①
金磐石, 朱玉紅, 胡憲忠, 李 驍
(中國建設銀行股份有限公司 信息技術管理部, 北京100140)
大型商業(yè)銀行集團在信息化的進程中面臨內部系統(tǒng)眾多、實現(xiàn)平臺不統(tǒng)一、資源利用率低、成本高、需求響應周期長等弊端. 隨著我國銀行業(yè)的快速發(fā)展, 大型商業(yè)銀行集團系統(tǒng)架構革新勢在必行. 本文重點介紹在“新一代”系統(tǒng)建設中采取的基于SOA的架構以及組件化設計的方法. 通過7+1層、12P的整體架構設計, 保證了應用組件、構件間的松耦合, 實現(xiàn)子公司與海外一體化的企業(yè)級應用, 從而整合銀行集團資源、快速響應業(yè)務需求, 達到提升業(yè)務可靠性、可用性的目的. 與此同時, 引入企業(yè)級業(yè)務模型對業(yè)務進行標準化, 用結構化的模型語言描述業(yè)務能力, 使用流程模型、數(shù)據(jù)模型、產(chǎn)品模型及用戶體驗模型為企業(yè)級分析及設計工作提供方法和依據(jù).
SOA架構; 商業(yè)銀行系統(tǒng); 7+1層; 12P; 企業(yè)級業(yè)務模型
隨著業(yè)務的發(fā)展和信息化的深入, 如何設計滿足業(yè)務動態(tài)變化和流程銀行的信息系統(tǒng)架構, 已成為銀行下一步信息化建設的重要課題. 銀行信息化的重點從單一業(yè)務系統(tǒng)建設和改造, 向針對大數(shù)據(jù)量、高并發(fā)訪問的企業(yè)級架構設計轉變.
“新一代”摒棄以往基于部門級需求的分析、設計模式, 從業(yè)務架構及IT架構兩大方向入手, 建立起統(tǒng)一、規(guī)范的企業(yè)級架構規(guī)劃.
業(yè)務架構關注對銀行業(yè)務的企業(yè)級描述, 其表現(xiàn)形式為企業(yè)級業(yè)務模型. 基于業(yè)界領先的理論和最佳實踐, 將企業(yè)級業(yè)務模型細分為流程模型、數(shù)據(jù)模型、產(chǎn)品模型及用戶體驗模型. 流程建模采用基于TOGAF[1]標準的五級建模方法, 數(shù)據(jù)建模以金融服務數(shù)據(jù)模型(FSDM)[2]為基礎. 通過企業(yè)級業(yè)務建模逐層細化戰(zhàn)略規(guī)劃、產(chǎn)品參數(shù)化設計以及向流程銀行的轉變.
IT架構承接業(yè)務建模成果. 分為應用架構、數(shù)據(jù)架構、技術架構以及安全架構[3]. 應用架構關注邏輯應用組件及物理應用組件的實施. 數(shù)據(jù)架構關注企業(yè)級數(shù)據(jù)模型、數(shù)據(jù)字典的管理. 技術架構關注技術路線選擇、基礎設施規(guī)劃、技術產(chǎn)品目錄及部署架構, 安全架構關注企業(yè)級安全驗證、安全組件的設計及使用.
采用基于SOA的組件化設計方法[4], 將IT架構整合為7層, 此外設計基礎設施層作為支持. 7+1層進一步細化為12個技術平臺(下文簡稱12P), 各平臺提供通用技術組件, 上層應用基于通用技術組件完成組件化設計和參數(shù)化設計.
IT架構規(guī)劃最終要在機房、服務器、網(wǎng)絡等IT基礎設施上落地. “新一代”初步建立了基于云計算技術的基礎設施環(huán)境, 完成了“兩地三中心”的災備方案設計和部分實施工作.
本文主要闡述“新一代”建設中采用的企業(yè)級業(yè)務模型、“新一代”7+1層及12P的架構設計、基于云計算技術的基礎設施建設以及“兩地三中心”災備方案等內容.
企業(yè)級業(yè)務模型是以現(xiàn)狀業(yè)務流程、數(shù)據(jù)和產(chǎn)品實踐為基礎, 以待實現(xiàn)的業(yè)務需求為輸入進行目標建模. 目標模型是IT實施的基礎. 企業(yè)級業(yè)務模型細分為流程模型、數(shù)據(jù)模型、產(chǎn)品模型及用戶體驗模型.
2.1 流程模型
采用基于TOGAF[1]標準的五級建模方法作為指導完成流程建模. 銀行業(yè)務可從五個層級進行描述:
①一級業(yè)務領域: 對應銀行集團主要業(yè)務, 分為核心業(yè)務和支撐業(yè)務. 如信貸、存款屬于核心業(yè)務領域, 客戶管理屬于支撐業(yè)務領域.
②二級業(yè)務領域內業(yè)務組件: 業(yè)務領域內部各價值環(huán)節(jié), 代表業(yè)務功能. 如客戶管理領域包含客戶信息管理、客戶服務管理、合作伙伴管理等功能.
③三級活動: 企業(yè)級視角完成某個具有明確目的、創(chuàng)造價值的端到端流程. 如采集客戶信息包含從檢索客戶信息到收集、維護、審核客戶信息修改的全流程.
④四級任務: 描述部門或業(yè)務單位為完成三級流程所需不同角色完成的具有明確業(yè)務目的的事情.如維護客戶信息是由同一角色連續(xù)完成的任務.
⑤五級步驟規(guī)則: 描述員工為完成四級流程所需執(zhí)行的具體步驟及業(yè)務規(guī)則. 如維護客戶信息包含維護基本信息、聯(lián)絡信息等功能.
每個具體的流程包括了能力的落地實現(xiàn)元素. 如角色、授權信息、政策、業(yè)務規(guī)則、業(yè)務信息、變化因子、業(yè)務參考文檔和表單報表等內容.
2.2 數(shù)據(jù)模型
Financial Services Data Model(FSDM)模型[2]是金融行業(yè)建立核心應用系統(tǒng)或者數(shù)據(jù)倉庫的數(shù)據(jù)模型, FSDM模型以數(shù)據(jù)為中心, 從企業(yè)視角提供了自頂向下建立數(shù)據(jù)藍圖的方法.
2.2.1 企業(yè)級C模型及C’模型
FSDM模型提出九大概念(A模型), 即參與人、合約、條件、產(chǎn)品、地點、分類、業(yè)務方向、事件、資源項, 作為不同業(yè)務領域金融模型的通用性描述.
此外, FSDM模型通過自上而下的層級, 從概念層到物理層逐漸細化. A級、B級模型為概念模型, 企業(yè)級C模型提供特定業(yè)務范圍內的完整屬性視圖, 是基于目標能力需求及現(xiàn)狀系統(tǒng)的數(shù)據(jù)庫表結構, 根據(jù)FSDM數(shù)據(jù)模型設計理念設計得出, 并通過與流程模型對接不斷迭代完善.
C’模型在C模型基礎上, 增加派生數(shù)據(jù)以及可控的冗余數(shù)據(jù). C與C’模型的關系如圖1所示. D模型是物理數(shù)據(jù)模型, 包含索引等信息. 在“新一代”建設過程中, 數(shù)據(jù)模型的合理管控是一項重要工作.
圖1 C模型與C’模型的關系
2.2.2 企業(yè)級數(shù)據(jù)字典
企業(yè)級數(shù)據(jù)字典是對銀行集團經(jīng)營管理、信息系統(tǒng)研發(fā)過程中涉及數(shù)據(jù)項定義的收錄和編制, 通過標準化處理數(shù)據(jù)項的描述信息提高整體的數(shù)據(jù)質量, 為業(yè)務人員、技術人員以及外部監(jiān)管提供可靠數(shù)據(jù)服務奠定基礎.
企業(yè)級數(shù)據(jù)字典中的數(shù)據(jù)來源是數(shù)據(jù)標準、數(shù)據(jù)模型、指標數(shù)據(jù)、技術類數(shù)據(jù)及元數(shù)據(jù). 字典中的每個數(shù)據(jù)項通過字典編號唯一標識, 通過數(shù)據(jù)項的分類屬性、名稱屬性、業(yè)務屬性、技術屬性及管理屬性進行描述.
企業(yè)級數(shù)據(jù)字典的使用解決了過去同樣含義的數(shù)據(jù)項在不同系統(tǒng)中出現(xiàn)不同名稱、長度等情況. 除此之外, 數(shù)據(jù)字典統(tǒng)一了企業(yè)級“數(shù)據(jù)項”的業(yè)務涵義,將企業(yè)級“數(shù)據(jù)項”的技術格式做出統(tǒng)一規(guī)范, 數(shù)據(jù)項的名稱、英文簡稱等均為企業(yè)級描述, 同一數(shù)據(jù)項在所有系統(tǒng)中完全一致. 同時, 企業(yè)級數(shù)據(jù)字典也是檢查數(shù)據(jù)項規(guī)范性的基準.
2.3 產(chǎn)品模型
產(chǎn)品建模從企業(yè)視角出發(fā), 基于高階產(chǎn)品目錄來優(yōu)化和完善產(chǎn)品目錄, 最終建立企業(yè)級的產(chǎn)品模型,確定與產(chǎn)品相關的業(yè)務規(guī)則、算法、限額、約束、期限、價格等要素項, 并以產(chǎn)品條件及參數(shù)的形式表達.
為了達到產(chǎn)品參數(shù)化設計, 實現(xiàn)可售產(chǎn)品快速創(chuàng)新、配置與上線的目的, “新一代”采用產(chǎn)品模型作為銀行產(chǎn)品的規(guī)范化描述方法. 產(chǎn)品按照產(chǎn)品線、產(chǎn)品組、基礎產(chǎn)品、可售產(chǎn)品四個層級劃分, 所有可售產(chǎn)品均發(fā)布在企業(yè)級產(chǎn)品目錄中.
產(chǎn)品將在產(chǎn)品工廠中組裝, 通過結構化、標準化的方法, 使用產(chǎn)品條件、產(chǎn)品參數(shù)對基礎產(chǎn)品進行描述, 以產(chǎn)品部件的方式完成組裝過程, 基礎產(chǎn)品通過實例化成為實際可對客戶銷售的可售產(chǎn)品.
基于產(chǎn)品模型, 產(chǎn)品工廠將會更易于管理銀行集團的產(chǎn)品. 產(chǎn)品創(chuàng)新人員可在工廠中靈活選擇相應的基礎產(chǎn)品、產(chǎn)品組件、產(chǎn)品條件, 進行組件化創(chuàng)新, 更加快捷地將產(chǎn)品推向市場.
2.4 用戶體驗模型
用戶體驗模型是從統(tǒng)一系統(tǒng)界面風格和設計標準的角度出發(fā)的建模工作. 用戶體驗建模以現(xiàn)狀系統(tǒng)為基礎, 結合調研成果, 提出系統(tǒng)界面風格和設計的指導依據(jù), 旨在最大限度提升客戶體驗.
綜上所述, 通過使用企業(yè)級業(yè)務模型, 用統(tǒng)一建模語言對銀行集團業(yè)務進行標準化、結構化、規(guī)范化的描述, 完成前、中、后臺的流程活動對接. 目前企業(yè)級業(yè)務模型已累計發(fā)布14個版本. 流程建模已完成4916個四級任務、23881個五級步驟的建模工作. 數(shù)據(jù)建模完成147個主題域、2747個實體及25495項屬性的建模工作. 產(chǎn)品模型完成12個產(chǎn)品線、45個產(chǎn)品組、123個基礎產(chǎn)品, 3722個可售產(chǎn)品的建模工作. 用戶體驗模型完成327項需求、9802項命名規(guī)范、超過150項設計標準.
架構分層是對架構整體復雜性進行解構的方法,“關注點分離 ”是面向服務的架構(SOA)的核心原則.為保持架構的穩(wěn)定性、靈活性和擴展性, 適應業(yè)務的變革和發(fā)展, 架構分層遵循這一重要原則.
“新一代”架構中定義了應用和應用組件的概念,用于區(qū)分用戶視角以及企業(yè)視角:
應用: 從用戶視角, 基于渠道、產(chǎn)品和客戶群, 對同一業(yè)務領域下一組活動的實現(xiàn), 為內外部客戶提供整合的產(chǎn)品和服務. 應用關注整合銀行產(chǎn)品和服務,提供端到端的、跨渠道統(tǒng)一的完整客戶服務流程及業(yè)務流程. 提升用戶體驗是應用的核心目標.
應用組件: 應用組件是基于企業(yè)視角的系統(tǒng)功能,是由一組具有特定業(yè)務與功能用途, 并存在業(yè)務內在聯(lián)系和相關性的應用組件服務所組成的集合. 應用組件不負責對界面展示的處理實現(xiàn), 而專注于具體的業(yè)務邏輯處理和業(yè)務數(shù)據(jù)處理, 將處理結果以服務形式提供出來, 并通過調用來自其它應用組件或外部的服務進行應用組件間的協(xié)作. 應用組件需要屏蔽不同渠道、客戶、產(chǎn)品(CPC)的差異, 提供統(tǒng)一的處理邏輯和服務.
應用、應用組件是“新一代”IT目標架構的重要內容, 承載了全部業(yè)務功能; 其首要目標就是保持業(yè)務與IT的一致性, 實現(xiàn)業(yè)務與IT的融合.
3.1 整體架構設計
按照業(yè)務功能劃分, 架構被分為7層, 除此之外,引入基礎設施與治理層作為以上7層架構的基礎, 如圖2所示.
分層的整體架構提供了集成的綜合服務. 渠道整合層作為多種渠道的統(tǒng)一入口, 向后端組件屏蔽前端的多樣性和復雜性. 客戶服務整合層負責編排和串接產(chǎn)品服務層提供的原子服務, 對外提供集成的客戶服務. 產(chǎn)品服務層以應用組件的形式對外提供服務, 產(chǎn)品提供的服務統(tǒng)一發(fā)布在應用集成層. 數(shù)據(jù)集成層則為產(chǎn)品功能提供企業(yè)級數(shù)據(jù)服務. 外聯(lián)集成層為對外合作單位或監(jiān)管機構互聯(lián)互通提供接口服務.
圖2 “新一代”整體架構
3.2 渠道整合層
渠道整合層的作用是整合渠道接入, 統(tǒng)一渠道接口處理. 通過標準化接入手段, 渠道整合層接受來自不同渠道的業(yè)務請求, 處理并封裝請求數(shù)據(jù), 調用后臺服務并返回結果.
渠道整合層提供內部客戶(整合已有高柜、低柜系統(tǒng))、外部客戶(包含ATM、電子銀行、手機銀行、電話銀行、移動終端等)的渠道接入、安全控管認證、接口路由等功能.
3.3 客戶服務整合層
客戶服務整合層以客戶為中心, 從客戶視角出發(fā),提供整合的銀行產(chǎn)品和服務, 提供良好的使用體驗.通過整合端到端的客戶服務流程, 為內外部客戶提供集成服務.
客戶服務整合層基于跨時序、跨角色、跨用戶的企業(yè)級工作流引擎, 調用產(chǎn)品服務層的服務邏輯完成業(yè)務處理過程.
客戶服務整合層支持內外部客戶按需定制個性化工作流. 支持各類業(yè)務領域, 如產(chǎn)品管理、客戶之聲、理財產(chǎn)品、市場營銷和銷售管理、集中運營服務、內審與合規(guī)等.
3.4 應用集成層
應用集成層通過標準化方式接受來自客戶服務整合層(使用工作流的業(yè)務)及渠道整合層的服務請求,屏蔽后臺服務的技術特性, 以一致的形式返回結果.主要功能包括服務目錄管理、報文轉換、交易路由、服務調用、資源分配等.
產(chǎn)品服務層的應用組件將服務以統(tǒng)一形式發(fā)布在應用集成層的服務目錄中. 各組件之間的服務請求通過應用集成層轉發(fā)及響應.
3.5 外聯(lián)集成層
外聯(lián)集成層負責外部金融和非金融機構與“新一代”之間的系統(tǒng)交互. 如第三方支付系統(tǒng)、保險公司、人行征信系統(tǒng)等. 主要完成協(xié)議轉換、報文轉發(fā)等功能, 并可提供實時和非實時的服務, 為內部系統(tǒng)屏蔽各類網(wǎng)絡接口的技術特性. 接入單位包含SWIFT接入、VISA/MASTER接入、CNAP接入以及第三方支付接入等.
3.6 產(chǎn)品服務層
產(chǎn)品服務層提供企業(yè)視角的產(chǎn)品服務, 支持銀行集團核心業(yè)務, 涉及產(chǎn)品、客戶、合約、核算等服務, 提供與渠道無關的產(chǎn)品、服務處理組件. 產(chǎn)品服務層以應用組件作為服務的載體, 將服務發(fā)布在應用集成層.
產(chǎn)品服務層包括存款、貸款、代理、貿易融資、托管、客戶管理等產(chǎn)品線, 包括子公司的產(chǎn)品和服務,是銀行信息系統(tǒng)的核心.
3.7 數(shù)據(jù)集成層
數(shù)據(jù)集成層整合企業(yè)范圍內的各類數(shù)據(jù), 提供統(tǒng)一數(shù)據(jù)存儲及交換服務, 為產(chǎn)品服務層和管理分析層提供一致的數(shù)據(jù)服務. 數(shù)據(jù)集成層可提供面向企業(yè)級數(shù)據(jù)的集成服務和周期性、大規(guī)模數(shù)據(jù)的批量處理.
數(shù)據(jù)集成層是企業(yè)級信息視圖的必要條件.
3.8 管理分析層
管理分析層為銀行內部管理和決策提供支持. 該層包含所有管理分析類應用, 所有應用從數(shù)據(jù)集成層獲取數(shù)據(jù), 進行加工、處理及分析.
管理分析層包括通過數(shù)據(jù)分析提供決策支持的應用、風險管理、財務管理、內部管理、黑名單等管理型應用[6].
3.9 基礎設施與治理層
應用系統(tǒng)的上線運行離不開基礎設施, 基礎設施與治理層提供硬件設備、網(wǎng)絡、操作系統(tǒng)、中間件和數(shù)據(jù)庫等基礎支持.
大型商業(yè)銀行集團的核心系統(tǒng)一般采用大型機作為基礎設施, 面對業(yè)務量的飛速增長, 只能通過擴容方式解決, 運行和維護成本越來越高. “新一代”在原有大型機基礎上, 參考云計算模型, 采用虛擬化技術搭建了基于X86服務器的云基礎設施平臺, 逐步形成了“大型機+X86云”的混合基礎設施架構. 隨著“新一代”功能的逐步釋放, 大量產(chǎn)品服務層的應用組件都已經(jīng)部署在了基于X86服務器的云環(huán)境中. 目標是打造“兩地三中心”的云數(shù)據(jù)中心運維體系[5].
根據(jù)SOA架構設計原則, “新一代”架構將7層架構分解為12個應用平臺. 如圖3所示.
圖3 12個應用平臺
應用平臺是一系列軟硬件技術組件的集合, 向應用或應用組件提供服務. 應用平臺可以看作應用或應用組件的容器.
基于應用平臺的開發(fā)模式極大程度減少重復開發(fā)量, 借助平臺提供的通用技術組件及服務可達到敏捷開發(fā), 快速響應業(yè)務需求的目的. 整體來看, 應用平臺具備如下基本能力:
① 參數(shù)化開發(fā)能力: 支持靈活的參數(shù)配置和管理能力. 如前端界面定制化開發(fā)、業(yè)務流程的配置、后端產(chǎn)品組件的參數(shù)化配置等能力.
② 橫向擴展能力: 對于主機平臺, 支持Sysplex并行處理. 對于開放平臺, 支持集群部署能力, 支持動態(tài)負載均衡能力.
③ 高可用支持能力: 支持無單點故障的部署、支持組件或應用功能的熱部署能力, 降低系統(tǒng)維護停機時間.
④ 數(shù)據(jù)加解密能力: 支持交易信息和交易報文的加解密處理、支持關鍵交易的簽名處理、支持對加密信息的存儲和訪問控制.
⑤ 可跟蹤能力: 平臺完整記錄內外部客戶的操作痕跡. 提供跟蹤交易異常信息功能. 各平臺采用全局事件跟蹤號作為交易的唯一標識, 由交易發(fā)起端生成, 在全流程中保持唯一, 便于跨平臺、組件跟蹤問題.
⑥ 應用監(jiān)控能力: 平臺可對應用狀態(tài)數(shù)據(jù)進行采集, 提供給企業(yè)級的監(jiān)控系統(tǒng).
⑦ 安全控制能力: 平臺對訪問系統(tǒng)的用戶進行身份認證, 保證用戶合法性. 對外部交互系統(tǒng)進行識別認證, 保證具備交互權限的系統(tǒng)才能訪問系統(tǒng)服務.支持訪問控制授權和審計跟蹤、風險預警能力.
應用平臺建立在各種技術框架基礎之上, 使用技術框架提供的通用功能組件及服務完成平臺功能. 實際開發(fā)中, 應用開發(fā)者更關注于平臺的使用, 底層技術框架對應用開發(fā)人員屏蔽技術細節(jié).
4.1 技術框架概述
技術框架是一組具有緊密聯(lián)系的技術組件的集合,并提供常用的技術性基礎功能(如日志記錄、基礎函數(shù)、流量控制等), 具有被各類應用共享且相對穩(wěn)定的基本特征, 是可以直接支撐應用平臺和業(yè)務應用開發(fā)的企業(yè)級可復用軟件資產(chǎn).
“新一代”技術框架包括主機、C、JAVA、電子渠道四個框架. 12個應用平臺則構建于技術框架之上,應用平臺及技術框架的關系如圖4所示.
圖4 技術框架定位
由圖4可知, 技術框架處于基礎設施和應用平臺之間, 對下屏蔽基礎設施的差異, 構建基礎的應用運行環(huán)境. 對上為各平臺提供通用技術組件.
4.1.1 主機框架
“新一代”主機框架基于大型機環(huán)境構建, 并采用主機系統(tǒng)常用的COBOL作為主要開發(fā)語言. 主機框架支持采用COBOL開發(fā)的產(chǎn)品服務層應用組件, 并支持聯(lián)機事務處理及批處理功能.
4.1.2 C框架
開放環(huán)境通用技術C框架基于UNIX/Linux環(huán)境構建, 屬于主流的通用性技術框架, 支持UNIX小型機、X86服務器環(huán)境下C開發(fā)技術, 支持開放環(huán)境下渠道整合、客戶服務整合、產(chǎn)品服務、應用集成和管理分析等架構層次相關應用的開發(fā).
4.1.3 JAVA框架
JAVA框架使用HTTP協(xié)議接入前端服務請求, 服務管理和服務路由等組件都由Spring容器管理. 數(shù)據(jù)訪問層支持目前主流的關系數(shù)據(jù)庫持久化訪問技術.該框架可更廣泛的去除應用系統(tǒng)各層間的耦合性, 增加服務的復用性, 同時為系統(tǒng)開發(fā)提供更多的基礎技術的支撐, 使開發(fā)者只需關注業(yè)務邏輯.
4.1.4 電子銀行類型專用框架
由于電子銀行渠道系統(tǒng)(網(wǎng)銀、手機銀行、電話銀行、家居銀行等)在安全控制、終端系統(tǒng)環(huán)境及新技術應用方面的特殊性, 并且其底層實現(xiàn)與具體應用邏輯耦合度高, 因此, 針對電子銀行應用開發(fā)采用了專用的技術框架. 該技術框架部分組件共享其他技術框架的成果, 但總體而言自成體系.
4.2 外部客戶渠道整合平臺(P1)
圖5 外部客戶渠道整合平臺整體設計
外部客戶渠道整合平臺(P1)支持受理外部客戶使用不同終端設備、不同客戶端的業(yè)務請求. P1屏蔽終端設備和請求協(xié)議的差異, 統(tǒng)一封裝不同的渠道業(yè)務數(shù)據(jù), 并將結果數(shù)據(jù)和渠道展示特性進行適配轉換,返回終端設備及客戶端. P1平臺可提供多種展現(xiàn)格式,支持多種界面語言. 可提供客戶安全認證功能、渠道交易限額、交易流量限制功能.
P1平臺支持的渠道范圍包括: 網(wǎng)上銀行、手機銀行、電話銀行、短信、電話、智能終端(手機、平板電腦)、ATM、POS、排隊機、互聯(lián)網(wǎng)網(wǎng)站、電子商務網(wǎng)站及第三方渠道設備等. 平臺的整體設計如圖5所示.
P1平臺支持C/S和B/S模式. 平臺使用框架中的控制驅動組件、功能處理組件及基礎技術組件來完成P1的功能.
4.3 內部客戶渠道整合平臺(P2)
P2平臺為內部員工提供統(tǒng)一的操作門戶, 支持員工使用不同終端設備的業(yè)務請求.
P2平臺整合已有高柜、低柜系統(tǒng), 提供客戶端和網(wǎng)頁兩種展現(xiàn)模式. 客戶端模式針對要求交易高效操作、快速響應的場景, 網(wǎng)頁模式針對管理類、流程類等時效性要求不高的場景. 兩種模式的界面都在平臺客戶端框架內. 平臺提供前端界面和后端業(yè)務處理的參數(shù)化配置開發(fā)能力, 可快速發(fā)布新產(chǎn)品. 客戶端可通過檢查版本服務器的發(fā)布版本完成自動更新操作. P2還可根據(jù)操作員權限動態(tài)展示可操作菜單, 拒絕無權限的交易發(fā)起請求.
P1、P2平臺均包含客戶端及服務端, 客戶端負責處理界面展現(xiàn)、校驗、流控、外設接入適配、版本管理等功能; 服務端完成后端業(yè)務調用及處理、加解密、資源調度等功能.
圖6 內部客戶渠道整合平臺整體設計
P2平臺的整體設計如圖6所示. 服務端功能由框架提供的公共組件以及平臺實現(xiàn)的功能組件共同完成. P2平臺提供的功能與P1平臺相似, 區(qū)別主要在于P2平臺底層的技術框架是JAVA框架.
4.4 客戶服務整合平臺(P3)
銀行業(yè)務存在需要多人審核、會簽的場景, 一般出現(xiàn)在對公業(yè)務流程中. 同樣的需求也存在于企業(yè)客戶. 現(xiàn)狀中, 由于每個業(yè)務系統(tǒng)相對獨立, 流程的管控和實現(xiàn)在各業(yè)務系統(tǒng)中實現(xiàn), 功能重復開發(fā)且設計不統(tǒng)一. 針對以上情況, 流程被重新定義和設計, 在客戶服務整合平臺上實現(xiàn).
P3平臺整合端到端的客戶服務流程、為渠道提供集成的服務. 平臺提供面向內外部用戶跨角色、跨時序、可中斷的流程編排服務.
P3平臺的核心是工作流引擎, 平臺基于JAVA框架開發(fā), 可提供業(yè)務流程靈活定制與編排服務. 服務配置為可視化操作, 并可動態(tài)增加流程角色、組織結構、流程路由、流程節(jié)點等要素. 工作流引擎的整體功能如圖7所示.
圖7 工作流引擎
根據(jù)實際業(yè)務需求, 流程可預先定義, 或由客戶通過流程模板定制, 創(chuàng)建流程時可自定義流程規(guī)則. P3平臺提供通用的流程管理、任務管理服務, 提供流程執(zhí)行中的選人模式管理服務.
P3平臺采用流程與服務分離的設計, 流程的執(zhí)行與服務為松耦合關系.
P3平臺提供基于事件的調度管理, 支持事件觸發(fā)服務.
4.5 應用集成平臺(P4、P5)
應用集成平臺分為內聯(lián)(P4)及外聯(lián)(P5)平臺, 其存在形式為企業(yè)級服務總線(ESB). 應用集成平臺提供通訊連接、報文轉換、集成適配、路由交換、服務分類調度管理、服務組合等集成功能.
產(chǎn)品服務層的服務注冊并發(fā)布在P4服務目錄中,以供內外部系統(tǒng)使用.
內聯(lián)服務平臺(P4)主要為客戶服務整合層及渠道整合層(其他層)提供標準化的服務調用功能.
外聯(lián)集成平臺(P5)提供與外部金融和非金融機構系統(tǒng)間的服務交互.
4.6 產(chǎn)品服務平臺
產(chǎn)品服務層作為企業(yè)級視角的產(chǎn)品服務的提供方,支持銀行集團產(chǎn)品、客戶、合約等核心業(yè)務服務.
產(chǎn)品服務平臺采用相同的架構設計, 由基礎框架開發(fā)而來. 目前設計三個產(chǎn)品服務平臺, 主要在開發(fā)語言上有所區(qū)分.
產(chǎn)品服務平臺的整體架構設計如圖8所示.
圖8 產(chǎn)品服務平臺架構設計
產(chǎn)品服務平臺具備如下能力:
① 聯(lián)機服務處理能力: 能夠處理P4發(fā)過來的聯(lián)機服務請求.
② 批量服務處理能力: 為平臺產(chǎn)品服務層提供公用的批量任務處理的機制.
③ 構件組合能力: 提供通過配置方式將多個原子構件服務組合成新的構件服務.
④ 沖正: 提供本地超時和后端系統(tǒng)超時后的同步或異步?jīng)_正功能, 發(fā)布統(tǒng)一的沖正服務, 在接受到前端沖正請求時能追溯正交易過程.
⑤ 公共業(yè)務處理: 為平臺上的業(yè)務應用組件提供公共的業(yè)務處理構件, 可提供聯(lián)機服務前處理、后處理服務.
⑥ 數(shù)據(jù)同步: 將平臺上業(yè)務應用組件管理和維護的數(shù)據(jù)同步給數(shù)據(jù)集成平臺.
⑦ 文件傳輸: 支持跨平臺的文件傳輸能力.
4.6.1 產(chǎn)品服務主機平臺(P6)
產(chǎn)品服務平臺P6構建在主機系統(tǒng), 基于COBOL語言實現(xiàn).
P6平臺支持快速產(chǎn)品創(chuàng)新和部署的能力, 支撐靈活的定價, 并能提供銀行集團統(tǒng)一的客戶視圖. 支持跨系統(tǒng)平臺、數(shù)據(jù)庫、中間件、操作系統(tǒng)部署的能力.支持同構平臺內構件或模塊的注冊或調用的能力.
4.6.2 產(chǎn)品服務C平臺(P7)
產(chǎn)品服務C平臺(P7)基于TP MONITOR和C語言實現(xiàn), 利用基礎技術C框架, 以配置化的方法實現(xiàn)業(yè)務應用組件交易服務的內部構件串接和驅動. 與P6相似, P7也具備支持產(chǎn)品創(chuàng)新、靈活部署、聯(lián)機處理與批處理等能力.
4.6.3 產(chǎn)品服務J2EE平臺(P8)
產(chǎn)品服務J2EE平臺(P8)依賴于J2EE基礎技術框架. 在“新一代”7層架構中, 與P6、P7一樣處于產(chǎn)品服務層. P8平臺提供批量調度服務, 采用基礎數(shù)據(jù)變化捕獲工具和文件傳輸工具, 以準實時或定時批量模式將業(yè)務數(shù)據(jù)以增量或全量的方式同步到P9平臺.
P8平臺針對未來產(chǎn)品服務類應用組件的交易過程、異常處理等基礎業(yè)務能力需求進行了整體性設計,提供公用的流水記錄、沖正等平臺組件來盡量減少未來業(yè)務應用組件的開發(fā)難度.
4.7 數(shù)據(jù)集成平臺(P9)
數(shù)據(jù)集成平臺(P9)提供支持管理分析層實現(xiàn)的統(tǒng)一數(shù)據(jù)存儲與交換, 支持管理分析層與產(chǎn)品服務層之間的批量數(shù)據(jù)交換, 支持產(chǎn)品服務平臺和管理分析平臺應用訪問的技術服務.
P9平臺支持的應用訪問技術服務包括: 信息管理、信息集成組件、ETL、信息交換、資源供給服務(基礎架構服務)、業(yè)務可用性(通用服務)、目錄服務(應用集成服務)、信息訪問(數(shù)據(jù)部署)、信息索引(數(shù)據(jù)部署).整體設計如圖9所示.
P9平臺具有海量數(shù)據(jù)存儲能力、數(shù)據(jù)按主題歸類能力、大數(shù)據(jù)量分區(qū)能力、大批量處理的計算能力、數(shù)據(jù)質量的控制能力、高并發(fā)處理能力、報表數(shù)據(jù)存儲能力、非結構化數(shù)據(jù)管理能力.
P9平臺采用大規(guī)模并行處理(MPP)數(shù)據(jù)庫技術、
HADOOP分布式計算技術、數(shù)據(jù)的對象管理和存儲技術, 實現(xiàn)海量數(shù)據(jù)加載、處理和分級存儲. 利用自有核心技術構建10萬任務級復雜數(shù)據(jù)處理的技術框架, 實現(xiàn)可配置、易監(jiān)控、擴展性強的集群調度模式, 組件化對外服務.
圖9 數(shù)據(jù)集成平臺整體設計
4.8 管理分析服務平臺(P10)
管理分析服務平臺(P10)提供銀行內部管理和決策所需的所有管理分析類格式化展現(xiàn)和分析應用, 同時支持面向外部客戶的固定格式報表和靈活定制報表.
P10平臺總體框架上下文關系如圖10所示. 圖中D2表示管理分析服務平臺與數(shù)據(jù)集成平臺的關系, C1表示可通過頁面鏈接的方式訪問P10交互界面.
圖10 管理分析服務平臺總體框架上下文關系
P10平臺支持業(yè)務領域管理人員自行定制和發(fā)布數(shù)據(jù)業(yè)務. 可基于選定的數(shù)據(jù)項集合自行定制數(shù)據(jù)展現(xiàn)格式, 自行決定是否發(fā)布給其他用戶使用. 支持技術人員在業(yè)務人員工作的基礎上進行調優(yōu), 提供商業(yè)智能組件, 包括報表、儀表盤、多維分析、預測分析、假設分析和數(shù)據(jù)挖掘.
P10平臺采用HTML5技術, 增強用戶體驗. 采用互聯(lián)網(wǎng)搜索引擎, 構建銀行集團數(shù)據(jù)索引, 方便業(yè)務用戶直接使用數(shù)據(jù). 采用X86云部署技術, 保障運行的高可靠性、高可用和可管理性.
4.9 事務控制服務平臺(P11)
事務控制平臺主要用于高效行政相關系統(tǒng), 包括電子郵件和辦公自動化等.
4.10 在線交易數(shù)據(jù)服務平臺(P12)
在線交易數(shù)據(jù)服務平臺(P12)為在線交易提供運營決策服務和信息訪問服務. 支持基于歷史數(shù)據(jù)的實時計算和查詢, 具備靈活的規(guī)則定制和高效的數(shù)據(jù)訪問能力. 支撐管理分析層的反欺詐、反洗錢、監(jiān)管合規(guī)、稽核監(jiān)測、風險管理等應用組件.
P12平臺支撐的應用模式如圖11所示.
圖11 在線交易數(shù)據(jù)服務平臺支撐的應用模式
P12平臺可按照預定義的業(yè)務規(guī)則, 基于歷史數(shù)據(jù)進行計算處理, 為在線交易實時返回計算結果. 其中規(guī)則定制支持在線調整和發(fā)布, 支持信息訪問. 即對數(shù)據(jù)集成層處理結果的快速查詢, 或者基于數(shù)據(jù)集成層的數(shù)據(jù)進行信息聚合, 并返回查詢結果.
P12平臺采用規(guī)則引擎技術和分布式緩存技術,分別支撐運營決策能力和信息訪問能力. 采用規(guī)則引擎技術實現(xiàn)規(guī)則的集中管理、規(guī)則在線調整和發(fā)布;采用分布式緩存技術對讀多寫少的數(shù)據(jù)進行緩存, 以提升數(shù)據(jù)訪問效率, 并減少對數(shù)據(jù)集成層的壓力.
基礎設施與治理層是“新一代”7+1層架構中的1層, 是應用組件運行的基礎環(huán)境. 在實施“新一代”建設的過程中, 設計了基于云計算技術的基礎設施體系,初步建成云計算數(shù)據(jù)中心及運維體系.
災備對于保障銀行業(yè)務連續(xù)性至關重要. 按照《IT災備體系規(guī)劃項目》的目標, 確定了以“兩地三中心”為核心的IT災備體系[7]. 以云計算數(shù)據(jù)中心架構設計為依托, 構建形成“新一代”IT災備體系.
5.1 企業(yè)級云數(shù)據(jù)中心模型
云數(shù)據(jù)中心的基礎設施及服務層涉及網(wǎng)絡、存儲、計算、安全、運維管理等技術組件, 其總體技術架構如圖12所示.
圖12 云數(shù)據(jù)中心技術架構邏輯模型
新的技術架構融入了云計算的構建思想和元素,將整個數(shù)據(jù)中心的基礎資源和運維管理分為基礎設施資源層、通用服務層、基礎設施服務目錄層、基礎設施服務層、前端層和統(tǒng)一管理層. 服務目錄層是將網(wǎng)絡、存儲、計算以及各種技術組件通過標準化過程抽象成不同的云服務, 然后再通過云管理平臺進行調度和管理[8].
經(jīng)過前期的規(guī)劃設計, 共梳理出31個技術組件和28個云服務. 不僅涉及網(wǎng)絡、存儲、計算等基礎資源,還涉及云管理、監(jiān)控、運維流程、配置管理等IT服務管理. 這些技術組件及技術架構為云計算數(shù)據(jù)中心的逐步完善奠定了基礎.
5.2 核心網(wǎng)絡架構
目前各數(shù)據(jù)中心(DC)、開發(fā)中心、分行、業(yè)務中心及子公司、海外機構等通過核心網(wǎng)完成銀行集團網(wǎng)絡的集中接入. 核心網(wǎng)整體采用層次化的架構, 分為核心層、分布層、接入層. 核心網(wǎng)節(jié)點內部采用模塊化設計, 由位于核心層的核心節(jié)點, 以及位于分布層的DC接入?yún)^(qū)和WAN接入?yún)^(qū)組成, 可用性高, 架構靈活. 核心網(wǎng)是“兩地三中心”災備方案的基礎, 其整體結構如圖13所示.
核心層實現(xiàn)核心層節(jié)點之間高速互聯(lián), 數(shù)據(jù)流可以根據(jù)業(yè)務的需要, 不受實際連接的限制而靈活高速地傳輸. 分布層提供各個網(wǎng)絡單元的接入, 分為WAN和DC兩個接入?yún)^(qū), 用于隔離失效域, 提升可用性. 接入網(wǎng)為各個網(wǎng)絡接入單元. 如數(shù)據(jù)中心、業(yè)務中心、開發(fā)測試中心、分行等.
圖13 核心網(wǎng)結構圖
原則上, 開發(fā)中心、業(yè)務中心均連到WAN接入?yún)^(qū),各數(shù)據(jù)中心只連到DC接入?yún)^(qū). 從接入的密度和可管理性角度考慮, 在目前的負載情況下, WAN區(qū)作為一個集成的接入?yún)^(qū), 不考慮分區(qū)方案. 未來接入密度出現(xiàn)瓶頸時, 可將WAN接入?yún)^(qū)分為多個區(qū)域.
5.3 “兩地三中心”災備方案
“兩地三中心”方案要求在同城建立兩個數(shù)據(jù)中心作為同城備份, 在異地建立災備中心, 當兩個生產(chǎn)數(shù)據(jù)中心均不可用時, 生產(chǎn)系統(tǒng)切換至異地災備中心.目前, “新一代”建立兩個數(shù)據(jù)中心及一個災備中心, 各中心的主要職責如下:
①A1數(shù)據(jù)中心: 作為主要系統(tǒng)的生產(chǎn)中心, 也是運維控制中心. 部署交易類生產(chǎn)系統(tǒng)及部分開發(fā)/測試集成環(huán)境, 部署渠道接入系統(tǒng). 同時也是管理分析類系統(tǒng)的異地災備.
②A2數(shù)據(jù)中心: 作為A1數(shù)據(jù)中心的同城備份,實時備份生產(chǎn)數(shù)據(jù), 同時部署渠道接入系統(tǒng).
③ B數(shù)據(jù)中心: 作為主要系統(tǒng)的災備中心. 部署準生產(chǎn)版本驗證測試環(huán)境. 部署部分渠道接入系統(tǒng)、管理信息系統(tǒng), 是歷史數(shù)據(jù)存儲的生產(chǎn)中心.
各平臺在三個中心有如下幾種部署模式:
Active: 在Active模式下平臺及應用組件對外提供服務, 允許更新各類業(yè)務數(shù)據(jù), 為主要運行模式.當Active模式的實例發(fā)生故障時, 服務將由同城的Query模式部署實例提供.
Query: 運行在Active模式下的平臺及應用組件以準實時(約20毫秒延遲)的方式將數(shù)據(jù)同步到同城數(shù)據(jù)中心. Query模式下, 平臺及組件僅對外提供非強實時性要求的查詢類交易. 對于要求實時數(shù)據(jù)的查詢類交易, 依然由Active部署模式的數(shù)據(jù)中心提供服務.
Standby: 在Standby模式下的平臺及組件主要作為災難恢復所用, 為異地數(shù)據(jù)中心, 其數(shù)據(jù)延遲在分鐘級. 當Active及Query模式下的服務均不可用時, 將切換至Standby模式下的部署實例.
由于各平臺的應用模式不同, 其部署模式也不相同, 12P的災備部署模式如圖14所示. P1至P5平臺主要負責接入功能, 采取三地生產(chǎn)中心(A-A-A)的部署模式. 產(chǎn)品層P6至P8平臺為生產(chǎn)-查詢-災備(A-Q-S)部署模式, A1數(shù)據(jù)中心為主要生產(chǎn)中心. P9至P12平臺為生產(chǎn)-災備(A-S)模式, B數(shù)據(jù)中心為其生產(chǎn)中心.
圖14 各應用平臺災備模式
從圖14可知, 各平臺從Active模式向Query及Standby模式傳輸數(shù)據(jù). 產(chǎn)品系統(tǒng)產(chǎn)生的業(yè)務數(shù)據(jù)傳輸至P9的生產(chǎn)部署, 進而被P10至P12平臺使用. 查詢請求經(jīng)P4平臺接入P6至P8平臺的Query部署模式實例. 業(yè)務流通過P1、P2、P5平臺接入.
“新一代”核心系統(tǒng)建設從業(yè)務建模入手, 運用業(yè)界領先的建模語言和工具, 全面梳理了銀行集團的業(yè)務流程、產(chǎn)品和數(shù)據(jù)現(xiàn)狀, 通過差距分析, 繪制了企業(yè)級的目標業(yè)務架構藍圖. 基于分層和SOA組件化的設計思想, 完成了從業(yè)務架構藍圖到7+1層、12個平臺的IT系統(tǒng)架構的映射. 基本建成了組件化、平臺化、面向服務的“新一代”核心系統(tǒng)架構. “兩地三中心”、雙活和主備結合的災備體系為IT系統(tǒng)安全穩(wěn)定運行打下了堅實的基礎, 為業(yè)務連續(xù)性提供了保障.
“新一代”建設成效顯著. 主要表現(xiàn)在: 產(chǎn)品快速推向市場能力顯著增強, “快貸”和“速贏”等產(chǎn)品的推出時間由數(shù)月縮短為數(shù)周; 系統(tǒng)吞吐量和穩(wěn)定性穩(wěn)步提高, 2015年天貓雙“十一”, 交易額占支付寶總交易額23.6%, 處于同業(yè)第一; 系統(tǒng)運行平穩(wěn), 關鍵系統(tǒng)可用率近幾年一直保持在99.99%以上; 新版互聯(lián)網(wǎng)站、網(wǎng)上銀行和手機銀行陸續(xù)推出, 不斷提高用戶體驗;基于云計算的IT基礎設施交付能力顯著提高, IT資源供給周期從“周”縮短到“分鐘”.
通過“新一代”建設, 已經(jīng)建立起“一套業(yè)務模型、一套IT架構、一套實施工藝、一套管理流程”的企業(yè)級IT長效機制, 增強了自主研發(fā)能力, 形成集中統(tǒng)一的IT研發(fā)模式, 建立起以支持引領、自主研發(fā)和安全運營為核心的IT能力, 為實現(xiàn)“國內最佳、國際一流”的發(fā)展愿景提供支持和保障.
致謝: 感謝常江濤先生在“新一代”建設項目中做出的杰出貢獻. 感謝他為本論文貢獻的專業(yè)洞見和理論總結. 感謝他的家人對他的大力支持和無私奉獻.
1 TOGAF. http://www.opengroup.org/subjectareas/enterprise/ togaf.
2 IBM Software Group. FSDM金融服務數(shù)據(jù)模型, 2005.
3 金磐石.構建“安全即服務”的安全架構.中國金融電腦, 2014,(12):23–25.
4 金磐石.“產(chǎn)、用”戰(zhàn)略聯(lián)動 推進信息化自主可控進程.金融電子化,2014,(8):28–29.
5 金磐石.科學構建災備保障體系.金融電子化,2013,(1): 23–23.
6 金磐石.用IT審計管控信息科技風險.金融電子化,2011, (12):28–29.
7 中國建設銀行.北京數(shù)據(jù)中心稻香湖新址規(guī)劃建設情況報告,2014,(11):18–20.
8 金磐石.建設銀行云計算數(shù)據(jù)中心及運維體系建設實踐探討.中國金融電腦,2014,(7):18–22.
SOA-Based New Generation Banking System Architecture for Banking Group
JIN Pan-Shi, ZHU Yu-Hong, HU Xian-Zhong, LI Xiao
(IT Management Department, China Construction Bank, Beijing 100140, China)
Large commercial banking group encounters many problems in the process of informatization, such as large number of internal systems, existence of many non-uniform platforms, low usage of resources and high cost, long cycle of demand response and other defects. With the rapid growth of China’s banking industry, commercial banking group’s system architecture innovation is imperative. This article focuses on the SOA-based framework and component-based design method which are employed in the construction of the new generation banking system. By 7+1 levels and 12P overall framework design, we ensure the application components loosely coupled and uniform the domestic and overseas application to realize the enterprise-wide integration of resources and quick response to business requirements. Accordingly, we achieve the purpose of enhancing the service reliability and availability. We introduce in enterprise level business model to standardize our business process and use structured modelling language to describe our business capability. We use process model, product model, data model and user experience model to provide methods and basis for enterprise level analysis and design.
SOA; commercial banking system; 7+1 level; 12P; enterprise-level business model
2016-03-23;收到修改稿時間:2016-05-30
10.15888/j.cnki.csa.005542