ERP架構分析
在咱們計算機界,實現架構倒是講了不少,在大層面有企業應用架構模式,在方法上有面向對象\面向服務,在描述手段上有UML,在微觀上有設計模式。但說起切面領域,如ERP領域,應該也有架構方法和架構模型。我個人曾從事過醫療行業和汽車行業這兩個領域的信息化工作,這兩個行業在國外都是成熟嚴謹的行當,汽車制造代表現代工業,醫療代表生命。在醫療信息化行當有HL7標準,在汽車信息化行當有汽車信息總線CAN標準。我當年初見HL7,好么,針對每個角色每個流程每個實體都有詳細的數據與接口的描述,這樣的信息化是多么正宗正道、完備啊。如果各個行當都有信息化標準,那信息化就有據可循了。只有制定規則,才能革命與領導。
ERP軟件是為企業管理而用的,所以它這個軟件應該和企業有一定的映射性。
ERP軟件有架構,那說明企業就一定有架構,否則雙方如何映射。架構就是框架的意思,描述一個事物的概要線條,就如同素描前的勾勒。
所以論ERP架構,不得不談到企業架構,而ERP架構更多是一種功能應用架構。ERP架構往往有三部分組成,一部分是業務功能模塊的架構,最主要是關注模塊間的關系;第二組成部分是基礎業務功能模塊的架構,如組織結構、權限、主數據、登錄\門戶;第三組成部分就是純技術平臺架構,有各種引擎、類庫。
ERP,從本質來講,重點關注的是流程的協作,以及在流程中輸入、處理、流動變化、輸出展示的數據。
流程的協作,大致分為兩類,一類是流程各個環節在各個崗位上的審批管控。管理,不外乎是管關鍵環節和關鍵產物,另外就是管理異常例外,緊急處理后就又形成規矩。另一類流程的協作是多崗位多部門多組織的協作,這往往通過狀態條件來管控,如日期、金額、狀態、類型。你把企業日常業務處理環節你畫出來你看看,大量的if..else,這就是這些分支條件。所以在ERP中不少這樣的業務開關參數、狀態字段。因為這些狀態類型經常被多個環節所更改,所以我們一般會記載他們的變化流水日志,而且不同狀態下的數據特征是什么樣,也需要提前明示以及被巡檢。
所以,就單說業務功能模塊的架構,在技術實現層面、業務功能模塊切割和模塊間組織關系分析層面,我們要明示接口。我們也得重點關注這兩類流程協作的架構,以及兩類流程之間的關系。這都是應用架構。
而數據。企業在永續經營過程中,在使用ERP過程中,會有大量的單據、報表,這些都是數據。切面專門研究數據之間的關系、數據特征、數據變化處理的管控,這也是一門架構。我們既然有數據庫架構師,那就不僅僅只在數據庫產品層面發技術力(況且大家大量使用的數據庫還都是商業化產品),更重點的是要在數據架構層面多思考多設計。
所以,從整體來說,從大視野來說,ERP架構應該分為:
1、業務模型層面:企業架構
2、功能模型層面:功能模塊架構、審批流程架構、業務狀態協作流程架構
3、實現層面:基礎業務平臺架構(諸如組織、權限、主數據)、平臺架構、數據架構
而業務模型架構和功能模型架構應該能存在一種映射關系,放能從現實業務映射到ERP軟件。所以我一是在投入研究企業架構應該如何完備性描述,二是在投入研究這樣的企業架構如何映射到軟件應用架構。
雖然業界有不少EA(企業架構)方法,***的是TOGAF,但它更主要講述的是從業務到軟件到技術到實施到運維全生命周期,而在每個環節卻又不具體,尤其是企業業務架構這方面,可能是TOGAF制定的時候企業管理者參與較少,所以一直沒有明確架構模型,這甚遺憾。
于是,沒辦法,放下TOGAF,我看了不少企業管理和近百年企業管理演進的書,希望從中找到企業架構模型。
閱讀來閱讀去,覺得應該這樣描述企業架構(當然,這些塊和層是否都需要和都能映射為ERP軟件,也不見得,可能現在也不需要):
1、精神層面:愿景、社會責任、企業文化、員工關系、合作伙伴關系
2、公司層面:董事會、公司治理結構、股權上市與融資
3、戰略層面:基業長青、戰略、競爭戰略、藍海戰略、領導力、變革與創新
4、管理層面:組織、管理者職能\組織梯隊構建、計劃\協作組織\推進\管控、員工溝通\激勵\考核
5、業務層面:預算、財務、生產、產品質量、供應鏈、倉儲、物流、營銷、客戶、人力、品牌...
在微觀層面還有流程梳理、動作分解、工藝改進,這就偏業務流程和專業技術的結合了。尤其現代企業更融入了自動化的實現和信息化的對接,更需要兩個領域的專家在大層面構筑統一模型了。
從哲學上理解,企業需要管理嗎?是企業管理者,還是企業服務者?如果戰略目標清晰、組織分工配合職責清晰、每個崗位專業、考核清晰、行動計劃清晰,那是否企業的管理者就可以弱化為一個服務者,而非主導的管理者?
但,現實是一個動態變化的。所以需要不斷根據內外異常的變化而調整,否則團隊還會按照既定計劃和方法去走。這就需要管控。另外,現實總差強人意,一個計劃要執行到位,人的意識、能力、數量、梯隊、團隊分工配合、溝通磨合、時間點契合、財務資源和物品資源都從質量和數量上到位,這么多配合環節和配合點,就如同一臺汽車的各個零件一樣要配合無間,那是多么難的一件事。而汽車能運轉,因為汽車全是物理零件,而企業經營,大部分是人,人就一定會有各個方面的例外。一個心情不好都能影響不少東西。所以還是需要管控。
基于我個人的苑囿,目前還未有明確方法從完備的企業架構如何映射到ERP軟件應用架構,也無明確的方法來解構ERP軟件應用架構、數據架構。這都是需要我們上下而求索的。也可能方法和標準早已經有,如SAP這樣的實踐派,如ISO這樣的理論派。但我目前苦苦追尋這兩大派的資料,還無所獲,實在局限所致。
有志同道合者,讓我們來一起交流討論辯論吧。























