系统架构11影响系统架构的上下游有哪些?
原创 精进学思⾏ 精进学思⾏
在系统架构10|系统架构师如何扮演好⾓⾊?中,我们介绍了系统架构师的⼀个重要职能是“消除歧义”,也介绍了“消除歧义”的重要抓⼿——“产品开发流程”。其中简洁了歧义产⽣的主要原因,本⽂沿这个逻辑,进⼀步介绍⼀下影响系统架构的上下游因素,并介绍⼀个整合上下游影响要素的模型(ABCD模型)。本⽂主要从如下的三个⽅⾯进⾏介绍:
影响系统架构的关键上游要素是什么?
影响系统架构的下游要素是什么?
什么是ABCD模型?
1 上游
如果以系统架构为参考点,它的上游主要指的是对其进⾏要求的输⼊,在《系统架构》中介绍了四种主要的影响因素:公司策略、营销、法规和技术融合。
1.1 公司策略
在影响系统架构的上游要素中,最重要的上游因素公司策略。在《系统架构》中对策略的定义是“公司为了达成⽬标所使⽤的⼿段”。公司的⽬标可以是改善⼈们⽣活,也可以是为股东创造价值(赚钱)。以现在如⽕如荼的电动汽车为例,现在中国市场上有很多不同的电动汽车品牌,如:特斯拉、蔚来汽车、⼩鹏汽车、威马汽车等,从这些汽车产品的定价中,就能看出公司战略的不同,有的是通过开发⾼端汽车以及优质服务,从少数的有钱⼈⼝袋中挣钱;有的是通过开发适合普罗⼤众的低价汽车,通过薄利多销来实现盈利;⽽有些可能只是通过电动汽车的名头,从政府那⾥获得补贴。
这些不同的策略,通常会影响到的研发的投⼊,进⽽也会影响系统的架构。《系统架构》中以宝马汽车(BMW)为例,BMW在2009年退出了
F1赛事,BMW在其新闻发布会上说:”品牌的增值将越来越多的体现在可持续性和环境的兼容性上,这才是我们想继续保持领先优势的领域“。为此,BMW专门成⽴了BMW i这个部门,专注于研究⼩⽽实⽤的城市型汽车,⽽这个策略必然会带来架构的变化。
1.2 营销
在《⾼纬度思考法》2| 为什么“解决问题”的⼈,常常很难发现问题?中,我们分享到公司中最典型的上位和下位(对应上游和下游)就是市场部门和⼯程部门,⽽这两个部门常常会产⽣很多的分歧,在市场部门,营销是和产品开发最相关的部分。为什么这么讲?我们先看看营销的定义,在《系统架构》中对
营销的定义是:
为客户创造价值、与客户就价值进⾏沟通、向客户传递价值,并以有利于组织及其利益相关者的⽅式来管理客户关系。
从定义中,我们会发现营销的核⼼是价值的创造和传递,⽽价值源于“需求的满⾜”,所以,营销需要要识别客户及客户的需求,进⽽明确什么样的产品能满⾜⽤户的需求,从⽽实现价值的创造和传递。
⽽这个过程中的需求及其实现载体(产品)是进⾏产品开发的重要深⼊,也是影响系统架构的重要因素。⽽系统架构是对产品功能和形式的分配,是连接营销和产品具体开发的桥梁。
1.3 法规
法规对系统架构的影响体现在它会对某些下游的要素做约束,⽐如说在汽车开发中,为了环保要求,法规对汽车排放有严格的要求,⽽这就会对⼤排量内燃机的搭载;再⽐如2015年美国法规要求2018年的新车都必须安装倒车后视摄像头。
在我的专业中,以前为了降低汽车噪声过⼤对周围环境的影响,法规规定了通过噪声的影响,⽽现在⼜因为电动车太⼩,低速时影响⾏⼈,特别是盲⼈的安全,⼜需要在车外安装声⾳提醒装置警⽰⾏⼈。
1.4 技术融合
第4个影响系统架构的重要因素是技术融合,它指的是技术是否准备就绪,是否可以融⼊到产品设计当中,下表是美国国防部定义的技术就绪⽔
平,这张表可以让架构师和技术开发⼈员对技术的就绪程度达成共识。
还是以我们专业为例,因为电机取代了内燃机,车内缺乏以前发动机的引擎的反馈声,于是有公司就开发了在车内加装声⾳模拟装置,提升驾驶的乐趣,这个想法其实⽐较成熟,在国外⼀些品牌已经实现,但是在国内还没有普及,我认为其中⼀个重要的原因是国内技术还不是很成熟。
这种情况下,是否应该采⽤呢?我的理解是,如果不是和安全强相关,代价⼜不⾼,就可以先采⽤,利⽤先发优势,成为亮点
2 下游
以上4个是影响系统架构主要的上游因素,除此之外,系统架构还受到下游的影响,这⾥的下游主要指的是系统架构定义的功能的具体实现,这⾥重点介绍影响三点:为X设计、实现和平台化。
2.1 为X⽽设计
“为X⽽设计”(Design for X)是个术语,⽤来指⼀系列的设计准则,⽐如design for manufacturing(为制
造⽽设计), design for cost (为成本⽽设计),designe for test(为测试⽽设计)以及为性能⽽设计(design for performance)。⽐如在我们的车型开发中,其中有个关键的架构决策,主要的决策影响要素就是NVH(Noise、Vibration and Harshness)性能。
2.2 实现
系统架构搭出了整个产品的功能和形式框架,⽽真正要落地实现需要进⼀步的详细设计、制造以及供应链管理。这个过程中,对架构师决策最重要的影响就是确定是⾃研还是购买,通俗讲,就是确定是⾃⼰⼲,还是请供应商⼲,⽽这个关键则取决于⾃⼰所是否具备构建整套系统所需的核⼼能⼒。
还是以汽车开发为例,现在很多电动车造车新势⼒,⾃⼰不具备设计和制造动⼒总成的能⼒,为了快速开发出汽车,只有请供应商开发。⽽这对架构的影响是:接⼝如何定义?强势供应商对架构分解的影响如何考虑(⽐如不愿意修改某些接⼝)?供应商什么时间介⼊⽐较合适?
2.3 平台化
汽车是⾮常复杂的系统,为什么你常常看到汽车公司很快就推出了新款,其中⼀个重要的原因是平台化,它指的是刻意在产品之间做⼀些公⽤部件,这就要求架构师构思⼀些通⽤部件或软件模块,⽐如下图中Audi的 Teases PPE平台。电动汽车有哪些品牌
3 ABCD模型
最后,我们来分享⼀个整合上⾯提到的上下游的框架,它⾮常形象地将系统架构和商业论证之间的关系整合到⼀起,这就是架构商业论证决策框架(Architecture Business Case Decision),简称ABCD模型。它最简单的模型如下图,这⾥的商业论证,我理解就是通过分析客户的需求,了解产⽣什么样的产品或服务能够获得利润。我理解这个模型有个三层意思:
第⼀层:商业论证的⽬的是将需求转化为系统架构的⽬标;
第⼆层:系统架构的输⼊是技术和⽬标,⽽输出是解决⽅案(产品或服务);
第三层:驱动这两个轮⼦转起来的有两种⽅式,⼀种是⽤现有技术满⾜客户的新需求;另⼀个是有新的技术出现,推动更好满⾜已有的需求或创造新需求。⽐如有⼈喜欢喝带冰块的啤酒,对于这个需求,只需要使⽤现有的技术,设计⼀个制冰器就⾏;⽽射频识别技术以及物联⽹技术的出现,能够让冰箱智能识别并发起预定。
这个模型还可以进⾏拓展,整合我们前⾯提到的上下游的影响,如下图所⽰,看上去虽然复杂⼀些,但核⼼没有发⽣变化,只不过在进⾏系统架构的时候要考虑更多的影响要素,我理解这个模型最⼤的价值是将围绕需求识别-需求满⾜的逻辑,通过⼀个双环,形象表达出来,并考虑了这个过程中的周边的影响。
总结
系统架构受到上下游的影响,上游主要包括公策略、营销、法规和技术融合;下游主要包括:设计、实现和平台化。ABCD模型(Architecture Business Case Decision)可以⽐较好整合价值创造和交换的过程,为我们理解系统架构的上下游关系提供了⼀个很好的框架。