这两年在IT圈里面最火的一个概念就是中台了,有很多人,很多企业写了很多文章,做了很多分享,甚至还开发了很多课程在讲中台这个话题。但大部分的讨论都是在回答What,Why和How的,也就是中台是什么,为什么建中台以及如何建中台。
我是ThoughtWorks中台解决方案的负责人,所以过去这两年也没少去跑客户做售前,去现场回答一下What,Why和How这三个问题。通过和这些客户的沟通,我发现不同的客户其实对这些问题理解都不完全一样。
这些场景中的客户很明显都对三个问题有自己的看法,我相信很多人也会由于处在不同的行业,不同的公司,不同的职位,而对中台有自己独特的理解,一千个人有一千个中台。所以这时候我发现有一个中台的问题并没有人提出,那就是Who的问题,什么样的企业需要中台?所以我觉得虽然现在业界内虽然已经有了很多关于中台是什么,为什么要中台以及中台怎么建设的很多理论和实战经验,但是如果我们连对需要中台的企业深入的研究和分析,那么如何保证我们设计并建设的中台是真正能够帮助到这些企业的呢?要研究需要中台的企业,就需要弄清楚两个问题:
今天我们对于数字时代这个概念已经非常熟悉了,现在不论是媒体还是企业高管动不动张嘴闭嘴都是数字化,很多传统企业公司甚至为此专门成立了数字化相关部门,有的名字很高大上,叫数字化战略规划部,数字化办公室,还有了一个新职位Chief Digital Officer。那么究竟什么是数字化呢,什么又是数字时代呢?如果把我们现在使用的互联网技术,通信技术,大数据技术等等看作是数字时代的特征,那么应用这些技术最后不都是实现一个信息系统吗,为什么不继续使用我们已经熟悉的信息化?数字化和信息化这两个词究竟有没有区别?数字化是不是只是一个酷炫的的新词?
这些问题是我们公司内部讨论时,或在客户现场时经常出现的问题。而且经常讨论了半天发现还是找不出来数字化和信息化的明显差异。在研究这个问题的过程中,我又重新研究了香农的《信息论》,香农对于信息的定义是:能够减少不确定性的东西。 我发现在这个定义中并没有说明是给谁减少不确定性的,比如人类和猩猩在夜晚都可以看到同一片星空,能够看到恒星的运行轨迹,但是人类可以通过观察找到规律,减少天体运行的不确定性,而相同的星空并没有减少猩猩对于天体运行的不确定性。因此,需要有一个主体来识别信息。基于这点,我们就可以区分出信息化和数字化的差异了:
弄清楚了数字化和信息化的差异,我们也就能够理解数字化对于商业模式带来的改变,企业需要在自己的商业场景中尽可能的加入数字采集能力来获取数据,然后根据数据进行分析识别发现价值,最后可以根据发现的价值快速地调整业务形成闭环。很明显不是所有的企业都能具备上述的这种完整的闭环能力,所以我们需要看看一个市场中企业是如何划分的,他们的目标是什么,又需要具备什么能力。
梁宁老师在《增长思维30讲》里面把企业划分成了四类:
在介绍几类玩家的时候都提到了数字化能力,那么对于一个企业究竟什么是数字化能力呢?在我看来,数字化能力就是基于数字化技术进行业务创新,设计合理的企业架构支撑业务并快速落地交付实现业务的能力。
在找到我们希望进行数字化转型的企业中,大家的问题都逃不出这三个点:
在这三个问题中中我们发现企业架构设计是最关键的重灾区,因为它是两头的桥梁,好的架构设计可以清晰的说清楚业务问题,可以让开发团队很好的理解设计意图并迅速完成开发支撑业务。所以下面先看看什么是企业架构设计的正确姿势,企业架构设计和中台的关系又是什么样的,由于不同的企业对企业架构设计的要求不一样,因此就能够推演出什么样的企业需要中台。
谈到企业架构设计,首先要弄清楚的一个问题是:对于架构设计这个工作来说,究竟什么才是架构?在建筑行业和软件工程行业都有架构师这个岗位,但是他们的工作场景又看似完全不同,在这两个究竟是在架构什么呢?
这个问题困扰了我很久,最终在《系统之美》《复杂》这两本书里找到了一个合理的解释,在我们建设一个房子或者一个企业软件时,虽然一个在物理世界一个在计算机世界的,所面对的都是各自世界的复杂系统。所谓系统,就是由一堆元素和连接关系构建起来的一个整体结构。比如在国家这个系统中政府,企业,个人都是这个系统中的要素,这些要素和他们之间纷繁复杂的连接关系一起构建成了国家这个复杂系统。当我们想要改变一个复杂系统时,系统通过改变要素的特性来改变系统是很困难的,一方面是很多要素难以改变,一方面是由于系统自身的一些特性会让被改变的元素又变回原来的样子。因此,先要改变一个系统的唯一办法只能是改变系统内要素的连接关系,或者引入新的连接关系和新的要素。顺这个这个思路,所谓的架构设计,本质就是通过改变一个复杂系统的要素之间连接结构来让系统更优的生存。
弄清楚架构设计的本质,再看看具体在企业架构领域是如果通过改变系统内要素之间的连接关系来让系统更优。简要回溯一下企业架构设计的历史,发现有三个关键的节点:
虽然这些架构框架都有不相同的地方,但是我们能够发现这些框架的共性:框架设计者希望能够从不同的视角去剖析一个组织(企业,军队)的信息系统架构。所以用现在大家最广泛使用的TOGAF框架来说,这些业务架构,应用架构,数据架构,技术架构其实就是不同的视角。在不同的视角下,系统呈现出来的要素和连接关系都会有所不同,因此不同视角呈现的结构也会有关联和支撑。
在架构师的日常工作中,架构设计最终的呈现方式通常都是一个架构设计图。之所以采用图的方式就是因为在描述一个系统的元素和连接关系时如果采用线性的文字方式进行描述会很难描述清楚。所以架构设计图的本质是一种高效传递复杂系统结构的信息传递方式。基于这点,一个架构设计图中最重要的两个点就是:这个信息是要传递给那些人的,他需要用这些信息来继续做什么?
还是用常见的TOGAF的4A架构来说,
基于上面的逻辑,我们可以看看中台,DDD,微服务这些火热的概念都是在解决哪个层面的问题了。 1. 首先说中台,由于中台是企业级能力复用平台,所以中台一般不会对企业的业务架构产生改变,你看阿里搞了中台以后并没有改变天猫,淘宝,菜鸟这些BU的业务,而是通过业务的横向分析,找到了可以复用的企业能力,重新设计了支撑企业业务的应用系统,所以中台设计更多的是企业应用系统架构层面的设计,只是相比过去,应用系统设计需要从企业级视角出发,而不是只考虑某个BU就够了。2. 再说DDD,DDD虽然会从领域(也就是业务)视角进行设计,但是很难用DDD设计新的业务模式,所以DDD是一种根据业务进行分析然后设计出和业务很好匹配的应用系统,一般来说限界上下文就是一个应用系统或者业务模块,由于DDD里面没有应用系统落地实现细节,所以也不涉及技术架构的内容。3. 到了微服务设计基本就和落地相关了,所以微服务设计回答的是技术架构的问题。当然应用系统落地除了微服务也有大单体,SOA等其他方式。只是现在由于云计算基础设施,微服务技术支撑技术越来越成熟,采用微服务架构设计的技术架构能够给让企业在设计应用架构时粒度可以更细,这样就可以更快的支撑业务架构的变化。
ThoughtWorks用于规划和建设中台的体系称为D4,就需要企业和ThoughtWorks一起投入比较重的资源来进行规划和建设,它把中台规划和落地分成了四个主要部分:
根据几类玩家要求的不同层级数字化能力可以看看他们都需要最关注哪个层级的架构设计:
根据上面的企业架构设计和中台的关系,以及不同玩家对企业架构设计的关注点,就很容易发现,在四类玩家中只有头部玩家和顶级玩家需要可复用的应用架构设计,也就是只有头部玩家和顶级玩家是真正需要中台的。而且由于中台规划和建设是一个庞大而且复杂的过程,腰部玩家和草莽玩家也不一定有足够的时间和资源。
从上面的分析来看,虽然只有顶级玩家和头部玩家需要中台,但是在这个变化迅速的数字时代,一个企业的角色转化也会是非常迅速的,一个企业经过多年的苦心经营开始从草莽玩家上升到了腰部玩家,然后完成一次大规模融资就会把目标从找生态位变成了终结战争。
但是企业不能够等到那时候才开始考虑设计可复用的应用架构。因此,也许不是每个企业都需要规划建设中台,但每个怀揣梦想的人都要有中台思维。
也许不同的人在企业中是不同的角色,有人是创始人,有人是部门经理,有人是产品经理,有人是架构师,但大家的梦想都是通过努力实现个人和企业的向上越迁,所以在日常工作中我们需要具备基本的中台思维:多维拆解高复杂系统,全局设计可复用架构。