業務架構師如何進階成長

 

 

 

一、前言

        接觸業務架構工作之後,除了單位提供的方法論外,爲了做好這項工作,認真學習了軟件過程、系統分析與設計、架構設計、設計模式、Java 語言等內容,並研讀了敏捷開發、領域驅動設計、工作流分析等方面的書籍,爲了拓展對新技術的理解,在人工智能和區塊鏈兩方面也閱讀了一些著作,總體而言,不夠系統,都是爲了能夠更好地理解企業級業務架構的方法論及其向技術端的傳導。

        除了惡補基礎知識,更重要的當然是實踐,珍惜每一個設計任務,珍惜每一次與業務人員、技術人員的溝通機會,讓他們來檢驗自己的理解和方法,逐漸形成自己的體系,把零散得來的知識最終融合成體系化的設計與表達。多寫文章,提升思維邏輯性,讓經驗固化成爲知識,當然,固化不要僵化,業務架構師應該是很善於應對變化的。

二、學習建議

        首先,業務架構師的核心是架構,不是業務也不是技術,是形成業務的架構,這一點很重要,要多學習架構設計知識。筆者對企業級業務架構的定義是根據企業戰略,對企業能力進行整體規劃並將其傳導到技術實現端的結構化分析方法。這其中有三個關鍵詞,整體規劃、結構化分析和傳導。業務架構師的核心能力是將複雜的業務體系進行整體性的結構化設計,無論你對 IT 技術或者業務有多熟悉,沒有這一項能力是做不好業務架構師的。此外,由於有“傳導”這個職責,這種結構化設計需要跟 IT 設計有機結合,因此,學習系統分析與設計知識就變得很重要,熟悉技術的讀者能夠理解,這些知識雖然偏技術,卻與語言能力無關,可以脫離語言去學習其設計思維。

        其次,要多瞭解軟件過程。其實很多技術出身的讀者對軟件過程也只是瞭解個大概,日常工作中也不很注重軟件過程管理,忽視了這一點,就無法瞭解、掌控整個開發過程。開發的目的是爲了高質量的交付,而非僅是完成任務。如果不注重軟件過程,連自己的專業領域都無法持續優化,那又如何跨出一步去做個好的業務架構師?對業務出身的讀者來講,學習軟件過程知識就更爲重要了,因爲你必須瞭解你的下游是如何運作的,業務架構是橋樑,業務架構師的作用不是“鐵路警察各管一段兒”,而是要將業務和技術銜接起來。

        再次,要學習流程優化等流程管理知識。業務架構通常不是爲了現狀進行設計,會涉及到整合、優化現有流程,需要掌握一定的流程優化知識,這樣業務架構師才能更好地爲業務提供有價值的建議。但是筆者認爲,流程優化雖然很重要,卻不是專業書籍可以提供多少幫助的,還是比較依賴實操。學習下經典理論,再學習下 BPMN 之類的工具知識就可以,多注意實戰,這部分切記不要“迷信”書籍,因爲流程優化是沒有標準可言的,倒是多總結自己的心得更重要。

        第四,學習建模技術。業務架構的結構化設計通常是通過模型方式來展現的,因此,多學習不同的建模方法,流程的、數據的,甚至 DDD 的,互相取長補短,提升自己的模型表達能力,使設計結果能夠更好地展現出來。

        第五,關於跨界的注意點。從業務出發想做業務架構師的讀者至少應該學習一門主流的計算機語言,不需要達到很精深的程度,主要是理解技術落地的實現方式和技術人員的思維習慣,學習一門計算機語言,才能幫助你完成跨界轉型,哪怕後邊你又把它忘了(不經常寫代碼自然容易忘);從技術出發想做業務架構師的讀者至少要先深入地學習一個業務領域,再去跨領域搞企業級業務架構,就像所謂的“T”人才,先有垂直的一豎,再做拓展的一橫。

        最後,日常多養成從整體出發看問題的習慣。說誇張點兒,前看十年、後看十年地去分析問題,包括看書也是,看歷史書、軍事書,乃至花鳥魚蟲,看什麼書、學什麼知識都養成全面分析的習慣,時刻注意整體和部分的關係,架構處理的就是結構和關係,日常生活、工作的方方面面都會用到架構分析能力,不是僅有系統設計會用,養成了這種習慣也會讓你的設計由“實現”變成“湧現”。

 

三、參考書目

        筆者將自己讀過且認爲值得花時間研究的一些較爲經典的書籍推薦給大家,希望對各位的學習過程有所助益。

        (一)架構設計方面。《系統分析與設計》(Kenneth E.Kendall ,Julie E. Kendall 著)、《設計原本》(Fredrick P.Brooks,Jr. 著)、《軟件系統架構 - 使用視點和視角與利益相關者合作》(Nick Rozanski,Eoin woods 著)、《架構之美》(Diomidis Spenellis & Georgios Gousios 著)、《領域驅動設計:軟件核心複雜性應對之道》(Eric Evans 著)、《實現領域驅動設計》(Vaughn Vemon 著)、《微服務設計》(Sam Newman 著)、《企業 IT 架構轉型之道》(鍾華 著)。

        (二)軟件過程方面。《軟件工程 - 實踐者的研究方法》(Roger S.Pressman 著)、《軟件工程》(Ian Sommerville 著)、《人月神話》(Fredrick P.Brooks,Jr. 著)、《敏捷軟件開發:原則、模式與實踐》(Robert C.Martin)、《Scrum 敏捷軟件開發》(Mike Cohn 著)。

        (三)流程優化。這方面筆者也覺得很難說哪些書非常適合,流程優化除了流程管理層面的技術知識外,更重要的可能來自於管理學,不妨多讀讀管理類書籍,拓寬思路,再考慮具體的流程優化。推薦《目標》(Eliyahu M.Goidratt 著)、《鳳凰項目 - 一個 IT 運維的傳奇故事》(Gene Kim, Kevin Behr & George Spafford 著)。

        (四)建模技術方面。除了軟件工程、系統分析、架構設計類書籍中通常會帶有的建模介紹外,《UML- 面向對象建模與設計》(Michael Blaha,James Rumbaugh 著)也建議讀讀。

        (五)擴展閱讀。業務類書籍,建議多讀些具有多年從業經驗的人寫的具有一定“感受”性特點的書籍,單純的教材類書籍可能代入感稍微有些欠缺;歷史、軍事、經濟、哲學類書籍其實很有助於從更宏觀、更本質的層面瞭解社會的運行,有助於從更開闊的視角理解業務,不過很多讀者可能精力有限,難以廣泛涉獵,但還是建議各位讀者適當閱讀此類書籍,無論你是否對成爲業務架構師感興趣。

        以上是個人的一些淺見,歡迎大家多批評指正,也希望有更多的讀者一起思考如何做好業務架構,成爲一名優秀的業務架構師。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章