企業(yè)架構設計的服務對象是企業(yè),所以,“企業(yè)”是企業(yè)架構理論需要首先明確的概念,對于這一概念,筆者比較贊同TOGAF理論中對“企業(yè)”的定義,也即,企業(yè)是具有共同目標的一系列組織集合體。
盡管概念略有抽象,但是這一旨在界定涉及范圍的概念有效地避免了關于企業(yè)性質的深入討論可能會帶給企業(yè)架構理論的混亂,也很好地拓展了企業(yè)架構理論的適用性。
基于這一概念,企業(yè)架構理論適用于任何組織形態(tài),也不需要區(qū)分組織規(guī)模,并且強調“共同目標”對企業(yè)架構設計的指導性意義,實現(xiàn)“共同目標”是企業(yè)架構的使命。
確定了“企業(yè)”的概念之后,接下來要確定的自然是什么是“架構”。筆者比較認同ISO中對“架構”的定義:架構是指系統(tǒng)的基本組成部分,各組成部分之間及其與環(huán)境之間的關系,決定其設計與演進的治理原則。也即,架構主要包括結構、關系、原則(也可以理解為“規(guī)律”)。
這一概念同樣也沒有限制架構的適用范圍,所以筆者曾在自己的公眾號文章中提到,“萬物皆有架構”,不僅我們設計的系統(tǒng)如此,詩詞歌賦也一樣。不同的詞牌子有不同的字數(shù)、平仄、韻腳的要求,可以產(chǎn)生不同的節(jié)奏,每個詞牌子都是一種“架構風格”,不同的“架構風格”適合不同的主題、抒發(fā)不同的情感,頗像技術領域常說的設計模式。
那么把這兩個概念結合起來,筆者認為,作為名詞的“企業(yè)架構”的概念應當是“具有共同目標的組織集合體的基本組成部分及其內外部關系與治理原則”。由此,企業(yè)架構設計就意味著:
按照Zachman框架的理念,企業(yè)架構是多視角架構的集合;TOGAF將其內部劃分為“4A”架構,即業(yè)務架構、應用架構、信息架構(數(shù)據(jù)架構)、技術架構。
筆者也認為企業(yè)架構不是一張包羅萬象的“大圖”,而是多視角的集合,筆者建議應當將TOGAF“4A”架構中的業(yè)務架構與信息架構整合為新的“業(yè)務架構”,理由是業(yè)務和數(shù)據(jù)應當在架構設計過程中整合考慮。
這并非要取消數(shù)據(jù)模型,而是數(shù)據(jù)模型不應再是單獨的設計過程,應該與業(yè)務模型一同設計,并形成更緊密的關系。一方面有利于提升業(yè)務架構的結構化、標準化程度,另一方面也便于業(yè)務架構與應用架構的銜接。
因此,筆者建議的企業(yè)架構在內部分類上包括業(yè)務架構、應用架構和技術架構,信息架構則分別融入這三個架構的設計過程中。
每種架構都有自己關注的部分,但是,作為整體而言,構成三者之間銜接關系的則是對相同內容的審視,這個相同的內容就是對架構組成部分和原則的認知。而這三種視角認知的背后,則是企業(yè)戰(zhàn)略、組織和企業(yè)文化的影響。
因為每種架構最終都要為實現(xiàn)戰(zhàn)略服務,而各個架構都會不同程度地受到企業(yè)組織結構的影響,在這方面,“康威定律”的作用已經(jīng)被廣為接受了,盡管不太合理,但是,即便是離業(yè)務相對較遠的技術架構,其平臺的規(guī)劃設計也難免會受到組織因素的影響。
企業(yè)文化作為一種不可見的“軟因素”,其對企業(yè)的影響更是滲透到企業(yè)的方方面面,圍繞企業(yè)架構開展的各種活動都是企業(yè)活動的一部分,也必然受其影響,因為一切活動最終都是人的活動,企業(yè)架構活動也不例外。當然,企業(yè)架構活動也會反作用于企業(yè)的戰(zhàn)略、組織和文化。
三個架構中,重點是業(yè)務架構,這是實現(xiàn)業(yè)務與技術深度融合的關鍵部分。
企業(yè)架構方法論并非只關注理論的自洽,而是高度關注其實現(xiàn)能力,因此,企業(yè)架構方法論中,除理論邏輯外,應當包含實施建議或者指南、工具介紹。新理論可能在列舉實施指南時缺少可供參考的實例,但是不能因此而停止對理論發(fā)展的大膽討論,因為對待方法論研究的正確態(tài)度是積極思考、勤于動手、博采眾長。
方法論實踐是需要結合企業(yè)自身特點而不能簡單照搬的,因此,實例對于理解方法論而言,雖然具有非常珍貴的參考價值,但不能完全按照實例去理解方法論,因為實例都是方法論的落地的“特例”。所以,理論上的研究也需要敢于大膽提出方向和設想,再去實踐中求證。
在企業(yè)架構方法論中,除對設計方法的介紹外,也應包含方法論對工程模式適配能力的分析,工程模式是企業(yè)落實企業(yè)架構的必經(jīng)之路,所有設計最終要通過工程能力實現(xiàn),工程管理對于架構落地效果具有至關重要的影響。方法論要做到的是努力兼容各種工程模式,這對方法論而言是一種很大的挑戰(zhàn)。
企業(yè)架構方法論不應當只停留在“當下”,應當對自身的發(fā)展方向有所指向,這是架構方法論在時間上的擴展性、適應性的來源,也是為對該方法論感興趣的企業(yè)、讀者提供創(chuàng)新思路的指引,也即,所有的架構方法論理論上應當是自洽的、閉環(huán)的,但思想上應當是演進的、開放的,方法論研究永遠在路上。
因此,沒有停滯不前的方法論,只有讓方法論停滯不前的選擇,也即,方法論的停滯通常是人的問題。
關于企業(yè)架構的認知,還有一點非常重要,企業(yè)架構是為企業(yè)服務的,但企業(yè)不是為企業(yè)架構而生的。做企業(yè)架構是為了更好地理解企業(yè),提升管理能力,但不是為了用企業(yè)架構去“統(tǒng)治”企業(yè)。
企業(yè)架構是為了通過內部一體化、內外一體化的設計提升效率,但企業(yè)架構自身的述求不是企業(yè)必然會放在第一位去考慮的問題,當利益的需要與既有架構的工作方式、原則產(chǎn)生沖突時,企業(yè)很可能會把利益置于優(yōu)先地位,這是可以理解的,盡管會對架構產(chǎn)生影響,甚至給今后遺留下問題,但是,企業(yè)架構和做企業(yè)架構的人都必須能夠接受和適應這種“例外”情況。
筆者希望企業(yè)更多地通過企業(yè)架構引導自己的決策,企業(yè)架構反映的正是遵循秩序帶來的自由,沒有秩序的自由終將導向全面的混亂。臨時的、局部的混亂也許可以為企業(yè)帶來產(chǎn)生一定優(yōu)勢的“靈活”,但是,沒有企業(yè)可以靠“全面混亂”取得長期競爭優(yōu)勢。
筆者提出的新企業(yè)架構方法論的主要內容如圖3-1所示。

▲圖3-1 新企業(yè)架構方法論概念圖
如果讀者對企業(yè)架構方法論有一定了解的話,可以發(fā)現(xiàn),筆身并未新增概念,而是對已有認知的加強和調整,這也是對“奧卡姆剃刀原理(簡單有效原理)”的應用,“如無必要,勿增實體”。
1. 企業(yè)架構要去解決的問題
數(shù)字化時代是以軟件為主要生產(chǎn)工具、以數(shù)據(jù)為關鍵生產(chǎn)要素、以協(xié)作為普遍生產(chǎn)組織方式,虛擬與現(xiàn)實深度融合的“超級體驗”時代,個體將享受到空前的獲得感、參與感,乃至幸福感。
這樣的一個時代,是被軟件“包圍”、“填滿”的時代,軟件開發(fā)量的增長已經(jīng)先于時代的到來提供了未來的跡象。據(jù)某知名機構預測,未來5年的軟件開發(fā)量將超過過去40年開發(fā)的總量,那么,未來10年、20年、30年呢?
隨著軟件技術在基礎教育中普及,“全民編程”時代距離今天也未必很遠,對于企業(yè)端的軟件開發(fā)而言,這是好消息,也是壞消息。
企業(yè)的對外服務、對內管理大量都在依靠軟件實現(xiàn),即便是街邊零售攤販,也在使用軟件收款結算。軟件服務范圍的擴大,直接導致“軟件缺口”的擴大,且沒有因為軟件開發(fā)速度的加快而縮小。
越來越多的企業(yè)端軟件,在提升單項工作效率的同時,也在加大總體管理的成本,增加數(shù)據(jù)處理的難度,這可稱之為“軟件混亂”。“軟件混亂”導致通過軟件提升企業(yè)洞察力的難度加大,而這本應是數(shù)字化發(fā)展的關鍵方向。
如果軟件開發(fā)由于從業(yè)者人數(shù)、工作量的持續(xù)上升卻未能填補“軟件缺口”,反而加劇“軟件混亂”,那將與開發(fā)軟件的目標背道而馳。軟件本身要能夠很好地解決問題,這之后才有商業(yè)利益可言。
凡是軟件必有架構,這是由軟件的生產(chǎn)方式?jīng)Q定的,無論采用面向過程、面向對象還是面向函數(shù)的編程語言,軟件都只能按照某個特定的結構去實現(xiàn),因為需求本身也有其內在結構。
企業(yè)端軟件面對的問題是在其開發(fā)過程中導入了企業(yè)因素而產(chǎn)生的特殊復雜性,企業(yè)因素包括企業(yè)戰(zhàn)略、組織結構、業(yè)務模式、外部協(xié)作、客戶變化等等,企業(yè)是一個特定的“問題域”。
軟件架構的清晰會降低復雜度的不可見性,會讓問題的解決能夠因為結構的分解而從“大”變“小”,架構是解決“軟件混亂”的正確方式,企業(yè)端軟件也不例外。
為此而需要針對企業(yè)復雜性這個特定“問題域”導入的解決方式就是“企業(yè)架構”,目前各類應對企業(yè)端軟件開發(fā)存在的“軟件混亂”而采取的措施,最終都會導向某種在整個企業(yè)范圍內思考問題、尋求策略的傾向,其實質都是對“企業(yè)架構”的探求,僅是方法上的區(qū)別而已。
2. 企業(yè)架構還需要發(fā)展
“企業(yè)架構”是解決企業(yè)端“軟件混亂”的工具,但并不是意識到這一點就可以了,工具本身也會帶來復雜性的增加,也可能導致混亂,因此,讓工具本身清晰也是非常重要的。
架構究其實質就是在澄清結構和關系,因此,必須聚焦于關鍵設計元素及其關系的獲取上,架構開發(fā)中采用的方法、工具都要服務于這一目的,而不要過度拓展架構解決問題的方式方法,導致架構方法論的混亂。
企業(yè)不應當被“企業(yè)架構”龐大的“身影”迷惑,甚至產(chǎn)生畏懼,清晰的企業(yè)架構方法是在解釋企業(yè)的復雜性,企業(yè)的復雜性不會因此而放大,反過來,企業(yè)的復雜性也不會因為不采用企業(yè)架構方法而減少。
企業(yè)架構會關注企業(yè)的戰(zhàn)略、組織、業(yè)務、技術等方面,但是,架構在每個方面關注的都是其設計元素及相互關系的識別與表達,架構本身不等于架構設計對象,只是對架構設計對象的良好表達,籍此澄清架構設計對象。
為了達到這一目的,企業(yè)架構方法論必須闡明自己關注的設計元素,并且可以動態(tài)調整這些設計元素及識別方法,這就是企業(yè)架構方法論的演進。
澄清架構設計對象雖然有助于解決“軟件混亂”問題,但仍然不能保證對軟件開發(fā)速度的提升,無法解決“軟件缺口”問題。
“軟件缺口”問題的成因之一可以歸結為“軟件混亂”問題,是更大的行業(yè)級別的“軟件混亂”,這一問題導致行業(yè)通用功能即無法很好地由商業(yè)套件提供,也無法通過開源手段簡單解決,因為這是語境、語義上的“混亂”,是跨企業(yè)的定義、標準、理解不一致產(chǎn)生的“混亂”。
由于架構方法的內在邏輯,企業(yè)架構有助于解決這一問題,但這不再是單一企業(yè)的架構設計方式可以解決的,需要跨越單一企業(yè)邊界進行標準化提煉,是行業(yè)級的標準化。但是即便在同一行業(yè)內,不同規(guī)模的企業(yè),其架構依然可以是不同的,所以,這是按照企業(yè)行業(yè)、規(guī)模等維度“分層”的企業(yè)架構。
基于對標準化分層企業(yè)架構的提煉,可以孕育“量產(chǎn)”型的架構設計生產(chǎn)能力,當然,這并非絕對的“量產(chǎn)”,而是與當前長周期、人力型企業(yè)架構生產(chǎn)方式相對應的“量產(chǎn)”。
在企業(yè)架構工具的支持下,少量企業(yè)架構師應當可以有效指導一個企業(yè)的、快速的架構設計工作,這里需要明確的是“指導”而非“生產(chǎn)”,因為企業(yè)架構設計不是架構師自己的事情,是整個企業(yè)的工作。
企業(yè)架構是數(shù)字化企業(yè)的思維模式,把一切事物結構化,進而數(shù)字化,把所有局部有機整體化,這是需要全企業(yè)共同努力的事情,每個人、每個物品都是企業(yè)的一部分,也都是企業(yè)架構可以描述的一部分。
這種支持跨企業(yè)甚至跨行業(yè)標準化、“量產(chǎn)”的企業(yè)架構,也可以是采用生態(tài)方式構建的企業(yè)架構。專業(yè)咨詢公司依然可以靠設計更高質量的企業(yè)架構贏取收入,但是企業(yè)架構也可以是“開源社區(qū)”一樣的“開源企業(yè)架構社區(qū)”,可以是民主化、分布式的架構設計能力,而非中心化的架構產(chǎn)品。
以構件為單位的架構設計,其架構構件、關系說明應當可以開源,或者有償提供構件級的產(chǎn)品,從而為架構設計提供可以快速生長的“生態(tài)”,如果構件本身已經(jīng)包含實現(xiàn),這就是更好的、不以單一系統(tǒng)為生長邊界的“開源企業(yè)架構社區(qū)”,當然,這里也需要國家的支持力量和專利管理的發(fā)展,才有可能平衡社區(qū)的運營,《中華人民共和國國民經(jīng)濟和社會發(fā)展第十四個五年規(guī)劃和2035年遠景目標綱要》中已經(jīng)對“開源”的價值有所肯定和期待。
企業(yè)架構有助于解決企業(yè)端軟件生產(chǎn)存在的“軟件缺口”和“軟件混亂”問題,但這并不是當前的企業(yè)架構理論可以馬上解決的,需要理論自身的發(fā)展和所有支持者、需求者共同而長期的努力,尤其重要的是,這不是在技術內部可以解決的問題,企業(yè)架構尤其是其中的業(yè)務架構部分,必須走出技術側,能夠被業(yè)務側掌握且廣泛應用,才能激發(fā)其全部價值。
3. 企業(yè)架構應滿足的基本要求
企業(yè)架構自身需要發(fā)展,而發(fā)展中應注意對自身最基礎的五項要求:
而對達成這五項要求非常重要的是對元模型和業(yè)務視角(也即業(yè)務架構)的重視,這也是構建企業(yè)架構方法論與架構框架的核心要點。