温昱:架构实践全景图
業(yè)務架構是跨系統(tǒng)的業(yè)務架構藍圖,應用架構、數(shù)據(jù)架構、技術架構是解決方案的不同方面。
多年來,全球業(yè)界已在業(yè)務架構、應用架構、數(shù)據(jù)架構、技術架構方面積累了大量經(jīng)驗。
近幾年,數(shù)字化轉型呼喚“懂行人”打通四種架構,確保技術支撐業(yè)務、業(yè)務支撐戰(zhàn)略。
本文就帶大家來厘清這幾種架構之間的脈絡關系。
其中,文中涉及的縮寫全稱如下。
BA:Business Architecture,業(yè)務架構
DA:Data Architecture,數(shù)據(jù)架構
AA:Applications Architecture,應用架構
TA:Technology Architecture,技術架構
以下內(nèi)容節(jié)選自《業(yè)務架構 應用架構 數(shù)據(jù)架構 實戰(zhàn)》一書!
▼掃碼獲取本書詳情▼
▊?戰(zhàn)略、BA、DA、AA、TA五者的關系
現(xiàn)在,我們來總覽一下戰(zhàn)略、BA、DA、AA、TA五者之間的邊界與關系。如下圖所示。
?
首先,公司管理層是戰(zhàn)略的提出者和總設計師。
例如,一家大銀行的全局戰(zhàn)略規(guī)劃出自何處?答:管理層是規(guī)劃者,規(guī)劃發(fā)展部是協(xié)助者。規(guī)劃發(fā)展部持續(xù)研究行業(yè)政策方向、持續(xù)關注宏觀環(huán)境變化、持續(xù)跟蹤友商發(fā)力動向。
其次,業(yè)務架構師是業(yè)務架構藍圖的設計師和描述者。
例如,一個在銀行的信息科技部工作的業(yè)務架構師。要研究戰(zhàn)略、領會戰(zhàn)略,把戰(zhàn)略作為推動業(yè)務架構設計的原動力,定義出詳細的業(yè)務架構藍圖。
最后,解決方案由專業(yè)分工更細的數(shù)據(jù)架構師、應用架構師、技術架構師負責。
例如,銀行的信息科技部一般有架構辦公室,部門中有專職或兼任的數(shù)據(jù)架構師、應用架構師、技術架構師,還要有專門的安全架構師。
所以,戰(zhàn)略、BA、DA、AA、TA這五者,實際位于以下三個層次上:
公司戰(zhàn)略;
業(yè)務架構;
方案架構。
這五者的核心關系,概括為以下幾點:
戰(zhàn)略是公司高層的設計,卻是業(yè)務架構師的需求;
業(yè)務架構師的工作是“戰(zhàn)略進,業(yè)務架構出”;
業(yè)務架構是業(yè)務架構師的設計,卻是數(shù)據(jù)、應用、技術架構師的需求;
環(huán)環(huán)相扣,上層驅動下層,下層支撐上層。
▊?BA、DA、AA、TA的實際工作內(nèi)容
承接上文,公司戰(zhàn)略層——業(yè)務架構層——方案架構層,三層大局已定。
那么,戰(zhàn)略、BA、DA、AA、TA這五項工作,具體的內(nèi)容有哪些呢?
例如,確定戰(zhàn)略驅動因素(Driver)之后,業(yè)務架構師應做哪些分析?
例如,組織結構分析在哪里?應用項目劃分在哪里?技術選型在哪里?
下圖總結了BA、DA、AA、TA的實際內(nèi)容。
1. 公司戰(zhàn)略層。戰(zhàn)略是業(yè)務架構設計的驅動力。
眼尖的朋友從上圖中可以看出:戰(zhàn)略規(guī)劃需要廣泛的外部分析、內(nèi)部分析、基于SWOT的戰(zhàn)略決策分析、最終制定出產(chǎn)品戰(zhàn)略、服務戰(zhàn)略、合作戰(zhàn)略、渠道戰(zhàn)略、市場戰(zhàn)略、競爭戰(zhàn)略等方面的具體方針。
2. 業(yè)務架構層。業(yè)務架構藍圖必須有企業(yè)標準,筆者推薦給企業(yè)的標準是5要素。
組織結構+業(yè)務功能+業(yè)務流程,這是經(jīng)典的“老三樣”,對應于“誰”“干什么”“怎么干”,符合國內(nèi)老一代信息科技老總們的口味。
在業(yè)務架構藍圖中,應加上商業(yè)模式。九個格子的商業(yè)模式畫布,比較新,有用且好用。我們后續(xù)再講。
在業(yè)務架構藍圖中,應加上業(yè)務數(shù)據(jù)。
有利因素是,業(yè)務數(shù)據(jù)和業(yè)務功能、業(yè)務流程緊密相關,也屬同一思維層次。不利因素是,有人爭辯業(yè)務數(shù)據(jù)應屬于數(shù)據(jù)架構。我看中的是有利因素,照顧的實踐是:業(yè)務架構師的工作產(chǎn)物《業(yè)務架構書》要包含業(yè)務數(shù)據(jù)才完整。
3. 方案架構層。涉及數(shù)據(jù)架構、應用架構、技術架構。
數(shù)據(jù)架構的核心是數(shù)據(jù)類型和來源。
例如,一家電商企業(yè)要把員工角色數(shù)據(jù)、員工操作日志、商品數(shù)據(jù)、訂單數(shù)據(jù)、用戶登錄記錄、用戶搜索記錄、用戶評價記錄、用戶投訴記錄等多種要管理的數(shù)據(jù)類型識別出來,才能有針對性地設計數(shù)據(jù)模型、數(shù)據(jù)存儲與分布、數(shù)據(jù)流等。數(shù)據(jù)流是場景化的,業(yè)務功能不同,相關的數(shù)據(jù)流可能不同。數(shù)據(jù)流又常涉及數(shù)據(jù)產(chǎn)生、數(shù)據(jù)使用、數(shù)據(jù)加工、數(shù)據(jù)存儲等。
應用架構的核心是識別出應用功能,并映射到應用項目。
技術架構的核心是識別出技術需求并映射到技術選型。筆者推薦的技術架構5要素包括:
技術需求——技術服務列表,或結構化地畫出技術參考架構、技術棧。
技術選型——技術平臺、技術產(chǎn)品、技術框架、中間件。
物理選型——硬件選型、網(wǎng)絡選型。
分布設計——部署結構、負載均衡。
選型管理——面向行業(yè)的技術指標、企業(yè)中長期的技術選型標準。
▊?從戰(zhàn)略到架構,再到實施的實際過程
1. 從戰(zhàn)略到架構
首先,看看戰(zhàn)略、BA、DA、AA、TA五個環(huán)節(jié)對應的崗位和產(chǎn)物,如下圖所示。
例如,銀行、保險、證券等企業(yè),都有自己的信息科技部,鮮有例外。架構辦公室這個部門,是CIO的左右手。架構辦有專職或兼任的業(yè)務架構師、數(shù)據(jù)架構師、應用架構師、技術架構師,還有專門的安全架構師。
業(yè)務架構師負責設計業(yè)務架構,內(nèi)容包括業(yè)務功能、業(yè)務流程、商業(yè)模式、組織結構和業(yè)務數(shù)據(jù)等。業(yè)務架構師的輸出,有的企業(yè)叫《業(yè)務架構書》,有的企業(yè)叫《業(yè)務需求書》。
業(yè)務架構師的輸出,是數(shù)據(jù)、應用、技術架構師的輸入。最典型的例子就是業(yè)務流程。BA架構師設計業(yè)務流程,數(shù)據(jù)、應用、技術架構師思考完成業(yè)務流程需要的數(shù)據(jù)支撐、系統(tǒng)協(xié)作、技術平臺。
2. 從架構到實施
下面,重點看架構路線圖環(huán)節(jié)和實施規(guī)劃環(huán)節(jié)。如下圖所示。
要點是釘?shù)綅徫?#xff0c;落到文檔,細到機構調(diào)整、技術采購、項目研發(fā)等工作包。
環(huán)節(jié)1:戰(zhàn)略。公司管理層牽頭、規(guī)劃發(fā)展部全程支持。產(chǎn)出物:《xx-xx年戰(zhàn)略規(guī)劃書》。
環(huán)節(jié)2:業(yè)務架構。信息科技部的架構師團隊的業(yè)務架構師負責。產(chǎn)出物:《業(yè)務架構書》。
環(huán)節(jié)3:方案架構。信息科技部的架構師團隊負責。產(chǎn)出物:《技術方案書》。
環(huán)節(jié)4:架構路線圖。涉及預算,CIO牽頭制定、董事會批準。產(chǎn)出物:架構路線圖。
環(huán)節(jié)5:實施規(guī)劃。CIO牽頭制定。產(chǎn)出物:實施計劃。
環(huán)節(jié)6:項目管控。采取研發(fā)的項目由PMO負責,采取購買的項目由總經(jīng)理辦公室(總經(jīng)辦)負責。
▊?業(yè)務驅動——小試業(yè)務流程驅動的DA、AA、TA設計
0. 案例背景
前文,我們弄清了BA、DA、AA、TA間的脈絡關系,但太粗。
在此,我們“細看”業(yè)務流程在BA、DA、AA、TA間“穿針引線”的過程。總體而言:
在BA設計環(huán)節(jié)——業(yè)務流程被詳細定義
在DA、AA、TA設計環(huán)節(jié)——業(yè)務流程是設計的驅動因素
本節(jié)的例子,僅圍繞“買入股票”示范從業(yè)務流程到應用程序,又到數(shù)據(jù)實體,再到技術組件這條主線設計。
1. 業(yè)務架構
作為示例,筆者簡單畫一下“買入股票”的業(yè)務流程圖。
用Archimate語言建模,如下圖所示。
業(yè)務功能——買入股票。
業(yè)務流程——由買入掛單、規(guī)則檢查、上報給交易所等步驟組成。
實現(xiàn)關系——業(yè)務流程到業(yè)務功能的箭頭。
業(yè)務數(shù)據(jù)——買入申報指令。
業(yè)務事件——圖中“交易所回報”事件會觸發(fā)券商“處理成交結果”,當收市時,“當日收市”事件也會觸發(fā)相應業(yè)務處理。可見,用好業(yè)務事件,有利于把“條件觸發(fā)的業(yè)務場景”表達清楚。
2. 應用架構
應用架構師應思考:買入股票業(yè)務流程需要哪些應用服務支持呢?
1)業(yè)務流程一級的買入掛單、規(guī)則檢查、上報給交易所、處理成交結果,需要IT應用服務支持,分別為掛單錄入、規(guī)則檢查、委托上報、接收回報、結果顯示。
2)進一步地,這些IT應用服務要由具體的應用系統(tǒng)來實現(xiàn),分別為券商App、券商集中交易系統(tǒng)。如下圖所示。
3. 數(shù)據(jù)架構
數(shù)據(jù)架構師應思考:買入股票業(yè)務流程需要哪些數(shù)據(jù)支持呢?
1)券商的集中交易系統(tǒng)作為后臺,首先要將委托記錄排隊,以備異步處理。
2)券商App不保存“投資人賬戶”信息,但交易后臺要保存,由證券經(jīng)紀業(yè)務后臺做交易規(guī)則檢查。
3)由證券經(jīng)紀業(yè)務后臺負責的交易規(guī)則檢查,會用到投資人賬戶和投資人資產(chǎn)等數(shù)據(jù)信息,例如,賬戶余額不足時是不允許掛單成功的。
4)后臺存儲“回報記錄”數(shù)據(jù),也是為了異步處理。如下圖所示。
4. 技術架構
技術架構師應思考:買入股票業(yè)務流程需要哪些技術組件支持呢?
1)掛單錄入、結果顯示等技術,由客戶端應用程序支持。
2)規(guī)則檢查、委托上報和接收回報是可重用的應用功能,可考慮實現(xiàn)成服務或微服務。
3)基礎設施的技術選型,由技術架構師決定。如下圖1-8所示。
▊總結
本文重點 “理清BA、DA、AA、TA間的邏輯關系”,如下圖所示。
正向邏輯:戰(zhàn)略決定業(yè)務,業(yè)務決定技術。
反向邏輯:技術支撐業(yè)務,業(yè)務支撐戰(zhàn)略。
▼
想要了解更多具體案例和實戰(zhàn)方法,可閱讀《業(yè)務架構 應用架構 數(shù)據(jù)架構 實戰(zhàn)》一書。
▊《業(yè)務架構 應用架構 數(shù)據(jù)架構 實戰(zhàn)》
溫昱?著
每一頁都是實踐經(jīng)驗的總結,參考性超強
每一頁都簡潔明了重點突出,可讀性超強
大局+架構+文檔,三大篇,操作性超強
本書思路清晰,每一個概念、每一項方法都給出了簡要透徹的闡述。同時又結合實踐,給讀者看得見、摸得著的項目實感,幫助讀者迅速上手。本書還有一個作用,就是能提升讀者對IT及其業(yè)務的認知層次,為長遠職業(yè)發(fā)展提供助力。
(掃碼了解本書詳情)
如果喜歡本文 歡迎?在看丨留言丨分享至朋友圈?三連熱文推薦?? 我們公司放棄了微服務,重回單體架構領域驅動設計(DDD):領域和子域 高可用:異地多活 中臺實踐:新汽車行業(yè)的業(yè)務、技術和平臺轉型 萬字好文,電商秒殺系統(tǒng)架構分析與實戰(zhàn)! 美團技術總結:Java中9種常見的CMS GC問題分析與解決 哪吒:豬八戒十年DevOps演進之路 女神節(jié)快樂!世界上第一位程序員就是女神 黃理:快手基于 RocketMQ 的在線消息系統(tǒng)建設實踐END ? ?? #技術人必備#▼點擊閱讀原文,獲取本書詳情~總結
以上是生活随笔為你收集整理的温昱:架构实践全景图的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《机器学习实战》chapter04 使用
- 下一篇: 《机器学习实战》chapter05 Lo