精华内容
下载资源
问答
  • 赢力系统企业管理实战咨询班培训教材之 企业组织系统设计 培训目的与要求 了解什么是组织结构 组织结构是如何设计的,理解组织 结构设计的原理 掌握组织设计的标准常见的结构 类型,并能看懂组织结构图和进行 一般的...
  • 企业微信组织架构同步优化的思路

    万次阅读 2018-02-12 16:03:25
    企业微信初版的全量同步方案在快速的业务增长面前已经捉襟见肘,针对其遇到的问题,怎样做好组织架构同步优化?这是又一篇来自微信团队的技术实战。写在前面企业微信在快速发展过程中,陆续有大企业加入使用,企业...

    作为企业级的微信,在业务快速发展的背景下,迭代优化的要求也越发急迫。企业微信初版的全量同步方案在快速的业务增长面前已经捉襟见肘,针对其遇到的问题,怎样做好组织架构同步优化?这是又一篇来自微信团队的技术实战。

    写在前面

    企业微信在快速发展过程中,陆续有大企业加入使用,企业微信初版采用全量同步方案,该方案在大企业下存在流量和性能两方面的问题,每次同步消耗大量流量,且在 iPhone 5s 上拉取 10w+ 成员架构包解压时会提示 memory warning 而应用崩溃。

    全量同步方案难以支撑业务的快速发展,优化同步方案越来越有必要。本文针对全量同步方案遇到的问题进行分析,提出组织架构增量同步方案,并对移动端实现增量同步方案的思路和重难点进行了讲解。

    企业微信业务背景

    在企业微信中,组织架构是非常重要的模块,用户可以在首页的 tab 上选择"通讯录"查看到本公司的组织架构,并且可以通过"通讯录"找到本公司的所有成员,并与其发起会话或者视频语音通话。

    组织架构是非常重要且敏感的信息,企业微信作为企业级产品,始终把用户隐私和安全放在重要位置。针对组织架构信息,企业管理员具有高粒度隐私保护操作权限,不仅支持个人信息隐藏,也支持通讯录查看权限等操作。

    在企业微信中,组织架构特征有:

    1、多叉树结构。叶子节点代表成员,非叶子节点代表部门。部门最多只有一个父部门,但成员可属于多个部门。

    2、架构隐藏操作。企业管理员可以在管理后台设置白名单和黑名单,白名单可以查看完整的组织架构,其他成员在组织架构里看不到他们。黑名单的成员只能看到自己所在小组和其所有的父部门,其余人可以看到黑名单的成员。

    3、组织架构操作。企业管理员可以在 web 端和 app 端添加 / 删除部门,添加 / 删除 / 移动 / 编辑成员等操作,并且操作结果会及时同步给本公司所有成员。

    全量同步方案的问题

    本节大致讲解下全量同步方案实现以及遇到的问题。

    全量同步方案原理

    企业微信在 1.0 时代,从稳定性以及快速迭代的角度考虑,延用了企业邮通讯录同步方案,采取了全量架构同步方案。

    核心思想为服务端下发全量节点,客户端对比本地数据找出变更节点。此处节点可以是用户,也可以是部门,将组织架构视为二叉树结构体,其下的用户与部门均为节点,若同一个用户存在多个部门下,被视为多个节点。

    全量同步方案分为首次同步与非首次同步:

    首次同步服务端会下发全量的节点信息的压缩包,客户端解压后得到全量的架构树并展示。

    非首次同步分为两步:

    服务端下发全量节点的 hash 值。客户端对比本地数据找到删除的节点保存在内存中,对比找到新增的节点待请求具体信息。

    客户端请求新增节点的具体信息。请求具体信息成功后,再进行本地数据库的插入 / 更新 / 删除处理,保证同步流程的原子性。

    用户反馈

    初版上线后,收到了大量的组织架构相关的 bug 投诉,主要集中在:

    流量消耗过大。

    客户端架构与 web 端架构不一致。

    组织架构同步不及时。

    这些问题在大企业下更明显。

    问题剖析

    深究全量同步方案难以支撑大企业同步的背后原因,皆是因为采取了服务端全量下发 hash 值方案的原因,方案存在以下问题:

    拉取大量冗余信息。即使只有一个成员信息的变化,服务端也会下发全量的 hash 节点。针对几十万人的大企业,这样的流量消耗是相当大的,因此在大企业要尽可能的减少更新的频率,但是却会导致架构数据更新不及时。

    大企业拉取信息容易失败。全量同步方案中首次同步架构会一次性拉取全量架构树的压缩包,而超大企业这个包的数据有几十兆,解压后几百兆,对内存不足的低端设备,首次加载架构可能会出现内存不足而 crash。非首次同步在对比出新增的节点,请求具体信息时,可能遇到数据量过大而请求超时的情况。

    客户端无法过滤无效数据。客户端不理解 hash 值的具体含义,导致在本地对比 hash 值时不能过滤掉无效 hash 的情况,可能出现组织架构展示错误。

    优化组织架构同步方案越来越有必要。

    寻找优化思路

    寻求同步方案优化点,我们要找准原来方案的痛点以及不合理的地方,通过方案的调整来避免这个问题。

    组织架构同步难点

    准确且耗费最少资源同步组织架构是一件很困难的事情,难点主要在:

    组织架构架构数据量大。消息 / 联系人同步一次的数据量一般情况不会过百,而企业微信活跃企业中有许多上万甚至几十万节点的企业,意味着架构一次同步的数据量很轻松就会上千上万。移动端的流量消耗是用户非常在乎的,且内存有限,减少流量的消耗以及减少内存使用并保证架构树的完整同步是企业微信追求的目标。

    架构规则复杂。组织架构必须同步到完整的架构树才能展示,而且企业微信里的涉及到复杂的隐藏规则,为了安全考虑,客户端不应该拿到隐藏的成员。

    修改频繁且改动大。组织架构的调整存在着新建部门且移动若干成员到新部门的情况,也存在解散某个部门的情况。而员工离职也会通过组织架构同步下来,意味着超大型企业基本上每天都会有改动。

    技术选型-提出增量更新方案

    上述提到的问题,在大型企业下会变得更明显。在几轮方案讨论后,我们给原来的方案增加了两个特性来实现增量更新:

    增量。服务端记录组织架构修改的历史,客户端通过版本号来增量同步架构。

    分片。同步组织架构的接口支持传阈值来分片拉取。

    在新方案中,服务端针对某个节点的存储结构可简化为:

    vid 是指节点用户的唯一标识 id,departmentid 是指节点的部门 id,is_delete 表示该节点是否已被删除。

    若节点被删除了,服务端不会真正的删除该节点,而将 is_delete 标为 true。

    若节点被更新了,服务端会增大记录的 seq,下次客户端来进行同步便能同步到。

    其中,seq 是自增的值,可以理解成版本号。每次组织架构的节点有更新,服务端增加相应节点的 seq 值。客户端通过一个旧的 seq 向服务器请求,服务端返回这个 seq 和 最新的 seq 之间所有的变更给客户端,完成增量更新。

    图示为:

    通过提出增量同步方案,我们从技术选型层面解决了问题,但是在实际操作中会遇到许多问题,下文中我们将针对方案原理以及实际操作中遇到的问题进行讲解。

    增量同步方案

    本节主要讲解客户端中增量同步架构方案的原理与实现,以及基础概念讲解。

    增量同步方案原理

    企业微信中,增量同步方案核心思想为:

    服务端下发增量节点,且支持传阈值来分片拉取增量节点,若服务端计算不出客户端的差量,下发全量节点由客户端来对比差异。

    增量同步方案可抽象为四步完成:

    客户端传入本地版本号,拉取变更节点。

    客户端找到变更节点并拉取节点的具体信息。

    客户端处理数据并存储版本号。

    判断完整架构同步是否完成,若尚未完成,重复步骤 1,若完成了完整组织架构同步,清除掉本地的同步状态。

    忽略掉各种边界条件和异常状况,增量同步方案的流程图可以抽象为:

    接下来我们再看看增量同步方案中的关键概念以及完整流程是怎样的。

    版本号

    同步的版本号是由多个版本号拼接成的字符串,版本号的具体含义对客户端透明,但是对服务端非常重要。

    版本号的组成部分为:

    版本号回退

    增量同步在实际操作过程中会遇到一些问题:

    服务端不可能永久存储删除的记录,删除的记录对服务端是毫无意义的而且永久存储会占用大量的硬盘空间。而且无效数据过多也会影响架构读取速度。当 is_delete 节点的数目超过一定的阈值后,服务端会物理删除掉所有的 is_delete 为 true 的节点。此时客户端会重新拉取全量的数据进行本地对比。

    一旦架构隐藏规则变化后,服务端很难计算出增量节点,此时会下发全量节点由客户端对比出差异。

    理想状况下,若服务端下发全量节点,客户端铲掉旧数据,并且去拉全量节点的信息,并且用新数据覆盖即可。但是移动端这样做会消耗大量的用户流量,这样的做法是不可接受的。所以若服务端下发全量节点,客户端需要本地对比出增删改节点,再去拉变更节点的具体信息。

    增量同步情况下,若服务端下发全量节点,我们在本文中称这种情况为版本号回退,效果类似于客户端用空版本号去同步架构。从统计结果来看,线上版本的同步中有 4% 的情况会出现版本号回退。

    阈值分片拉取

    若客户端的传的 seq 过旧,增量数据可能很大。此时若一次性返回全部的更新数据,客户端请求的数据量会很大,时间会很长,成功率很低。针对这种场景,客户端和服务端需要约定阈值,若请求的更新数据总数超过这个阈值,服务端每次最多返回不超过该阈值的数据。若客户端发现服务端返回的数据数量等于阈值,则再次到服务端请求数据,直到服务端下发的数据数量小于阈值。

    节点结构体优化

    在全量同步方案中,节点通过 hash 唯一标示。服务端下发的全量 hash 列表,客户端对比本地存储的全量 hash 列表,若有新的 hash 值则请求节点具体信息,若有删除的 hash 值则客户端删除掉该节点信息。

    在全量同步方案中,客户端并不能理解 hash 值的具体含义,并且可能遇到 hash 碰撞这种极端情况导致客户端无法正确处理下发的 hash 列表。

    而增量同步方案中,使用 protobuf 结构体代替 hash 值,增量更新中节点的 proto 定义为:

    在增量同步方案中,用 vid 和 partyid 来唯一标识节点,完全废弃了 hash 值。这样在增量同步的时候,客户端完全理解了节点的具体含义,而且也从方案上避免了曾经在全量同步方案遇到的 hash 值重复的异常情况。

    并且在节点结构体里带上了 seq 。节点上的 seq 来表示该节点的版本,每次节点的具体信息有更新,服务端会提高节点的 seq,客户端发现服务端下发的节点 seq 比客户端本地的 seq 大,则需要去请求节点的具体信息,避免无效的节点信息请求。

    判断完整架构同步完成

    因为 svr 接口支持传阈值批量拉取变更节点,一次网络操作并不意味着架构同步已经完成。那么怎么判断架构同步完成了呢?这里客户端和服务端约定的方案是:

    若服务端下发的(新增节点+删除节点)小于客户端传的阈值,则认为架构同步结束。

    当完整架构同步完成后,客户端需要清除掉缓存,并进行一些额外的业务工作,譬如计算部门人数,计算成员搜索热度等。

    增量同步方案 - 完整流程图

    考虑到各种边界条件和异常情况,增量同步方案的完整流程图为:

    增量同步方案难点

    在加入增量和分片特性后,针对几十万人的超大企业,在版本号回退的场景,怎样保证架构同步的完整性和方案选择成为了难点。

    前文提到,隐藏规则变更以及后台物理删除无效节点后,客户端若用很旧的版本同步,服务端算不出增量节点,此时服务端会下发全量节点,客户端需要本地对比所有数据找出变更节点,该场景可以理解为版本号回退。在这种场景下,对于几十万节点的超大型企业,若服务端下发的增量节点过多,客户端请求的时间会很长,成功率会很低,因此需要分片拉取增量节点。而且拉取下来的全量节点,客户端处理不能请求全量节点的具体信息覆盖旧数据,这样的话每次版本号回退的场景流量消耗过大。

    因此,针对几十万节点的超大型企业的增量同步,客户端难点在于:

    断点续传。增量同步过程中,若客户端遇到网络问题或应用中止了,在下次网络或应用恢复时,能够接着上次同步的进度继续同步。

    同步过程中不影响正常展示。超大型企业同步的耗时可能较长,同步的时候不应影响正常的组织架构展示。

    控制同步耗时。超大型企业版本号回退的场景同步非常耗时,但是我们需要想办法加快处理速度,减少同步的消耗时间。

    思路

    架构同步开始,将架构树缓存在内存中,加快处理速度。

    若服务端端下发了需要版本号回退的 flag,本地将 db 中的节点信息做一次备份操作。

    将服务端端下发的所有 update 节点,在架构树中查询,若找到了,则将备份数据转为正式数据。若找不到,则为新增节点,需要拉取具体信息并保存在架构树中。

    当完整架构同步结束后,在 db 中找到并删除掉所有备份节点,清除掉缓存和同步状态。

    若服务端下发了全量节点,客户端的处理时序图为:

    服务端下发版本号回退标记

    从时序图中可以看出,服务端下发的版本号回退标记是很重要的信号。

    而版本号回退这个标记,仅仅在同步的首次会随着新的版本号而下发。在完整架构同步期间,客户端需要将该标记缓存,并且跟着版本号一起存在数据库中。在完整架构同步结束后,需要根据是否版本号回退来决定删除掉数据库中的待删除节点。

    备份架构树方案

    架构树备份最直接的方案是将 db 中数据 copy 一份,并存在新表里。如果在数据量很小的情况下,这样做是完全没有问题的,但是架构树的节点往往很多,采取这样简单粗暴的方案在移动端是完全不可取的,在几十万人的企业里,这样做会造成极大的性能问题。

    经过考虑后,企业微信采取的方案是:

    若同步架构时,后台下发了需要版本号回退的 flag,客户端将缓存和 db 中的所有节点标为待删除(时序图中 8,9 步)。

    针对服务端下发的更新节点,在架构树中清除掉节点的待删除标记(时序图中 10,11 步)。

    在完整架构同步结束后,在 db 中找到并删除掉所有标为待删除的节点(时序图中 13 步),并且清除掉所有缓存数据。

    而且,在增量同步过程中,不应该影响正常的架构树展示。所以在架构同步过程中,若有上层来请求 db 中的数据,则需要过滤掉有待删除标记的节点。

    缓存架构树

    方案决定客户端避免不了全量节点对比,将重要的信息缓存到内存中会大大加快处理速度。内存中的架构树节点体定义为:

    此处我们用 std::map 来缓存架构树,用 std::pair 作为 key。我们在比较节点的时候,会涉及到很多查询操作,使用 map 查询的时间复杂度仅为 O(logn)。

    增量同步方案关键点

    本节单独将优化同步方案中关键点拿出来写,这些关键点不仅仅适用于本文架构同步,也适用于大多数同步逻辑。

    保证数据处理完成后,再储存版本号

    在几乎所有的同步中,版本号都是重中之重,一旦版本号乱掉,后果非常严重。

    在架构同步中,最最重要的一点是:

    保证数据处理完成后,再储存版本号。

    在组织架构同步的场景下,为什么不能先存版本号,再存数据呢?

    这涉及到组织架构同步数据的一个重要特征:架构节点数据是可重复拉取并覆盖的。

    考虑下实际操作中遇到的真实场景:

    若客户端已经向服务端请求了新增节点信息,客户端此时刚刚插入了新增节点,还未储存版本号,客户端应用中止了。

    此时客户端重新启动,又会用相同版本号拉下刚刚已经处理过的节点,而这些节点跟本地数据对比后,会发现节点的 seq 并未更新而不会再去拉节点信息,也不会造成节点重复。

    若一旦先存版本号再存具体数据,一定会有概率丢失架构更新数据。

    同步的原子性

    正常情况下,一次同步的逻辑可以简化为:

    在企业微信的组织架构同步中存在异步操作,若进行同步的过程不保证原子性,极大可能出现下图所示的情况:

    该图中,同步的途中插入了另外一次同步,很容易造成问题:

    输出结果不稳定。若两次同步几乎同时开始,但因为存在网络波动等情况,返回结果可能不同,给调试造成极大的困扰。

    中间状态错乱。若同步中处理服务端返回的结果会依赖于请求同步时的某个中间状态,而新的同步发起时又会重置这个状态,很可能会引起匪夷所思的异常。

    时序错乱。整个同步流程应该是原子的,若中间插入了其他同步的流程会造成整个同步流程时序混乱,引发异常。

    怎样保证同步的原子性呢?

    我们可以在开始同步的时候记一个 flag 表示正在同步,在结束同步时,清除掉该 flag。若另外一次同步到来时,发现正在同步,则可以直接舍弃掉本次同步,或者等本次同步成功后再进行一次同步。

    此外也可将同步串行化,保证同步的时序,多次同步的时序应该是 FIFO 的。

    缓存数据一致性

    移动端同步过程中的缓存多分为两种:

    内存缓存。加入内存缓存的目的是减少文件 IO 操作,加快程序处理速度。

    磁盘缓存。加入磁盘缓存是为了防止程序中止时丢失掉同步状态。

    内存缓存多缓存同步时的数据以及同步的中间状态,磁盘缓存用于缓存同步的中间状态防止缓存状态丢失。

    在整个同步过程中,我们都必须保证缓存中的数据和数据库的数据的更改需要一一对应。在增量同步的情况中,我们每次需要更新 / 删除数据库中的节点,都需要更新相应的缓存信息,来保证数据的一致性。

    优化数据对比

    内存使用

    测试方法:使用工具 Instrument,用同一账号监控全量同步和增量同步分别在首次加载架构时的 App 内存峰值。

    内存峰值测试结果

    分析

    随着架构的节点增多,全量同步方案的内存峰值会一直攀升,在极限情况下,会出现内存不足应用程序 crash 的情况(实际测试中,30w 节点下,iPhone 6 全量同步方案必 crash)。而增量同步方案中,总节点的多少并不会影响内存峰值,仅仅会增加同步分片的次数。

    优化后,在腾讯域下,增量同步方案的 App 总内存使用仅为全量同步方案的 53.1%,且企业越大优化效果越明显。并且不论架构的总节点数有多少,增量同步方案都能将完整架构同步下来,达到了预期的效果。

    流量使用

    测试方法:在管理端对成员做增加操作五次,通过日志分析客户端消耗流量,取其平均值。日志会打印出请求的 header 和 body 大小并估算出流量使用值。

    测试结果

    分析

    增加成员操作,针对增量同步方案仅仅会新拉单个成员的信息,所以无论架构里有多少人,流量消耗都是相近的。同样的操作针对全量同步方案,每次请求变更,服务端都会下发全量 hash 列表,企业越大消耗的流量越多。可以看到,当企业的节点数达到 20w 级别时,全量同步方案的流量消耗是增量同步方案的近 500 倍。

    优化后,在腾讯域下,每次增量同步流量消耗仅为全量同步方案的 0.4%,且企业越大优化效果越明显。

    写在最后

    增量同步方案从方案上避免了架构同步不及时以及流量消耗过大的问题。通过用户反馈和数据分析,增量架构同步上线后运行稳定,达到了理想的优化效果。


    展开全文
  • 赢力系统企业管理实战咨询班培训教材之 企业组织系统设计 培训目的与要求 了解什么是组织结构 组织结构是如何设计的,理解组织 结构设计的原理 掌握组织设计的标准常见的结构 类型,并能看懂组织结构图和进行 一般的...
  • 企业架构培训感悟

    千次阅读 热门讨论 2021-01-06 22:23:59
    二、为什么企业架构那么重要? 作为软件开发工程师,我们总是习惯于努力尽责的把分配给我们的开发任务按时按质完成,再有业务导向一点的开发会在受理需求前会先向业务了解清楚具体的需求背景及想解决的业务问题,这...

    一、前言

    很多企业希望能够做数字化转型,但是一到具体启动做的时候又觉得两眼一抹黑,不知道如何下手。这次培训向我们阐述了如何可以通过TOGAF这种方法论把战略进行落地。

     

    二、为什么企业架构那么重要?

    作为软件开发工程师,我们总是习惯于努力尽责的把分配给我们的开发任务按时按质完成,再有业务导向一点的开发会在受理需求前会先向业务了解清楚具体的需求背景及想解决的业务问题,这已经很不容易了。

    因此,为什么需要去解决这个业务问题?背后跟企业的业务战略有什么关系?或者说企业的业务战略是如何一层层的对应上我们日常的开发工作呢?作为一个合格的架构师,无论是业务架构、技术架构或应用架构,这都是必须得知道的基本事实。我的理解是TOGAF就是那个把企业的战略有效略映射到IT系统层面的那个方法。它的内涵是强调IT与业务对齐,通过建立企业架构将战略规划落地,保证架构的规划是以业务为驱动和主导,架构落地后能够实现业务目标;这跟我们的目标管理是同一原理的,就是通过自顶而下的进行目标的分解,而只有从上到下的分解才能保证IT的动作能够跟业务目标紧紧对应上的。

    TOGAF9.2作为企业架构的标准,它包含了以下四种架构(具体如下图),其中我这里想要稍微讨论一下我对业务架构(BA)和应用架构(AA)的一些理解。

    1、业务架构(Business Architect)

    2、数据架构(Data Architect)

    3、应用架构(Application Architect)

    4、技术架构(Technology Architect)

     

    三、业务架构(BA)

    首先,业务架构在TOGAF方法论上是上承业务战略下接技术的一个中间关键环节,它明确定义了企业的治理结构、业务能力、业务流程及业务数据。其中,业务能力定义了企业做什么,业务流程定义了企业怎么做。

    在明确业务能力的这个范畴内,业务架构师需要通过政策研究、高层访谈及同业调研等手段确定我们要做推行这个业务战略的驱动因素及业务目标,即是企业要做什么来达到这个业务战略。接着,业务流程则明确了针对流程中每个部门的定位及职责、具体业务规则、业务数据流向等维度的信息。既然企业架构是企业对市场信息认知的体现,那么业务架构(BA)就是实现或者实施这个体现的一个具体方法论。

    为什么我会这么说?举个例子,在企业刚开始那几年,企业首要做的是生存下来,然后会出现什么状况?所有系统的建设都是基于急用先行而进行建设的,就妄论系统间的数据共享或功能复用之类的高阶需求了,因此导致烟囱林立,这也是我们目前的现状。但是随着新烟囱的增加和旧烟囱的进一步巩固,需求交付会随着功能复杂度增加和跨团队沟通成本提高而呈现下降趋势,这个时候会出现慢慢跟不上业务节奏的现象。这个时候,可能业务功能(或者叫业务战略)大体还是没变的,但是随着规模的扩大,可能原有的业务流程已经不适应了,这个时候就是业务架构(BA)要开始发挥能力的时候了。这个时候,它需要根据企业实际的情况(如组织架构的变动、流程变动)重新定义或调整新的业务流程以便更好的适应或者支持业务。

    例如,本人所负责的几个业务条线在这几年陆陆续续在往导流方向发展,每个业务条线的业务流程都是基本差不多,更多不同点可能就是需要收集的信息不一致,或者渠道展示风格不一致。研发侧也会发现实际上大体流程是可以复用的,因此觉得可以共建,但是业务侧也会有自己的想法(例如资源专属、风格各异等),这本身没错的毕竟每个业务条线也背各自的KPI,那肯定按自己业务构想去做是最安全的,就算指标达不到也认命了(自己挖的坑自己哭着也认了)。但是这个怎么解决资源复用和资源专属的冲突呢?就没有办法吗?按照业务架构(BA)的方法,应该是从业务流程层面定义清楚如何把这三个业务条线进行求同存异或者如何分段管理,并跟领导层沟通并得到充分理解与认同。一旦有了这个新调整的业务流程,研发侧在系统开发时候才能更加有迹(原则)可循,从而研发效率才能得到提升,基于复用最大化为目标的中台化才能更加顺利的落地。

     

    四、应用架构(AA)

    首先,正如温老师所说的,这里的应用架构指的不是应用系统的架构,而是一组应用系统及其相互关系的描述,它是用于定义为了支持某类业务所需要使用到的系统,相对来说比我们平时的系统架构要宏观一点,因为它不关注单个应用系统的内部实现。

    还记得应用架构设计的流程吗?

    首先,应用架构需要从业务架构蓝图中的业务功能及流程圈定具体的业务需求。我这里稍微展开一下。作为应用架构,我觉得从业务本质出发是很有必要的。首先什么是架构?架构的目的就是解决利益相关者的关注点,以下左图取自于《软件系统架构:使用视点和视角与利益相关者合作》,我尝试使用脑图(即右图)进行分解。每个系统实际上是为了满足利益相关方的一系列需求,具体方式是通过系统架构里面的一系列元素,诸如那些-ability、业务功能点及其相互关系所呈现的一堆架构视野(viewpoint)去分别对应的满足利益相关方的每一个关注点。再回到应用架构这个范畴,业务蓝图实际上就是企业的整体战略,也即整体需求,因此从业务蓝图中圈定范围也是必然的,因为从这里开始才能保证所有干系人的需求得到满足。

     

    接着,应用架构需要根据业务功能及流程进行分析所需要提供什么系统;实际上,这里告诉我们的是需要什么系统承载什么功能,但是尺寸在系统级别而非服务级别。

    然后,根据某种方法论把所有的功能进行归类并分配指定到相应系统中;这里要表达的是结合业务的领域驱动设计(DDD)的方法论,针对同一类型的业务要进行归并处理,做成服务层高内聚低耦合。

    最后,针对每个系统制定系统间的交互方式,划分服务粒度等。这里的就是系统架构的范畴,因为它涉及到系统服务间的粒度划分及对应的技术实现细节。

    从上面可以 ,这俨然就是指导业务中台建设的方法论。为什么我会这样说?可以拿所负责的某些系统作为例子,以前做系统的时候我们采取的是急用先行的策略先开发了一堆系统,但是在发展到一定规模的时候,业务觉得要精细化和规范化管理了,因此我们要准备上统一客户管理系统了;整个公司各个系统的功能有一定程度的重叠和交叉,内部协调成了大问题。整个过程我们就像在打局部信息化战争一样,头痛医头脚痛医脚,需要解决什么样的问题,就上什么样的系统,最终就形成了所谓烟囱式的系统架构,这又导致整个架构重复造轮子,跨系统管理也给运营人员造成了不必要的时间精力浪费。

    我的理解是中台严格意义上就是一种业务战略,大家再细品一下是不是这样的道理。首先,企业架构是企业对市场信息认知的体现,那中台就是企业在不断发展的过程中,随着对市场信息的认知不断加深,为了保证其企业在不断变化的过程中具备这种快速响应的能力,唯有通过在其纷繁各异的业务流程中寻找共同点并作为最佳实践的方式固化在所谓的业务系统中,这便是中台的价值所在,也是中台存在的第一性原理。

     

    五、后话

    经过这一天的企业架构培训,确实掀开了我对企业架构的一个初步认识,但是如何进一步结合现在的业务和系统现状,然后通过TOGAF方法论进一步细化业务架构(BA)和应用架构(AA)确实一个比较高阶的工作,暂时确实只是略懂皮毛,后面可能更多的需要在日常工作中进行实践,同步看看行业的一些最佳实践。

    展开全文
  • 企业架构的重要性

    千次阅读 2019-08-07 11:04:12
    很多时候,在一些IT咨询/治理或SOA集成项目中,相信大家一定听过企业架构,这是一个出现频率较高且都会在项目中重点强调的词语。事实上,若想真正的发挥信息化价值,使信息化可以支撑并顺延企业后续的发展,在项目...

    很多时候,在一些IT咨询/治理或SOA集成项目中,相信大家一定听过企业架构,这是一个出现频率较高且都会在项目中重点强调的词语。事实上,若想真正的发挥信息化价值,使信息化可以支撑并顺延企业后续的发展,在项目进行前,是必须要规划出企业架构的。
    讲到这里,有人会问:“我建设IT信息化的目的是解决当前问题,直接开始就好了,为什么要花费金钱和时间规划企业架构?”对于该类疑问,我的回答是:企业架构是一定要做的!虽然构建一些简单的信息化系统,或做几个系统间简单的集成来解决当前业务问题是不会出现大偏差的。但请试想一下,如果是一个复杂的信息系统构建或大型集成项目,涉及到几十个信息化系统,其中包括通用和专用系统,同时存在多层业务管理关系、多道流程工序时,如果没有事先规划梳理好彼此之间的业务流程、资源复用、IT技术等就直接操作,百分之九十的结果是项目延期或做成烂尾。
    这时必须要规划出一个清晰的企业架构,才能保证业务流程相互运转、信息化系统合理支撑、构建步骤有条不紊。可以说,企业架构是IT决策的重要依据,是支撑企业后续发展的重要基石。

    企业架构概念

    企业架构(Enterprise Architecture),简称EA。是指对企业事业信息管理系统中具有体系的、普遍性的问题而提供的通用解决方案,更确切的说,是基于业务导向和驱动的架构来理解、分析、设计、构建、集成、扩展、运行和管理信息系统。复杂系统集成的关键,是基于架构(或体系)的集成,而不是基于部件(或组件)的集成,有效的企业架构对企业的生存和成功具有决定性的作用,是企业通过IT获得竞争优势不可缺少的手段。

    企业架构构成

    企业架构可以分为两大部分即业务架构和IT架构。
    业务架构:是把企业的业务战略转化为日常运作的渠道,业务战略决定业务架构,它包括业务的运营模式、流程体系、组织结构、地域分布等内容。
    IT架构:指导IT投资和设计决策的IT框架,是建立企业信息系统的综合蓝图,包括数据架构、应用架构和技术架构三部分。

    1 业务架构

    业务架构相当于企业的运营模式,一个公司要发展,一定会有自己的商业目标和运营模式,而这些就是企业的业务层面,可以说企业的业务架构是在市场上区分与其它企业的关键,通常包含运营模式、组织机构、业务流程、地域分布等
    运营模式:简单来说,运营模式就是企业通过何种方法进行盈利的,即使在同行业范围内,每个企业的运营模式也大不相同,因为运营模式通常是根据企业的战略、目标、优势、发展方向等因素孕育而生的。运营模式一般分为:行政管理、资金管理、技术、生产、销售五个层面,每个企业都会对以下层面进行特殊的设计。

    组织机构:组织机构是企业的运筹体系,包括企业的部门、岗位、职责,当企业的战略发生变化,组织机构也会相应的调整变动。
    业务流程:这里的业务流程不是指针对企业的某个关键业务的一种描述,而是企业整体运转上的大流程,体现在整体资源的梳理、组织机构的分配、管理制度的优化,对业务运营存在着指导意义。
    地域分布:地域分布主要确定业务活动在什么地域执行,地域分布对运营模式的规划、组织机构的划分、业务流程的设计起着关键作用。

    2 IT架构

    企业架构中的IT架构是构建企业IT信息化系统的基础,它能够有效指导IT信息化项目的开展和执行,IT架构又分为数据架构、应用架构、技术架构。

    2.1 数据架构

    数据架构是企业IT架构的核心,众所周知,数据是对客观事物的真实表现,具有权威性和价值性,企业信息系统下的运营状况都是通过数据反映出来的,数据可以作为企业的重要资源,因此在考虑IT架构建设前首先需要考虑数据架构对当前业务的支持,即企业需要哪些重要数据、企业数据如何治理规划、如何实现重要数据的运用。之后,根据上述几点进行数据架构规划,数据架构规划主要包括数据模型、数据分布、数据治理三个方面

    数据模型
    良好的数据模型可以反映出业务模式的本质,确保为业务需求提供全面、一致、完整的高质量数据,且为划分应用系统边界、明确数据引用关系、定义应用系统间的集成接口提供分析数据。然而数据模型不只是与应用架构关联,同样对业务架构提供生命周期治理和管控,在业务架构中的数据模型分析重点是主数据和核心业务对象,而应用架构中的数据模型则进一步转换到逻辑模型和物理模型,直到最终的数据存储和分布。
    数据分布
    数据分布包括业务分布和应用分布,数据分布一方面主要是分析数据在业务各环节的增删改及引用的关系,另一方面是分析数据在单一/多个系统中的数据结构与应用系统各功能模块间的引用关系。
    数据治理
    数据治理包括元数据管理,数据质量管理、数据标准规范、数据字典、数据安全、数据采集、同步、分发等内容,即主数据管理内容。数据的治理在整个数据架构中起着非常重要的作用,高质量的数据是数据架构的重要支撑,同时也是企业后续梳理业务流程建设的前提。

    2.2 应用架构

    应用架构向上承接了企业战略发展方向和业务模式,向下规划和指导企业各个IT系统的定位和功能。应用架构是业务架构、数据架构、技术架构、信息安全及IT管理等方面综合的体现,它包括了企业的应用架构蓝图、架构标准/原则、系统的边界和定义、系统间的关联关系等方面的内容。

    在构建应用架构时,满足当下需求的同时,需要进行长远的规划,即符合企业未来的发展方向,并能根据业务进行扩展。
    灵活性
    体现在应用系统之间的连接是否灵活、简单、松耦合。激烈的竞争和产业变革,需要企业不断调整其组织、流程和商业模式,以获得竞争优势。这时,应用架构要可以适应企业业务的变化,快速做出响应,提供稳定可扩展的应用支撑平台,为企业的业务发展、随需应变提供重要的支撑,同时能保证部分应用功能的升级或替换不会影响到其它应用系统,实现平滑升级。
    整合性
    整合性部分常见的整合包括数据集成、应用整合、流程整合、门户集成等。
    1. 数据集成
    数据集成主要针对企业信息系统底层的数据同步性、时效性问题,解决数据来源的唯一性、真实性、实时性,一般通过消息队列技术或者Web服务等,将散布在企业各个系统中的数据,以一种松散耦合、集中呈现的方式进行统一管理,促进数据在企业范围内互联互通。
    2. 应用整合
    应用整合主要针对企业业务变化适应性和信息孤岛问题,通过对系统功能的服务化编排,实现快速调整的弹性应用。应用整合提供面向服务所需的软件基础设施环境,为分散服务提供了交互、组合和治理的基础架构,集成企业内部各个IT应用系统,并使之互相协同工作,形成一个更大的整体系统。要求不只是实现系统间的技术集成整合,还要实现业务之间的有机整合。
    3. 流程整合
    流程整合通常也称之为流程集成,主要针对企业业务逻辑在多个信息系统之间流转的问题,具体体现为跨异构系统的流程集成,以业务流程为中心,实现帮助企业各业务环节与客户需求对齐的管理方法,有效整合人力、信息等资源,实现跨系统、跨部门、跨组织的企业运营,支撑企业实现业务的“纵向贯通”与“横向集成”,帮助企业实现从战略到运营端对端的跟踪、反馈与优化。
    4. 门户集成
    门户集成主要针对企业交互访问层集成问题,把企业内部原有的零散系统中的信息、应用、服务通过统一认证、页面集成、菜单集成、数据门户等技术整合在统一的访问平台,提供企业范围内的统一授权和身份认证,基于单点登录、个性化配置方式,为企业IT架构提供一个标准的、可扩展的Web 应用基础框架。平台支持多端登录,即PC门户、移动门户,移动门户同样提供统一身份认证、单点登录、信息/页面/应用集成等功能,通过移动门户可以访问PC端系统大部分功能,用于满足出差在外流程审批,办公不受时间地点限制。
    复用性
    随着企业信息系统越来越多,在构建企业架构面前必将精减或新增一些信息化系统,过程中不可避免会替换甚至是除掉一些平台或功能相似的系统,如果每次都要推到重来,在时间和成本上是不可控的,所以复用IT资产在构建应用架构时,也是重点规划的一部分内容。

    2.3 技术架构

    技术架构是支撑应用架构与数据架构的技术基础结构,主要由IT技术、组件、相应技术标准构成,具体包括:安全管理、应用软件、应用平台、物理环境、系统管理。

    安全管理:安全管理是指应用软件、应用平台、物理环境各层面的安全管理架构、安全配置模型、安全管理工具以及安全管理标准等。
    应用软件:应用软件是指应用系统或工具,包括业务应用和支撑应用,业务应用一般分为通用管理软件、套装管理软件、行业管理软件,如CRM、ERP、MES等,支撑应用为基础软件工具,如:Office办公。
    应用平台:应用平台是支撑应用软件运行的操作平台,包括系统服务和操作系统。系统服务是搭建在操作系统之上的各种服务引擎,如:Web Server、APP Server、DB Server等,操作系统是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,常见的操作系统为Unix(AIX、HP—UX、Solaris)、Linux、Windows Server等。
    物理环境:物理环境是支撑数据和信息的采集和进入、处理和传送,以及应用软件与应用平台运行的物理设施架构、模型和标准等,包括系统硬件与网络设施。
    系统管理:系统管理是贯穿应用软件、应用平台、物理环境各层面的系统管理架构、系统管理模型、系统管理工具以及系统管理标准等。

    忽略企业架构的原因

    很多企业在建设IT信息化的时候,一般都会忽略或刻意提及企业架构的规划,殊不知,从那刻起已经埋下了隐患,一旦系统过多,隐患立即显露,造成这种现象的原因有很多,具体表现在两个时间节点中。

    1 系统建设初期

    很多企业在系统建设初期,往往都是根据现有业务需求去构建相应的信息化系统,极少数甚至没有企业在建设初期会统筹的考虑企业的整体架构。后续,随着企业业务需求不断增多,对信息化系统的需求也随之增多,无规划的构建系统,只能导致信息孤岛产生。本是为了优化业务而上的信息化系统,反而造成了IT与业务的脱节。

    2 系统整合时期

    一般企业进行系统整合,多半是消除信息孤岛及优化业务流程,系统整合期间是构建企业架构的第二最佳时间,因为在系统整合时,根据企业特定的企业架构不仅可以对企业业务流程、内部数据、应用功能进行统一治理集成,还可以为企业后续信息化建设搭建平台,奠定基础,对于后续业务扩展变化,提供快速响应。即便这样,也有很多企业忽略企业架构的建设,没有站在整体上业务上和系统现状上进行规划,这样做的结果就是集成顺序与先前条件不符,导致集成失败或效果不明显。
    那么企业在信息化建设初期为什么不进行企业架构规划呢?分析原因如下:
    1. 企业建设初期规模相对较小,资金能力不足,对于花费过多资金规划企业架构是奢侈的。
    2. 企业整体对信息化意识薄弱,认为信息化只是辅助业务的工具,没有必要与业务、文化、架构等联系起来。
    3. 企业领导对企业架构意识模糊,不了解企业架构的重要性,或对企业未来发展没有明确的定位及目标。
    4. 忽略集成整合项目的前提条件,如集成的顺序、信息化状况、业务相互关系等,认为不需要架构梳理规划,直接整合即可。

    企业架构的重要性

    通过上文中对企业架构的深层次理解及未及时建设企业信息化所带来的问题之后,也许很多人还是没有清楚的了解企业架构究竟能为企业带来什么,企业架构到底有多重要,下面就来具体谈谈企业架构对企业的重要性。
    1. 支撑业务发展,保证IT投资的正确性
    有效的企业架构对企业生存和成功至关重要,它为企业IT系统演进提供了战略指导和分析,是企业能够应对不断变化的业务环境,同时按照企业架构中的规划进行IT信息化建设,可以有效分清IT项目的优先级,然后根据优先级制定IT投资战略。
    2. 节省企业成本,减少IT资源复用情况
    企业架构在规划IT建设的同时,会兼顾企业的组织角色和业务流程的关系,可以平衡IT资源与业务间的依赖关系,识别出部门间重复的业务需求和数据重复利用率,从根本上有效避免业务级、功能级、数据级的重复投资。
    3. 有效推动创新,使企业业务更好发展
    企业架构能够平衡IT效率与业务创新之间的关系,支持企业业务的创新,使各业务单元的业务流程与信息保持高一致性。同时,可以保证组织的全面IT战略需要,实现企业范围内最紧密的协作。
    当下,企业架构的建设还未使绝大多数企业引起足够的重视,保持业务与IT信息化对齐仍是当今时代所有组织面临的一项基本挑战,而构建企业架构是应对这项挑战的最佳途径,无论是公有还是私营,无论是企业单位还是事业单位,都会按照自身的业务特性去构建信息化建设,随着业务增长,一定会追加在信息化建设方面的投资,至于投资是否可以有效换来收益,很大程度上是取决于是否具有完整的、适合企业自身业务发展的架构规划。企业架构提供全业务视角的企业治理体系,保障业务、战略保持一致,促进数据架构、应用架构、技术架构等IT架构建设,保障企业信息化的合理稳步建设,帮助企业实现使用更低的IT成本、更快的设计与开发,降低IT风险的同时获取更高的收益。

    展开全文
  • 李彦宏表示,这次组织架构的升级,有利于加速 TG 中台战略实施过程中积累的底层技术能力向云输入,更有利于加速 AIG 的 AI 能力的商业化,让技术更直接更有效率地在云平台上支撑业务。 可见,在人工智能正在走向应用...

    点击上方“朱小厮的博客”,选择“设为星标”

    后台回复”1024“获取公众号专属1024GB资料

    作者丨晓乐

    来源丨AI早餐汇(ID:AImorningshow)

    本文由21CTO晓乐综合央广网、雷锋网、36氪等报道而成

    2019年,PC互联网用户规模持续减少,虽降速放缓,但人口红利不断流失已是不争的事实,2019年9月用户规模达5.92亿,同比减少1.5%。用户以男性用户为主(52.6%),30岁以上用户增多,本专科用户为主心骨,用户城市下沉趋势依旧。时长红利也消失殆尽,2019年6月人均上网时长已不足1.5小时,同比减少6.3%,寻找行业出口及应用场景已是关键。

    2019年移动互联网月独立设备数逼近14亿台,但增速明显放缓,同比增加6.7%。男性与女性网民规模均有所上升,35岁以下用户是主要群体。人均单日上网时长达3.6小时,取得新高,但增速放缓(同比+11.7%),占有用户时间的天花板逐渐显露,行业迈进厮杀更为激烈的局面。

    可以看到,以中国网民的数量趋向饱和为基础,流量红利时代即将结束,增量市场转变为存量市场,而企业的生存发展也遇到诸多难题。

    下沉市场变成所有互联网企业的必争之地。若问下沉市场将带来怎样的商机?阿里巴巴整个财年超过1亿的新增用户有77%来自于三线及以下城市。依靠下沉市场快速登陆资本市场的拼多多过去一年股价涨幅达到103.98%,市值一举超过百度和京东。瞄向下沉市场是一场危机下的狂欢,如今成了流量红利消失后的增长机会。

    从另一侧来看,在国内移动互联网全面普及的大背景下,互联网正在以前所未有的程度从线上世界融入到社会行业发展的多个层面,并且推动了 5G、大数据、人工智能、区块链等技术的进一步发展。在这样的大拐点中,以 BAT为代表,身处其中的中国互联网企业也在以各自不同的方式积极寻求改变。 

    在之前,互联网或软件企业对技术的看法不一,它看不见摸不着,但有用,有多大?有运营的因素,也有其它因素,似乎技术很有用。在互联网生活中,远程视频,交流互动,共享图片,结识新朋友,做生意等,都是由全球千万计的工程师(开发者,决策者,组织,个人等)不断贡献,提出新想法,开发出创新服务。

    也正缘由于此,中国的IT互联网出现了一些共同点:包括 BAT,TMD 等大小巨头在内,这些代表性中国互联网企业在架构调整和人事变动中均竖起了技术之旗帜。

    腾讯技术委员会成立


    2019年,腾讯技术委员会正式宣布成立。这距离18年9月30日,腾讯宣告拉开产业互联网的大幕,转战互联网下半场已经过去了100多天。

    技术委员会的成立是腾讯的表决心,也是向外界释放的一个巨大讯号:过去一个季度,腾讯的组织架构调整已有了阶段性成果。互联网的下半场,腾讯希望用技术说话。

    据悉,腾讯技术委员会由腾讯高级执行副总裁、技术工程事业群总裁卢山和腾讯高级执行副总裁、云与智慧产业事业群总裁汤道生两名腾讯总办成员牵头,几大事业群的技术负责人悉数进入技术委员会的决策圈。技术委员会同时下设「开源协同」和「自研上云」项目组,发力内部代码的开源和协同,并推动业务在云上全面整合。

    技术委员会的成立意味着腾讯的“技术中台”初露端倪,人们开始对这次组织变革有了新的想象空间。不过探索与建设仍需耐心,同时也面临诸多挑战:技术委员会能否打破腾讯现有的各事业群之间技术封闭的僵局?它如何让腾讯重拾技术信念?整合的阵痛会不会给推进带来阻力?

    想要通过技术委员会来重新激活组织,20岁的腾讯恐怕还要回答这些问题。

    调整阵痛期后的方案落地

    2018年9月,腾讯启动战略升级,时隔6年后对组织架构进行变革,新成立了云与智慧产业事业群(CSIG)和平台与内容事业群(PCG)。

    这也是腾讯在2005年升级为BU(Business Unit)事业部制、2012年升级为 BG(Business Group)事业群制后,第三次主动战略升级。“成立技术委员会”、”内部分布式开源协同“、“打造具有腾讯特色的技术中台”等话语,也首次出现在官方公告内。

    其实开源对腾讯来说并不陌生。早在2011年,腾讯便在内部提倡以公共组件的形式共享和复用代码,并于次年发布了第一个对外开源项目。

    对于腾讯这家公司而言,所谓开源,本质上就是需要建立一个统一的技术中台,避免重复造轮子。

    但过去几年,腾讯开源做的并不足够彻底,主要受制于腾讯过去的组织结构。如果研究腾讯的发展历史不难发现,腾讯现有的公司结构大体来自2011-2012年前后公司的那次变革,当时云计算、大数据、AI技术都尚不成熟,组织变革主要为了应对移动互联网时代的到来。事实上,上一次变革也确实帮助腾讯很好的实现了从PC到移动时代的过渡。

    腾讯创始人张志东曾在腾讯学院演讲中表示,对腾讯而言,原有的生产模式好处是能以部门或产品组为单位,完成自主立项,快速试验,这种组织方法有其边界简明和利于快速尝试的优点。

    “但今天这个时代下,因为数据中台建设的缺课蛮多,除了在技术上会造成许多重复发明轮子的现象,在大数据的应用上,还会带来很重的数据墙和组织墙的问题。”

    这种结构性的矛盾也是腾讯的核心管理团队痛定思痛,产生变革决心的来源之一。在腾讯20周年内部分享上,关于开源协同的问题,卢山曾进行过深入讨论:“有了开源,我们能更好地了解彼此,团队之间也能更客观地评价,最终通过协同形成信任。希望五年以后项目、技术、研发同事都能很方便地在腾讯的‘技术地图’上自由选择要用的技术。”

    区别于对外开源采取的“自下而上”的推进节奏,技术委员会的成立意味着腾讯希望以“自上而下”的方式,强力推动内部开源协同的步伐,从而减少代码的重复开发,提升项目推进效率。

    截至2019年1月,腾讯正式发布的对外开源项目共计69个,开源项目累计在GitHub获得了19万Star数。诸如腾讯云T stack、蓝鲸智云BlueKing CMDB、微信开源系列(如WeUI)、TARS等,都是腾讯开源的模范案例。

    如果说2018年9月30日的架构调整彰显了云业务在腾讯未来战略发展中的重要地位,这次技术委员会的成立,也能看出腾讯在推动内部研发工作在云端深度整合、加速云上配置的一体化。

    针对云业务,汤道生曾在内部分享时提及,腾讯团队这几年不断去完善CDN、网络和虚拟管理的能力,都是锻炼技术的过程。只有敢于把这些工具、能力都放上云,都对外开放,才能够验证自己在行业里是否处于领先水平。

    毋庸置疑,这是一个巨大的挑战,在业内也几乎没有先例可循。

    补足中台缺失 迎来产品技术双驱动

    一直以来腾讯内部都有一种声音,认为公司的资源和研发力量存在分散浪费的情况。以AI研发为例,相比阿里和百度,腾讯的AI技术落地都在贴合场景需求推进,而不是先投入大量资源研发前沿技术再找落地场景,可谓非常接地气。但这也导致腾讯此前的AI研究院布局分散,几乎每条业务线都有自己的AI研发团队,比如微信就有自己的AI team,此外腾讯内部还有优图实验室和AI Lab。

    拆墙和融合,无疑将是腾讯技术委员会接下来要攻克的重点。但看起来,它面临的挑战还不止于此。

    腾讯自张志东后再无CTO,此次技术委员会的成立,虽有卢山和汤道生牵头,各技术事业群负责人群策群力,但是否真能补足腾讯在技术上的缺口并重振信心还尚未可知。

    一个积极的变化是,从企业文化层面考虑,腾讯技术委员或许能让腾讯的工程师文化再度发扬光大。

    针对这种变化,卢山就曾对内表示,希望今后的新员工会觉得,在腾讯做开发是很幸福的东西,能学到很多东西,能看到很多优秀的代码。“人们不仅谈论硅谷文化,也谈论我们中国开发人员的代码文化。”

    而在公有云上开发,也同样对腾讯员工的职业生涯意义深远:“我们希望员工在腾讯这几年所学习的技能同样在外面有用的,而不是只在腾讯有用。”汤道生说。

    技术委员会这样的考虑,是因在腾讯内部,工程师文化依然是主流,鼓励用代码、用技术说话——“talk is cheap, show me the code。”卢山曾提出要建立技术社区,给技术人员每人发十个别人的代码,让大家在“互喷”中进步。

    小米:技术事关生死存亡

    与腾讯相比,小米对自家技术委员会的定位颇有相通之处,但也有不同之处。

    小米成立技术委员会的时间是 2019 年 2 月 26 日。当时正值小米新一轮架构调整,此前担任小米首席架构师、小米人工智能与云平台副总裁的崔宝秋被任命为小米集团副总裁、集团技术委员会主席。

    对此,雷军表示,小米要继续强化技术立业,因为技术事关小米生死存亡,是小米持续发展最重要的动力和引擎;而崔宝秋的使命是要进一步强化技术文化和工程师文化,着力提升小米的技术方向决策,以及在技术人才招聘等方面加大力度,并探索未来技术趋势。 

    从这次任命以及后来 4 月份的具体人事任命来看,小米技术委员会不仅要承担技术研究、方向把握和技术合作的角色,也要负责小米整体的技术文化、技术角色和技术人才培养。

    关于自身小米技术委员会的角色变化,崔宝秋曾经在 CCF-GAIR 2019 上接受采访时表示:

    自己之前就负责小米的 ABC(AI、Big Data 和 Cloud)三块,现在是负责整个集团层面的所有技术,包括硬件、软件和互联网服务,也包括设计;核心的东西(比如说技术路线、技术演进、技术储备等)其实没有变化,区别在于之前更多是横向推动,而如今是从上往下推,推动起来更加方便了。 

    当然,在小米集团技术委员会之下,崔宝秋还要掌管小米的设计委员会和隐私委员会。除此之外,崔宝秋还要负责小米的对外技术合作(比如说跟武汉大学、哈尔滨工业大学的合作)和工程师文化的打造,当然,这也是崔宝秋在此前的任职中一直在做的事情,他在接受雷锋网采访时表示,自己一直在小米内部推动类似于硅谷创业公司的工程师文化,包括崇尚开源等。

    2019 年 11 月 19 日,在小米开发者大会上,崔宝秋作为小米集团技术委员会主席进行了《携手探索技术未来》的演讲,而小米的核心技术也由此第一次整体亮相。

    在现场,崔宝秋介绍了诸多小米核心技术,涵盖智能手机、Auto ML、小米移动端深度学习框架 MACE、NLP、Pegasus 和小爱同学 3.0 等,并总结出了 IoT 到 AIoT 的三大质变因素,可以说是 “小米技术大阅兵”。

    值得关注的是,这次大会上,国际语音识别和AI领域的知名专家、语音识别开源工具 Kaldi之父丹尼尔·波维Daniel Povey在加盟小米集团后首度亮相。

    丹尼尔·波维Daniel Povey表示,他之所以愿意远涉重洋来到中国工作,其中一个特别重要的原因就是以小米为代表的中国互联网公司纯粹、极致的开源文化,以及开放、共享的理念。业内人士分析,中国互联网企业近年来在人工智能取得的巨大成就,也是吸引相关领域的全球优秀科学家的主要原因。

    小米宣布启动“手机+AIoT”双引擎战略,提出未来5年将在AIoT领域投入100亿元,本次大会不仅吸引了AI、大数据、云计算、电商和智能硬件的开发者,还吸引了地产、酒店、家电等多个万亿级产业的众多代表们,他们都希望分享小米对AIoT产业发展的洞见。

    将AIoT列为核心战略,也为小米的增长注入了强劲的动力。据小米第二季度财报披露,截至2019年6月30日,IoT平台已连接的智能设备(不包括智能手机及笔记本电脑)数量达到约1.96亿台,同比增长69.5%。

    此外,人工智能助理“小爱同学”的月活跃用户于2019年6月达到4990万人,同比增长88.3%。智能电视及小米盒子的月活跃用户于2019年6月达到了2260万人,同比增长53.8%。机构分析认为,整体看来小米的AIoT平台已经处于领先地位,未来5G+AIoT将会持续赋能,以建立更丰富更具活力的生态系统。

    百度第三任 CTO 王海峰的新使命

    作为 BAT 之一,百度在市值上已经被另外两家远远甩在身后,但在技术层面,百度依然有着不可小觑的地位。而纵观百度在 2019 年的诸多动态,最为引入注目的莫过于其第三任 CTO 的任命,担任这个角色的,是技术大牛王海峰。

    在学术层面,王海峰履历亮眼。他是自然语言处理领域最具影响力的国际学术组织 ACL 历史上首位出任过主席的华人,也是唯一来自中国大陆的 ACL 会士,获得获国家科技进步奖二等奖一项,是首届吴文俊人工智能杰出贡献奖唯一获奖人,享受国务院政府特殊津贴。

    值得一提的是,王海峰还曾经被提名为中国工程院院士的候选人。

    在职业生涯方面,王海峰于 2010 年 1 月加入百度,至今已经有近 10 年的百度职业生涯。他历任高级科学家、基础技术首席科学家、副总裁、高级副总裁;他先后为百度创建了自然语言处理部、互联网数据研发部、推荐引擎和个性化部、多媒体部、图片搜索部、语音技术部等;协助创建了百度深度学习研究院 IDL,创建了百度 AIG,后来在 2018 年底担任 AI 技术平台体系(AIG)和基础技术体系(TG)总负责人。

    可以说王海峰无论是技术实力还是在百度的职业生涯,都都完全够得上百度 CTO 对技术本身的极高要求了,尤其是在 AI 时代,这种优势更加明显。不过,王海峰作为百度 CTO 还有另外一个优势:他在百度已经任职近十年,在一步步成长过程中,不仅仅对百度的技术进展贡献有加,也深刻地了解百度的技术发展和产品发展体系,在技术管理层面也已经积累大量经验。 

    从几乎所有角度来看,王海峰就任百度 CTO 都是最佳选择。 

    百度之所以重新设立 CTO 的角色,按照李彦宏的说法,是为了为了进一步建设和巩固公司核心技术优势,坚定不移地推进产品和用户体验提升,释放技术红利,推动产业智能变革。而王海峰要承担的,不仅仅是百度技术核心竞争力的提升,同时还要技术面向应用的转化,同时还要负责团队人才的培养及梯队建设。 

    值得重点关注的是,在王海峰担任百度 CTO 几个月后,李彦宏宣布进一步升级 “云 + AI” 的战略,百度智能云与 CTO 高效融合,百度副总裁、百度智能云总经理尹世明带领 ACG(智能云事业群组)向百度 CTO 王海峰汇报。

    李彦宏表示,这次组织架构的升级,有利于加速 TG 中台战略实施过程中积累的底层技术能力向云输入,更有利于加速 AIG 的 AI 能力的商业化,让技术更直接更有效率地在云平台上支撑业务。

    可见,在人工智能正在走向应用落地的大背景下,百度是希望推进利用底层技术来赋能云计算业务,并由此推动云计算赋能 AI 走向落地——而在这一次的任命中,作为 CTO 的王海峰所要担任的职责更为重大,不仅统领了百度的总体技术进展,还要重点负责百度 AI 等技术能力的商业化落地战略。 

    可以说,从业务层面来看,王海峰已经成为百度内部仅次于李彦宏的二号人物,这也充分说明百度对技术的极端重视。

    京东技术转型终于有了掌舵者

    2019 年 11 月 19 日,在 JDD(京东全球科技探索者大会)上,京东宣布了整体向技术转型的战略,旗下京东零售、京东数字科技、京东物流三大子集团业务首次集中亮相,同时,京东明确对外阐释了 “以零售为基础的技术与服务企业” 的集团战略定位。

    就这一定位,媒体在对其进行解读时认为,京东在技术投入、人才引入、技术进展和重视程度上都颇有作为,但对于业务链条超级复杂、流量巨大的京东来说,仍然缺乏的其实是顶层的技术架构设计,也就是 CTO 这一角色的空缺——然而很快,京东就作出反应确立了整个京东技术体系的掌舵者角色。

    只不过,这个角色的实际 Title 不再是京东 CTO,而是京东集团技术委员会主席,由周伯文担任。

    作为京东集团技术委员会主席,周伯文首先是一个技术大牛。在加入京东之前,周伯文曾担任 IBM Research 人工智能基础研究院(AI Foundations)院长、IBM Watson Group 首席科学家、IBM 杰出工程师等职位。同时,周伯文曾获得多个 IBM 技术奖项,还曾获 IBM 杰出技术领导成就奖和 IBM 公司最高奖“Best of IBM”。在学术层面,周伯文的简历表也颇为瞩目——值得一提的是,2019 年 11 月 27 日,周伯文还入选了 IEEE 2020 年新晋 Fellow 名单。  

    2017 年 9 月 29日,周伯文加入京东,京东集团副总裁,主要负责 AI 研究与平台部相关业务,明确聚焦于 AI 算法的创新,并结合应用场景和成果为相关模块赋能;他向京东 CEO 刘强东直接汇报。

    此后两年间,周伯文为京东 AI 技术基础的发展作出了不少贡献。 

    比如说,在周伯文的带领下,京东打造人工智能开放平台 NeuHub,目前,NeuHub 开放平台已经联合内外部生态力量,携手生态伙伴共研发了 200 余款产品及应用;其中,科技部宣布依托京东集团建设智能供应链国家新一代人工智能开放创新平台,其背后就是以以京东人工智能开放平台 NeuHub 为载体的。另外在人才方面,周伯文为京东招聘了何晓冬、梅涛等几十位科学家,并组成了一支 400 人上下的人工智能团队。

    但在任命周伯文为技术委员会主席之前,京东集团其实已经做了一些准备工作。12 月 6 日,京东集团宣布立京东云与 AI 事业部,该事业部整合了原京东云、人工智能、IoT 三大事业部的架构与职责,由周伯文掌舵,而原有的京东云事业部总裁申元庆宣告出局——如此一来,周伯文全面掌握了京东 AI、云和 IoT 等基础技术部门。 

    按照京东方面的说法,周伯文在担任京东云与 AI 事业部负责人之后,将带领京东云、人工智能、IoT 团队聚焦战略、技术、产品、创新、场景化顶层设计和商业落地,将京东的前沿技术与实体经济相融合,致力于实现学术前沿化、技术商业化的目标。由此可见,周伯文不仅仅是负责京东底层技术的进展和学术推动,还要推动技术走向应用和商业化。

    然而,就在周伯文被任命为京东云与 AI 事业部负责人 4 天之后,他就在新一轮架构调整中被任命为京东集团技术委员会。按照官方的说法,京东集团技术委员会将致力于构建技术品牌,统筹打造技术文化,培养技术人才队伍,推进京东技术转型和技术服务战略的落地,同时对外技术合作与交流,并打造对外技术影响力。

    由此,京东在整体技术层面终于迎来了名义和实质上的掌舵者,从而为京东的技术转型战略打下了一个好的根基。 

    美团:中国互联网要转向用户需求和核心技术双轮驱动

    美团点评CEO王兴在数字中国建设峰会等主题演讲几次提到技术的重要性。王兴表示,中国互联网的发展要从从用户需求驱动转变到用户需求和核心技术双轮驱动,要大力发展核心技术。

    王兴表示,在数字中国的建设中,互联网企业一是要坚持经济效益和社会效益相统一,更好承担起社会责任和道德责任;二是要大力发展核心技术,中国互联网发展要从用户需求驱动,转变到用户需求和核心技术双轮驱动。

    技术的重要性。团购是典型的O2O,消费者线上交易,线下消费。但这个过程很不容易,你既要线上的产品技术研发强,又要线下的商务谈判推广强,这两种基因不太一样,得均衡好。有人认为团购完全是一个线下的事情,跟技术没关系,其实不是这样的。“千团大战”我们能够逐步胜出,跟IT系统的领先有很大很大的关系。

    “互联网、大数据、人工智能都是数字中国建设的加速器。”王兴说,中国互联网发展的上半场充分享受了新兴市场的红利,有最多的人口、最多的互联网用户、最多的智能手机用户,所以能有很快的发展;但到了下半场,要从用户需求驱动转向用户需求和核心技术双轮驱动。他介绍称,美团除了连接消费者端,也参与到餐厅的数字化、信息化、网络化和智能化的建设当中。他还称每天近2000万单的外卖智能调度系统、在无人配送方面的研发、以及天眼推出的餐厅市民评价和大数据系统等等,都是美团点评的关键技术支撑。

    此外,王兴还在现场分享了父辈创业精神对他的影响,他父亲创建的水泥厂曾经参与到家乡的公路建设,王兴称,与父辈用水泥浇筑高速公路相比,“我希望在今天这样一个新时代,我们这代人能够真正搭建起信息高速公路,建设数字中国,打造网络强国,共创美好生活。”

    阿里巴巴技术生态的一次代际传递

    在中国互联网企业中,阿里巴巴在技术层面的战略布局和人才补充能力,可以说是出类拔萃、独树一帜的,其技术中枢和掌舵者角色早在多年前就已经确立,并随着时间的推移一路强化。体现在 2019 年,阿里巴巴在技术层面不仅仅有了巨大的收获和荣耀,也有了进一步的架构调整和升级。

    2019 年 11 月 22 日,在中国工程院公布的 2019 年当选院士名单中,赫然出现了来自阿里巴巴(中国)有限公司的王坚——这在两院院士的入选单位中是第一次,而王坚也成为中国民企院士第一人。

    在很长的一段时间里,王坚一直以阿里巴巴技术掌舵者的形象出现。他在 2008 年加盟阿里巴巴集团担任首席架构师,直接向马云汇报;此后为了解决大算力瓶颈问题,他带领阿里巴巴技术团队从零建立云计算系统,这个系统被定名为——飞天,而飞天也是中国唯一自研的云操作系统,它也奠定了今天的阿里云的基础。

    王坚在 2012 年 8 月被任命为阿里巴巴集团 CTO;到了 2015 年 6 月,王坚被任命为阿里巴巴技术委员会主席——而 2019 年 11 月,王坚正式当选为中国工程院院士,这当然首先是王坚本人的荣耀,但同时也可以说是阿里巴巴在技术上的荣耀。

    不过,在王坚功成名就的同时,阿里巴巴在技术架构方面的进化并没有停止。

    2019 年 12 月 19 日,阿里巴巴和与之关联密切的蚂蚁金服同时发布了内部信,宣布了新一轮架构调整和人事变动;其中,这一轮架构调整的一个重要着力点在于技术体系的变革。

    比如说,张建锋在以往担任达摩院院长、阿里云智能事业群的基础之上,又被赋予阿里巴巴技术委员会主席的角色,从而领导阿里巴巴未来的技术总战略,达摩院的建设,以及致力于阿里云智能业务的进一步突破。从 CTO 到技术委员会主席,张建锋在继续高升的同时,也把阿里巴巴 CTO 的角色留了出来,由原蚂蚁金服 CTO 程立担任。

    据悉,程立是在 2005 年加入支付宝,是支付宝技术平台的奠基人之一,主持了支付宝各代技术架构的规划与基础技术平台的建设,设计并实施了支付宝一系列关键业务系统,他被被支付宝员工誉为 “神一样的存在” ;他长期担任蚂蚁金服 CTO 一职,在 2016 年 12 月的蚂蚁金服架构调整中,程立还兼任蚂蚁金服国际事业群 CTO,后来还曾经担任蚂蚁金服国际事业群 COO。

    显然,张建锋作为阿里巴巴技术掌门人的地位得到了进一步的巩固,同时也凸显了阿里云智能事业群在阿里巴巴集团的整体技术支撑地位——相比之下,此前担任阿里巴巴技术委员会主席的王坚已经有了功成身退的感觉。

    当然,以阿里巴巴的技术体系之庞大,张建锋一个人是忙不过来的;某种程度上,程立从蚂蚁金服调任阿里巴巴担任 CTO,并且担任阿里巴巴技术委员会副主席,正是为了辅佐张建锋——但此处需要注意的是,程立的直接汇报对象也是阿里巴巴 CEO 张勇,而非张建锋。

    另外,在蚂蚁金服方面,由于程立在阿里巴巴有了新角色,蚂蚁金服的 CTO 一职胡喜担任。据悉,在升职之前,胡喜担任蚂蚁金服副 CTO、副总裁和首席架构师,也是阿里巴巴的合伙人——这次的调整,胡喜也是成功转正了。

    可以看到,在这一次的架构调整中,阿里巴巴充分发挥了其在技术人才方面的替补优势,并且在战略上对技术进行了更高的强调。而蚂蚁金服本质上也是属于属于阿里巴巴生态体系的范畴,所以实际上这次调整也是整个阿里巴巴生态在技术层面发生的一次升级。 

    实际上,伴随着阿里巴巴技术委员会的实际担任角色从王坚到张建锋,阿里巴巴的整个技术体系也完成了代际传递。

    总结:中国互联网行业走向技术驱动时代

    即使移动互联网时代已经过去,BAT 也依然是中国互联网行业的风向标。 

    2018 年,BAT 都在各自的架构调整中朝向 B 端迈进了一步,由此成为整个中国互联网行业发展开始向产业层面深入拓展的一个注脚。

    到了 2019 年,BAT 则再次罕见一致地在技术架构层面实现了进一步的动向,也许它们的重心和形式各有不同,但无一不反映了技术本身在它们自身发展中得到了更高的定位。更何况,在 BAT 的周围,还有京东、小米等中国最具代表性的互联网企业,也一同确立了技术在自身企业发展中的独特地位。

    如果借用历史眼光和上帝视角来看待 2019 年,这一年必将会被视为中国互联网行业发展史上的一个标志性年份。经历了二十余年的野蛮生长和激流冲荡,这个行业终于定位到自身长远发展的核心支撑力——技术,并且开始在定位中调整,在调整中沉潜,在沉潜中蓄力。而这种力量,也是中国互联网企业面对未来内外挑战的关键所在。

    由此,站在 2020 年的窗口,我们真诚地为中国互联网行业祝福,并同样做好了见证一切的准备。

    想知道更多?描下面的二维码关注我

    【精彩推荐】

    朕已阅 

    展开全文
  • 阿里组织架构的”大中台+小前台

    千次阅读 2019-04-23 11:01:41
    2015年经过调整后阿里巴巴的组织架构不再是传统的树状结构,而变成了 网状结构 。同时,其不再采用具体的业务模块下分设事业部的方式,而是将之前细分的25个事业部打乱,根据具体业务将其中一些能够为业务线提供基础...
  • 在CIO委员会提出了FEAF与联邦企业架构实施指南后,美国白宫的管理与预算办公室(OMB)接下了管理和协调联邦企业架构建设的责任,并于2002年成立了专门从事联邦企业架构开发的企业架构项目管理办公室(FEA-PMO)。...
  • 经过几十年的发展业界已经涌现出了很多企业架构以及企业架构框架理论。企业架构创建的方法论,亦即企业架构框架,由于其具备标准化的特性,将被作为本章内容的重点。当然,即便企业架构框架具有其标准性的一面,也并...
  • 医院组织架构的重要性  一个机构的组织结构的形成,受组织内政治、经济以及历史等多种因素的影响。网络上流行着一张图片,戏说互联网巨头们的组织架构。虽然只是戏说,但可以看出不同的组织结构反映了不同的公司...
  • 介绍阿里巴巴在建设共享服务体系时如何进行技术框架选择,构建了哪些重要的技术平台等,此外,还介绍了组织架构和体制如何更好地支持共享服务体系的持续发展。 主要内容分为三大部分: 第一部分介绍阿里巴巴集团中...
  • 现状:随着各个政府部门建立符合各自特点的企业架构框架并逐步实现各自企业架构,例如财政部(DOT)的企业架构框架TEAF(Treasury Enterprise Architecture Framework),但是在当时这些企业架构的范围还是局限在...
  • 2019独角兽企业重金招聘Python工程师标准>>> ...
  • 企业架构(Enterprise Architecture),简称EA。是指对企业事业信息管理系统中具有体系的、普遍性的问题而提供的通用解决方案,更确切的说,是基于业务导向和驱动的架构来理解、分析、设计、构建、集成、扩展、运行...
  • 2019 年 1 月 4 日,腾讯宣布成立技术委员会,也代表之前宣布的架构调整...平时我们看技术大会上的分享大多高大上,亿级流量、超大型研发团队,虽然值得借鉴,但由于应用场景与研发资源的差异,一般企业并不容易落...
  • 企业微信初版的全量同步方案在快速的业务增长面前已经捉襟见肘,针对其遇到的问题,怎样做好组织架构同步优化?这是又一篇来自微信团队的技术实战。写在前面 企业微信在快速发展过程中,陆续有大企业加入使用,企业...
  • 联邦企业架构之FEA及参考模型

    千次阅读 2019-01-19 11:37:11
    在CIO委员会提出了FEAF与联邦企业架构实施指南后,美国白宫的管理与预算办公室(OMB)接下了管理和协调联邦企业架构建设的责任,并于2002年成立了专门从事联邦企业架构开发的企业架构项目管理办公室(FEA-PMO)。...
  • 中小型物流企业组织结构浅析,王义芳,李夏苗,中小物流企业是我国物流业的主体,寻求适合的组织结构对整个物流业的发展有着重要的意义和作用。本文分析了企业组织结构的模式:
  • 企业IT架构的发展历程

    万次阅读 多人点赞 2019-04-17 09:58:52
    提起IT架构每个人都不陌生,有人说IT架构企业架构中的一部分,与业务架构结合,为企业打造适合业务的IT信息化建设,也有人说IT架构是方法论,是一种为企业制定IT构建策略、标准、服务、产品、解决方案及对应IT厂商...
  • 企业数据架构建模

    2019-09-16 15:58:04
    不同于书本和培训课程中所提的单例模式,真正的企业具有非常复杂的数据架构。大多数数据将会存储于大型遗留或打包的系统中,数据结构的细节对于这些系统来说可能是不可见的。其他数据...
  • SAP的组织架构

    千次阅读 2016-04-10 12:03:50
    SAP的组织架构指的是如何划分SAP数据. 集团Client:是指SAP系统全套数据环境。集团并无现实的概念与之对应。 经营范围Operating concern:SAP用来代表市场的一个概念。这个市场的概念比现实中的...
  • 目前大型或者超大型企业的IT平台都是烟囱式的系统架构,缘由是企业内部为了迎合业务发展不停地打造各种系统,也导致各系统间的重复功能建设和维护带来的重复投资。重复投资不仅消耗了人力、财力还有时间。但打通烟囱...
  • 在互联网公司的组织架构,是有了想法先看一下现有的数据或者应用功能,考虑是不是值得改进,如果改进了会影响到多少线上用户。数据分析出来之后觉得这个事应该干,就分享一下找到了什么,大家预期的收益等等。组中的...
  • 企业应用架构是指一整套软件系统的构建,通过合理的划分和设计组合在一起,支持企业方方面面的经营运作。 不论是传统企业,还是互联网公司,发展到一定阶段,都需要一整套体系化的应用架构来支撑其运转。良好的、...
  • 关于EBS七层组织架构的一些理解

    千次阅读 2016-05-14 13:46:19
    一、EBS的七层组织架构分别为:BG、HR、LEDGER、LE、OU、INV、SUBINV  BG是业务组,是最高层  HR组织是在BG之下的,人事管理方面的组织  LEDGER分类账是在法人之上的一个层次,主要做财务账方面的事情  LE就是...
  • 京东研发组织架构

    千次阅读 2014-12-25 09:34:44
    京东研发组织架构 京东技术团队目前有超过 4000 名员工,拥有北京、上海、深圳、成都、沈阳 5 大研究院。 京东的系统比较复杂,涵盖电商全流程全价值链,从前端的交易系统到供应 链,到仓储、配送、客服以及...
  • 企业架构之道(一)之企业信息化建设

    千次阅读 2018-12-06 12:07:58
    随着信息技术的发展,各个工业、制造业领域,甚至是在人们的日常生活领域中,自动化以及效率提升等方面均得到...随着时间的推移,企业中的信息系统越来越复杂,而且业务与信息系统的关系也日趋紧密,从而使得组织或...
  • 这类责任中心往往处于企业中较高的层次,一般指有产品或劳务生产经营决策权的部门,能通过生产经营决策,对本单位的盈利施加影响,为企业增加经济效益,如分厂、分公司益既有独立经营权的各部门等。利润中心的权
  • 企业的应用架构演变之路

    千次阅读 2017-05-06 16:08:36
    作者|杨堃编辑|Gary ...良好的、合理的应用架构可以支持企业高效开展业务,控制经营风险,而混乱的、不合理的应用架构则会限制企业的快速发展,成为企业增长与变革的瓶颈。 企业信息化建设已经发展了几十年,传
  • 图片来源:视觉中国钛媒体注:12月5日消息,滴滴宣布升级调整组织架构,升级安全管理体系,成立网约车平台公司,汽车运营和车主服务升级为新车服,成立普惠出行与服务事业群,升级出租车业务产品,升级财务经管和...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 49,714
精华内容 19,885
关键字:

企业组织架构的意义