架构与中台

2023-05-16

做架构工作最重要的是练好内功。什么是内功?大局观、认知层次,思维方式,方法论、概念抽象能力等等都属于内功。

零件设计主外,架构设计主内。零件设计五花八门,紧随新技术新热点。架构设计苦练内功,力求打好基础,厚积薄发,从全局角度完善和优化系统,终极目标是以不变应万变,力求公司保持持续的竞争力并达到可持续发展。

很多互联网公司都在讲小前台,大中台。架构设计本质上就属于中台的工作。

中台做大量的数据收集分析,模块设计,关键共性通用技术的储备

前台利用中台的技术储备,根据特定用户需求,特定使用场景进行个性化设计,输出为具体的产品和服务。

抖音和今日头条是两个不同的APP,它们都属于字节跳动的前台,在背后支撑它们的中台设计思路是一样的,即通过用户的产品使用行为全方位的分析用户的特征和需求,全息化地形成用户画像。

用户画像能力是关键共性基础技术,是核心竞争力。有了用户画像以后,用什么样的具体产品和服务形式(文字、声音、图像、视频、直播互动)去满足用户的需求就交给前台去处理了。

对于整车厂来讲,EEA架构设计也属于中台工作,具体的零件和车型项目开发属于前台工作。中台的重点是练内功,前台的重点是向用户展示公司的功力,俗称秀肌肉。

既然EEA架构设计属于中台工作,中台的重点是练内功,那么对EEA架构师主要有以下几方面的要求:

1、要极度重视基础知识的掌握和基础能力的训练。

基础并不等同于简单。大道至简,几乎每个人都认可基础很重要的道理,但能够付出时间和精力去不断夯实基础的人并不多,夯实基础的同时又能不断实际运用,甚至内化于心的人就更少了。

很多时候,耐不住寂寞是夯实基础的大敌。

比如,打篮球。运球的基本功和投篮的正确姿势是基础,但反复练习这些基础动作是非常枯燥的,于是大部分人耐不住寂寞,他们觉得还是打比赛比较好玩和刺激。限于薄弱的基本功和错误的动作姿势,篮球水平很快遇到瓶颈,无法进一步提高。

打篮球是一项体育运动,无论是运球基本功还是投篮姿势都是靠成千万次的刻意练习才能内化为肌肉记忆的,除此之外,别无他法。基础并不等同于简单,这句话很大程度上想表达的是:基础的东西往往看起来简单,但练起来却枯燥乏味,所以往往被忽略,这导致基础的东西反而变成了最难的东西,最终成为不断精进的最大障碍。

学习英语也是一样的道理。很多人学习了多年的英语,可是英语水平还是很一般,甚至说一句稍微复杂点的话都要想半天,还磕磕巴巴的。是单词量太少吗?是没有语言环境吗?其实最大的问题是英语最基础的东西没有熟练掌握,更没有反复地刻意练习过。

之前的文章笔者介绍了概念的关系,结构性思维能力,系统性思维能力,元思维能力,架构与分工,架构与关系,并且贯穿此公众号的核心思想就是“架构=组成+交互”,以上这些都是架构师应该掌握的基础知识和基础能力。

那么什么是英语语法的基础知识和基础能力呢,笔者试着用架构工程师的基础知识和能力来分析一下。对于EEA架构师来说,汽车电气系统的最小粒度是电气零件,那么英语的最小粒度可以看做是字母,如何写字母和读字母(音标)当然是英语的基础知识。单词由字母组成,单词具有共10种词性(名词、动词、代词、形容词、副词、介词、连词、数词、冠词、感叹词)。不同词性的单词可以作为共8种句子成分(主,谓,宾、表、补、定、状、同位),句子成分可以构成共5种基本句型(主+谓、主+谓+宾、主+谓+宾+宾补、主+谓+间接宾+直接宾、主+系+表)。句子从结构的角度可以分为简单句、并列句和复合句。句子从类型的角度可以分为陈述句(肯定句、否定句)和疑问句(一般疑问句、特殊疑问句)、祈使句和感叹句。

以上就几乎是英语语法最基础的知识框架。时态、语态,虚拟语气,情态动词、从句、非谓语动词这些都不是最基础的框架类知识,而属于必须学习的重要细节知识点。提取基础框架的能力是架构师的最重要能力之一。

先掌握框架,然后才是细节。在运用框架的过程中根据实际需求不断补充细节,而不是一开始就沉迷于细节。试问一下各位读者,以上基础框架知识有多少人可以背诵准确?又有多少人可以不假思索地脱口而出?英语基础能力就是不断地、疯狂地、找一切机会去实际地运用以上的最基础的知识框架。

看到每一句英文就分析句子种类,分析句型、分析句子成分,不厌其烦地去练习。看到中文就翻译成英文,看到任何事物就去回忆对应的单词,先是力求准确,然后不断提高反应速度。以上要求是不是听起来很简单,试问,有多少人已经做到了呢?

业余篮球运动员和职业篮球运动员的最大差别除了身体条件之外(身高2米靠父母,练不出来),就是职业运动员对于基础技术动作极度重视,并且反复地练习,疯狂地练习。高水平的英语语言能力不是背单词背出来的,也不是大量阅读能够培养起来的,因为这些都是被动的输入,对提高实际语言运用能力非常低效。

真正的语言能力是对最小粒度的单词、对句子成分,对词性运用英语语法的基础框架知识灵活组织成正确句子的能力、是用思维去控制语言并写出和说出每一句话的能力,这种能力是需要反复练习,疯狂练习的,这才是主动的高效的提高英语能力的方法。

那么EEA架构师应该如何苦练内功,如何训练基础能力呢?其实也非常简单,首先需要掌握汽车电气系统的基本专业知识,然后掌握基本的思维方法(参考笔者的文章),接下来就是不断地进行以下几方面的训练:

1、MECE训练。平时接触到的任何事物,任何系统,任何问题,都尝试从你能够想到的任何维度进行MECE训练。比如,一个问题可能的产生原因有几类,一个系统可能的划分方式几种,一件事情可能发生的方式有几种等等。

2、系统设计方案熟练度训练。以汽车电气系统为例,试着脱口而出以下问题:1、任何两个ECU之间的关系是什么(信号的收发关系,功能分配关系等等)。以电气零件为最小粒度,描述所有整车级电气功能的实现方式是什么(信息输入方式、判断处理逻辑、执行方式、时序要求等等),所有整车级电气功能的方案优缺点是什么(成本、质量、可扩展性、技术难度等等)。

很多刚入行EEA架构师的朋友说架构师的工作很虚,不知道做什么。我基本都会建议他们先踏踏实实地进行基础知识和基本能力的训练,不要一开始就好高骛远。如果你连目前已经成熟的电气功能设计方案都不能熟练掌握和脱口而出,那就不可能成为一名合格的EEA架构师。

2、要善于透过现象看本质,并通过本质总结事物的发展规律和趋势。

基础知识熟练掌握,基础能力经过训练也具备之后,那就可以打磨自己更高阶的能力了,比如,透过现象看本质的能力。这个能力本身就隐含了一个前提,你必须看过无数多的现象,然后你才有能力总结出现象背后的本质。

几乎每个人每天都在和我们所处的这个商业社会打交道,但透过各种商业现象,让我们思考一下商业的本质是什么,商业的发展趋势是什么。世界虽然五彩斑斓,但如果深入到各种现象背后的本质,其实很多时候都是融会贯通的。让我们试着从商业的本质和发展趋势入手,然后来分析一下车载网络技术发展趋势是什么。

商业本质上就是为了促进交易所使用的各种手段。买方有需求想买,卖方有意愿想卖,那么如何用最低的成本、最快的速度、并且安全地达成这笔交易,这就是商业所需要的达到的目的。更好的商业模式就意味着成本更低,速度更快并且更安全。

人们在购买商品之前,一般要经过寻找商品,比较价格,试用的过程,每一个环节都会产生成本。电商平台之所以能够取得如此大的成功,就是因为在每一个环节都降低了交易成本。点点鼠标就可以浏览全国甚至全球的商品;轻松对比不同商家的价格,甚至有专门的比价网站和程序;看看商品评价或者直播带货,很容易直观了解到商品是否好用。

在确定需要购买的商品之后,电商(比如,阿里巴巴的支付宝)又解决了买家的付款信任度问题,保证收货确认后才支付。强大的物流体系大大降低了电商的运输成本。

电商这种商业模式用更低的成本、更快的速度、甚至更安全的支付方式促进了买家和卖家的交易,它符合商业发展的趋势,因此获得了巨大的成功。

借鉴商业的本质和发展趋势,我们来分析 一下车载网络技术的发展趋势是什么。首先,车载网络的本质是连接所有需要发送和接收信息的ECU的一种技术手段,这一点与商业的本质是类似的,只不过商业是连接买家和卖家的手段。因为本质上都是一种连接手段,那么更先进的车载网络技术必然也是用更低的成本,更快的速度,并且更安全的完成ECU之间的信息交互。

最开始,汽车上ECU通信只能通过一对一的硬线连接。总线型CAN网络技术的出现实现了在低成本(主要通过减少线束)情况下,多个ECU能够进行大量的信息交互。一路CAN总线上的任意两个ECU之间可以不通过任何中间环节(类似于商业中的中间经销商,经销商要赚差价,而且会造成买家和卖家之间的信息不对称,影响交易的效率)直接进行通信,从成本和效率上来讲是最高的,在这点上CAN总线技术有很大的优势。但由于总线通信带宽由所有ECU共享且带宽较低,一旦负载率超过限值,通信的延迟便得不到保证。此外,CAN总线的信号传输速率较低,不能满足高速率通信的需求

车载以太网技术为何受到如此大的关注,因为它恰好弥补了CAN总线的缺点。车载以太网具有点对点的通信,大带宽、高速率、全双工这些特点,更重要的是可以使用很多经过多年验证的成熟通信协议,同时使车内网络和车外网络更好地进行融合

车载以太网的出现,并不是消灭CAN总线,而是对车载网络技术的一种强有力的补充。点对点通信的车载以太网需要使用交换机才能实现多个节点的通信,从商业的角度理解,这就相当于增加了一个交易环节,必然产生额外的成本。

我们可以做个类比,原来有100个商家和客户在一个微信群里面做交易,因为交易量不大,对交易速度要求也不高,微信群可以满足要求。但客户想寻找更多的卖家,商家想寻找更多的客户,于是它们都连接到了电商平台上,电商平台就好比是一个很大的车载以太网交换机,它将微信群里面这个局部的小网络(比如,CAN总线形成的一个局部功能域)通过主干网连接到了外面更广大的商业世界。

通过以上的分析,车载网络所涉及到的域控制器,主干网的概念其实很好理解了,这是一个符合事物发展规律的一个很自然的过程。无论表象是什么,商业模式和车载网络技术都是以更低的成本,更快的速度,并且更安全地促成一笔交易或者进行信息的交互。

架构师必须善于洞察本质,洞察本质的目的是为了看清技术的发展趋势,这样才能坚定不移的前行。前台工作在某种程度上也许可以用战术上的勤奋来弥补战略上的懒惰,但架构师必须要求自己避免战略上的懒惰,因为如果中台的根基都是错的,前台的产品和服务只能越走越偏。

能够把握方向,看清趋势甚至引领趋势的人必须是能够看清事物本质的人。

3、要学会推迟满足感,并不断加强这种特质。

推荐大家一本书,名字叫做《少有人走的路》。这本书将自律分为四个维度,分别是推迟满足感、承担责任、尊重事实、保持平衡。其中,推迟满足感是自律的核心。一个不能推迟满足感的人,几乎不可能有耐心不断夯实基础,并潜心研究事物的本质。

前台工作是公司接触大千世界的触点,中台工作在某种程度上必须保持克制,甚至刻意远离外部的各种喧嚣和噪音,这样才有利于能练好内功,从本质上把握住公司的技术发展方向。

汽车EEA架构师要意识到,具体某一个车型项目只是在特定时间,特定场景下为了满足特定用户需求的一个具体的技术解决方案,而公司要保持持续的竞争力,在有形的车型产品背后,一定要有一股强大的无形的力量进行支撑,这种力量就是中台的架构工作所打造的EEA这个无形的产品。这就是为什么要大中台、小前台的本质原因。

推迟满足感意味着EEA架构师为了打造一个好的架构,即使短时间内没有回报也必须要去做。另外一个方面,即使当前架构所支撑的车型大卖特卖,在内心也要时刻保持克制,居安思危,持续优化和升级架构,练内功是很苦的,因为没有尽头。如果等到目前的车型走下坡路时,再开始去研究新技术,寻找资源和培养能力,那中台工作就已经失去意义了

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

架构与中台 的相关文章

  • 嵌入式系统BSP基础知识

    嵌入式系统BSP基础知识 板级支持包 BSP 是定义如何支持特定硬件设备 设备组或硬件平台的信息集合 BSP 包括有关设备上存在的硬件功能的信息和内核配置信息以及所需的任何其他硬件驱动程序 除了用于基本和可选平台功能的通用 Linux 软件
  • constexpr

    constexpr 标志返回值或者其他表达式是常量 xff0c 在编译时就会被计算出来 这个关键字常被用来 C 43 43 const 和 constexpr 的区别 xff1f 知乎 include lt iostream gt usin
  • inline namespace

    include lt iostream gt using namespace std namespace ALL namespace V2014 void fun int num cout lt lt 34 int 34 lt lt 34
  • 进程与线程

    对于操作系统来说 xff0c 一个任务就是一个进程 xff08 Process xff09 xff0c 比如打开一个浏览器就是启动一个浏览器进程 xff0c 打开一个记事本就启动了一个记事本进程 xff0c 打开两个记事本就启动了两个记事本
  • 详解SOME/IP协议文档

    以下内容来源于AutoSar官网的AUTOSAR PRS SOMEIPProtocol文档 详解SOME IP协议文档 2 知乎 以下内容来源于AutoSar官网的AUTOSAR PRS SOMEIPProtocol文档 SOME IP P
  • AP AUTOSAR——Update and Configuration Management UCM

    15 Update and Configuration Management 15 1 What is Update and Configuration Management 更新和配置管理是Adaptive Platform Servic
  • 基于Docker安装Jenkins并实现CI/CD实战部署

    本实践介绍了利用Jenkins和docker技术 xff0c 如何实现CI CD的各环节的步骤 xff0c 包括环境准备 xff0c 代码提交 xff0c 编译程序 xff0c 构建镜像 xff0c 部署一套完整的安装部署流程 工具介绍 x
  • 左值引用与右值引用

    include lt iostream gt using namespace std void change int amp rnum 引用就是变量名的别名 rnum 61 111 c 43 43 中能用引用的地方 xff0c 就不要使用指
  • C++ 11的移动语义

    目录 可拷贝和可移动的概念 移动构造函数和移动赋值函数 小结移动构造和移动赋值std move 使用 std move 实现一个高效的 swap 函数Move and swap 技巧参考 可拷贝和可移动的概念 在面向对象中 xff0c 有的
  • UDS-统一诊断服务

    什么是诊断服务 xff1f 在还没有诊断服务的时候 xff0c 如果车辆故障 xff0c 需要有经验的师傅长时间的摸排查找 xff0c 费时费力 而车辆的ECU节点有了诊断模块后 xff0c 就具有了诊断功能 xff0c 这样车辆如果有了故
  • AP AUTOSAR——Network Management

    16 Network Management 16 1 What is Network Management 网络管理是Adaptive Platform Services中的一个功能集群 作为AP AUTOSAR平台的服务 xff0c 网络
  • AP AUTOSAR——Security Management

    11 Security Management 11 1 What is Security Management 安全管理是自适应平台体系结构中的一个功能集群 作为一个功能集群 xff0c 安全管理由多个模块组成 xff0c 这些模块向在Ad
  • 如何制作S32V234的Linux5.x版本BSP

    脚本是编译S32v Linux5 x版本bsp文件的流程 官方也有这个指导说明文档 xff0c 主要是第2 3章内容 xff0c 可以参考着执行 1 下面描述的所有步骤都已在Ubuntu 20 04LTS上 xff08 本机或通过虚拟机 x
  • C++经典面试题100例及答案

    1 面向对象的程序设计思想是什么 答 xff1a 把数据结构和对数据结构进行操作的方法封装形成一个个的对象 2 什么是类 答 xff1a 把一些具有共性的对象归类后形成一个集合 xff0c 也就是所谓的类 3 对象都具有的两方面特征是什么
  • C++面试100题,1——40

    C与c 43 43 有什么不同 xff1f 在c 43 43 中能使用引用就不要使用指针 xff0c 要改变一个一级指针就要用一个二级指针 要改变一个二级指针就要用一个三级指针 xff0c 会变得越来越复杂 A类中的func1是虚函数 xf
  • (TDA4 BSP )Texas Instruments Jacinto 7 J721E (DRA829/TDA4xM) BSP 如何制作?

    1 1 1 Download and Install the SDK Processor SDK Linux for J721e Documentation https software dl ti com jacinto7 esd pro
  • 解决Linux 环境 GLIBCXX_3.4.15‘ not found问题

    升级Centos系统之后 xff0c 运行filezilla时 xff0c 出现如下错误的提示信息 xff1a filezilla usr lib libstdc 43 43 so 6 version 96 GLIBCXX 3 4 15 3
  • 两台Linux服务器之间传输文件的四种方法(转载)

    在日常服务器租用中 xff0c 有时需要将文件从一台服务器传到另一台服务器 xff0c 下面给大家介绍四种linux服务器之间传输文件方式 scp 优点 简单方便 xff0c 安全可靠 xff1b 支持限速参数 缺点 不支持排除目录 用法
  • 任务间通信 | 邮箱、消息队列

    本文分享自中移OneOS公众号 任务间通信 上篇讲解了任务间同步 xff0c 在本篇中主要讲解任务间通信机制 xff0c 并对邮箱及消息队列进行详细介绍 通过对其概念 详细设计 接口设计等的讲解帮助开发者更好的理解其在操作系统中的应用 任务

随机推荐

  • c++ 条件变量的使用,实战

    include lt iostream gt include lt thread gt include lt mutex gt include lt condition variable gt using namespace std 线程通
  • SOA架构和微服务架构的区别

    1 SOA架构和微服务架构的区别 首先SOA和微服务架构一个层面的东西 xff0c 而对于ESB和微服务网关是一个层面的东西 xff0c 一个谈到是架构风格和方法 xff0c 一个谈的是实现工具或组件 1 SOA xff08 Service
  • 浅谈AP autosar 之 runtime 基础

    AP Autosar Architecture overview AP autosar在SOC 中的位置 xff0c 起到的作用 下面图可以看出 xff0c AP autosar封装了操作系统的接口 xff0c 封装了功能安全 xff0c
  • 「冰羚」— 撑起自动驾驶未来的“中间件”

    每当谈到自动驾驶的软件开发 xff0c 人们首先想到的 xff0c 是深不可测的人工智能算法 xff0c 是各种感知融合 xff0c 是各类路径规划 但是 xff0c 就算是再智能再高深的算法 xff0c 如果没有底层操作系统的支持 xff
  • 多核处理器的关键技术

    英特尔的cpu是从前代gt atom一路供货到第7代 xff0c 想必日常使用不会有太大区别 xff0c 而在系统之外可能存在一些散热方面的问题 而上市越早的处理器 xff0c 硬件供货越好 xff0c 可能在某些特殊时间段会出现不足 xf
  • LD_PRELOAD作用

    一 LD PRELOAD是什么 LD PRELOAD 是Linux系统的一个环境变量 xff0c 它可以影响程序的运行时的链接 xff08 Runtime linker xff09 xff0c 它允许你定义在程序运行前优先加载的动态链接库
  • C++ 之父的多线程编程建议——现代 C++ 对多线程/并发的支持(下)

    本文承接前文 现代 C 43 43 对多线程 并发的支持 xff08 上 xff09 xff0c 翻译自 C 43 43 之父 Bjarne Stroustrup 的 C 43 43 之旅 xff08 A Tour of C 43 43 x
  • C++关键字之Future promise and async()

    主线程将x传递给子线程 xff0c 子线程将结果x再传递给主线程 include lt iostream gt include lt future gt include lt thread gt using namespace std vo
  • C++ thread::hardware_concurrency 获取硬件支持并发数

    一 功能 获取硬件支持的并发线程数 二 返回值 正常返回支持的并发线程数 xff0c 若值非良定义或不可计算 xff0c 则返回 0 四 示例 include lt iostream gt include lt thread gt int
  • C++并发编程 unique_lock and condition_variable

    在t1线程中插入值 xff0c 在t2线程中取出值 include lt iostream gt include lt thread gt include lt vector gt include lt string gt include
  • ubuntu18.04+安装ros-melodic+安装realsense-ros包

    自己在安装的时候参考了很多博客 xff0c 但许多的方法很杂乱最后还失败了 xff0c 这里综合下自己尝试成功且比较方便的方法 xff0c 参考链接会在下文列出 安装ros melodic 参考 xff1a https www guyueh
  • [C++11 并发编程] 动态选择并发线程的数量

    C 43 43 标准模板库提供了一个辅助函数 std thread hardware concurrency xff0c 通过这个函数 xff0c 我们可以获取应用程序可以真正并发执行的线程数量 下面这个例子 xff0c 实现了一个并发版本
  • [C++11 并发编程] 17 超时等待 - clock和duration

    之前我们看到的所有等待机制都是不会超时的 xff0c 也就是说 xff0c 等待某个同步事件的线程会一直挂起 有些情况下 xff0c 我们希望设置一个最长等待时间 xff0c 使得程序可以继续与用户进行交互 xff0c 使得用户可以取消这个
  • 激光雷达和相机感知融合简介

    本文介绍激光雷达和相机融合的两种方法 xff1a 前融合 xff1a 融合原始数据 xff08 点云和像素 目标框 xff09 后融合 xff1a 融合目标框 前融合 前融合一般指融合原始数据 xff0c 最容易 最普遍的方式是将点云投影到
  • 聚焦芯片:GPU,CPU,SOC,DSP,FPGA,ASIC,MCU,MPU,GPP,ECU等都是什么?

    先上部分概念 xff1a CPU xff1a 中央处理器 xff08 Central Processing Unit xff09 是一块超大规模的集成电路 xff0c 是一台计算机的运算核心 xff08 Core xff09 和控制核心 x
  • 怎么样实现车辆信息安全

    1 车载IDS 正成为持续网络安全保护的核心要素 持续的网络信息安全风险管理正成为VTA的要求 通过IDS车载入侵检测可以为整个车队提供信息安全保护 但是 xff0c 分布式IDS的指导原则是什么 xff1f 为了满足UNECE WP29法
  • SOA通信架构和SOME/IP-SD的主要功能

    1 SOA面向服务的通信交互 如上图所示 xff0c 女神去热水澡堂洗澡 xff0c 想搓背 xff08 find服务 xff09 xff0c 于是她付要付搓背钱给澡堂老板 xff0c 这时澡堂老板知道通过小王和小明的毛遂自荐 xff08
  • OTA升级的实现原理

    一 简介 1 1 概念 OTA xff1a Over the Air Technology xff0c 即空中下载技术 OTA升级 xff1a 通过OTA方式实现固件或软件的升级 只要是通过无线通信方式实现升级的 xff0c 都可以叫OTA
  • 为什么特斯拉自动驾驶汽车不需要激光雷达

    光 糖果Autosar 2022 02 14 08 08 特斯拉仪表板 打造全自动驾驶汽车所需的技术堆栈是什么 xff1f 公司和研究人员对该问题的答案存在分歧 自动驾驶的方法范围从相机和计算机视觉到计算机视觉和高级传感器的组合 特斯拉一直
  • 架构与中台

    做架构工作最重要的是练好内功 什么是内功 xff1f 大局观 认知层次 xff0c 思维方式 xff0c 方法论 概念抽象能力等等都属于内功 零件设计主外 xff0c 架构设计主内 零件设计五花八门 xff0c 紧随新技术新热点 架构设计苦