汽车软件开发标准,将走向何方?


作者:罗宇超

汽车行业的软件开发标准,最著名的应该是V模型。以V模型为代表的有ASPICE、 ISO 26262 和 ISO/SAE 21434。今天我们主要以ASPICE为基础,探讨V模型在当前汽车软件变革时代的特点。

传统的V模型标准在当前这个阶段,有点使不上劲儿


这个要怎么理解呢?首先我们要明确ASPICE的一个特点。ASPICE标准采用的是一种“命题提纲”式的写法。十几年了,还在使用,并且我们一直没有听说,有什么大的错误,因为写得足够宽泛。

我们举几个例子。在 ASPICE 的供应商监控部分,他写了 5 条BP,分别是:


第一个BP是,要和供应商之间达成并且维护一个联合开发的措施或接口,使得信息可以进行交换(至于联合的过程,或者接口应该是什么样的,在ASPICE 里面并没有进行描述)。
第二个 BP 是,交换所有经过双方同意的信息。
第三个BP是,和供应商一起评审技术开发过程。
第四个 BP 是,评审供应商的进度。
第五个 BP 是。对偏差有所行动。

可以看到,这些BP,实际上是一种非常宽泛的行为描述。至于这个行为应该怎么做,在标准里面是没有体现的。

所以ASPICE的标准,有非常大的灵活度去进行解读。这也是为什么,在十几年的过程中,它一直没有什么大的错误的原因。它所说的这些过程,其实是一个正常的产品开发或者项目管理的通用过程。但是在当前这个汽车软件变革的阶段,我们需要的是,标准告诉我们怎么做,而不再是给我们一个命题作文

从传统汽车向智能网联汽车转型的时代,所有人对这种新模式,都是处在一个探索的过程。这种探索既包括软件供应商,还有主机厂。如果ASPICE真是一剂神药,那标准的制订方之一,德国大众的新车,就不至于在停车场趴窝几个月了。

所以,这就是我的结论:传统的V模型开发标准,在当前这个阶段使不上劲儿,单纯的命题作文,在这个阶段不奏效,还需要实际的解题方法。

在当前这个阶段,越来越多的主机厂和新势力,采取了另外一种开发模式,敏捷开发。


敏捷开发尚未形成一个标准,而只是一些思想、工具和实践。敏捷开发,更多的好像是一个非常优秀的“考生”,写的一份备考指南,里面讲到了很多方法。这个考生上来就说:你不要想着一次就把事情做对、做完(因为事情太复杂了),你先去做就好了,做出一个原型,通过快速验证,你很快就能发现其中的问题,再去改,保证你的每一次,都比上次做得好,而且你的每一次,都是当前这个阶段最想要的。然后他开始告诉你,这个过程中,你的武器库里面有多少武器可以使用,比如敏捷看板、需求优先级的排序、敏捷报表、功能回顾会、每日站会等等。正是由于这位“考生”写作的出发点,导致了很多争议。因为我们知道,同样一份考卷,同样一个应用题,不同的人去做,可以采用不同的方法,并且大家都能够做对。这就像,市面上有黄冈老师的答题技巧,也有人大附中的答题技巧,但是高考出题提纲只有一份。

敏捷开发这套思想的推动者,最开始并没有太大野心。他们想做的只是告诉程序员,告诉项目管理者,怎样去管理一个项目,怎样在不同的角色之间进行协作。它没有对行业做什么要求,它也并不是针对汽车行业的。所以这样的一种方法,在被汽车行业运用的时候,必然会产生很多的争论。

我之前也写过了一篇文章ASPICE 还值得做吗?,从评论中也可以看得出来,敏捷开发在汽车行业充满了争论。有些人对敏捷开发保持了冷嘲热讽的态度。实际上包括特斯拉以及国内的造车新势力,基本上都在采用一种小步快跑,持续迭代的的方式来做软件开发。特斯拉的FSD功能,在已交付的车辆上,以肉眼可见的速度进化和升级。当汽车行业很多头部企业,都已经在或多或少尝试敏捷开发的思想时,还有一些人仍然停留在自己的看法里。

当然,我们不得不承认的一个事实是,敏捷开发在汽车行业尚未得到大规模的认可,我觉得这个也很正常,当前汽车行业正在进行一场变革,在变革的过程中肯定是百家争鸣,大家都有各自方式。而且也未形成变革后的统一标准,在这个时候产生比较多的争论,是有益于行业进步的。

今天文章的主题,我想预测一下,汽车行业的软件开发标准,将向一个什么样的方向进行演进。

我预测的第一点是,V模型将吸纳敏捷开发的特点,形成新的标准。

虽然敏捷开发并未形成汽车行业的标准,但却有非常多的团队以此种方法来进行实践。

有很多公司找我们咨询汽车行业敏捷开发相关的工具链,我们发现他们或多或少都已经开始使用敏捷项目管理工具。业界对这种趋势应该有更加明显的感受。

在汽车行业新的软件标准中,我预计,一定会是接纳并且认可小步快跑、持续迭代这样一种思想的。V模型也不应该简单地被看作是瀑布流。V模型的编写方式,并未提到它是一个瀑布流。但是我们从它上下文的行文中,很容易把它理解成一个瀑布流。比如,在我们做软件架构设计的时候,一定是对软件需求分析已经经过了大量的讨论,经过了大家的认可,但是并未提到,如果需求本身不全会怎样?如果需求没有理清楚,没有经过充分的讨论,我们是否能够去做架构方面的设计?是否可以并行?需求是逐渐完善的过程、架构也是逐渐完善的过程,在完善的过程中,再逐渐去建立追溯性,是否可行?

变更在开发过程中,是不可避免的,但在ASPICE中,变更管理是一个支持性流程,好像变更并不是在每个过程中进行的,而像是项目做到一定阶段之后,反过来进行的、偶尔的偏差改动。但实际上,变更管理应该被提到一个更重要、更频繁的位置,因为在汽车变革的过程中,我们所做的很多技术和产品,不确定性是非常高的,我们会面临更加频繁的变更。

在产品的初期,我们可能没有办法考虑到方方面面,我们拥有的是一个产品的Roadmap。但是针对 Roadmap 里面的每一个功能点,可能并不是在最开始的时候,就去详细地写出所有需求的细节,而是在做的过程中不断完善。通过不断地交付出一些可工作的产物,对需求也会不断做出调整。

第二点,我预计新的标准,会对 BP 进行更多的细化,并且也会推荐一些敏捷开发方法。

前面我们已经举过例子,在ASPICE里面,BP一般写的都比较粗。具体怎么做,其实没有很多的方法推荐。我估计新的标准中,会比较多的推荐敏捷开发的方法。如果某种解题方法是比较好的,我们需要把这种方法在标准里面体现出来,虽然这并不是强制性要求,但至少给我们提供了一些参考。这样才能让标准能够逐渐融合敏捷开发。

第三点是,如何与第三方进行合作,将会是标准的重要组成部分

在ASPICE原来的标准中,针对如何与第三方进行合作,其实篇幅很少,有一块叫做供应商管理。

但是,在新的标准中,如何与第三方合作,应该有大量的篇幅去解读它。在当前的汽车软件开发过程中,我们发现,联合开发变成了一种常态,导致了像 Tier 0. 5 这样一些合作方式出现。

在传统的标准中,我们一般只是强调,需要和供应商之间进行沟通,需要有与供应商之间进行信息交换的渠道,需要与供应商达成统一等等。

但在新的开发过程中,我们需要意识到,我们不仅与供应商之间会进行联合开发,与甲方客户之间也需要进行联合开发。而且联合开发的过程相比于原来会更加频繁和紧密,它不再是一个交钥匙的工程。对于一个软件或系统的开发,不同的软件组件可能是由不同的参与方来执行的。这个时候就要求我们在需求管控、问题管理上拥有更加实时的交流渠道,互相可以对对方提需求、提bug,并且大家好像是在一个管理系统上进行工作。这对于提升软件的开发效率是非常有必要的。

第四点是,CICD 将成为 BP 之一,缺少 CICD 的基础设施,意味着产品不具备持续迭代的属性。

在 ASPICE原来的标准中,对于持续集成、持续交付、持续部署,并没有特地强调。只是描述了针对软件的验证过程,需要有软件单元测试、软件集成测试、软件功能测试等等。更多还是强调,针对需求、架构、详细设计的可追溯性和完全覆盖。至于验证的过程要怎么做,并未提出要求。可以预见,未来甲方的需求会越来越多,且越来越频繁,CICD基础设施将是响应这一变化的关键。我们有一家做气体传感器的客户,其德方客户明确提出要求,研发过程必须上系统,且必须拥有统一的代码仓库和持续集成的能力(虽然这家客户本身的代码量不多,之前的代码全部放在工程师的电脑里进行管理)。但德方客户考虑到,后续市场或法规对于车内空气的更高要求,可能需要在更短时间内,提供更新迭代的产品。


作者介绍:
罗宇超,云体科技创始人,软件质量工程师,工具链工程师。



智能汽车开发者平台 分享汽车最新前言技术解读,行业分析,与授权行业资料分享平台。
评论
  • 彼得·德鲁克被誉为“现代管理学之父”,他的管理思想影响了无数企业和管理者。然而,关于他的书籍分类,一种流行的说法令人感到困惑:德鲁克一生写了39本书,其中15本是关于管理的,而其中“专门写工商企业或为企业管理者写的”只有两本——《为成果而管理》和《创新与企业家精神》。这样的表述广为流传,但深入探讨后却发现并不完全准确。让我们一起重新审视这一说法,解析其中的矛盾与根源,进而重新认识德鲁克的管理思想及其著作的真正价值。从《创新与企业家精神》看德鲁克的视角《创新与企业家精神》通常被认为是一本专为企业管
    优思学院 2025-01-06 12:03 119浏览
  • 这篇内容主要讨论三个基本问题,硅电容是什么,为什么要使用硅电容,如何正确使用硅电容?1.  硅电容是什么首先我们需要了解电容是什么?物理学上电容的概念指的是给定电位差下自由电荷的储藏量,记为C,单位是F,指的是容纳电荷的能力,C=εS/d=ε0εrS/4πkd(真空)=Q/U。百度百科上电容器的概念指的是两个相互靠近的导体,中间夹一层不导电的绝缘介质。通过观察电容本身的定义公式中可以看到,在各个变量中比较能够改变的就是εr,S和d,也就是介质的介电常数,金属板有效相对面积以及距离。当前
    知白 2025-01-06 12:04 173浏览
  • 大模型的赋能是指利用大型机器学习模型(如深度学习模型)来增强或改进各种应用和服务。这种技术在许多领域都显示出了巨大的潜力,包括但不限于以下几个方面: 1. 企业服务:大模型可以用于构建智能客服系统、知识库问答系统等,提升企业的服务质量和运营效率。 2. 教育服务:在教育领域,大模型被应用于个性化学习、智能辅导、作业批改等,帮助教师减轻工作负担,提高教学质量。 3. 工业智能化:大模型有助于解决工业领域的复杂性和不确定性问题,尽管在认知能力方面尚未完全具备专家级的复杂决策能力。 4. 消费
    丙丁先生 2025-01-07 09:25 80浏览
  • 根据Global Info Research项目团队最新调研,预计2030年全球封闭式电机产值达到1425百万美元,2024-2030年期间年复合增长率CAGR为3.4%。 封闭式电机是一种电动机,其外壳设计为密闭结构,通常用于要求较高的防护等级的应用场合。封闭式电机可以有效防止外部灰尘、水分和其他污染物进入内部,从而保护电机的内部组件,延长其使用寿命。 环洋市场咨询机构出版的调研分析报告【全球封闭式电机行业总体规模、主要厂商及IPO上市调研报告,2025-2031】研究全球封闭式电机总体规
    GIRtina 2025-01-06 11:10 104浏览
  • 村田是目前全球量产硅电容的领先企业,其在2016年收购了法国IPDiA头部硅电容器公司,并于2023年6月宣布投资约100亿日元将硅电容产能提升两倍。以下内容主要来自村田官网信息整理,村田高密度硅电容器采用半导体MOS工艺开发,并使用3D结构来大幅增加电极表面,因此在给定的占位面积内增加了静电容量。村田的硅技术以嵌入非结晶基板的单片结构为基础(单层MIM和多层MIM—MIM是指金属 / 绝缘体/ 金属) 村田硅电容采用先进3D拓扑结构在100um内,使开发的有效静电容量面积相当于80个
    知白 2025-01-07 15:02 75浏览
  • 每日可见的315MHz和433MHz遥控模块,你能分清楚吗?众所周知,一套遥控设备主要由发射部分和接收部分组成,发射器可以将控制者的控制按键经过编码,调制到射频信号上面,然后经天线发射出无线信号。而接收器是将天线接收到的无线信号进行解码,从而得到与控制按键相对应的信号,然后再去控制相应的设备工作。当前,常见的遥控设备主要分为红外遥控与无线电遥控两大类,其主要区别为所采用的载波频率及其应用场景不一致。红外遥控设备所采用的射频信号频率一般为38kHz,通常应用在电视、投影仪等设备中;而无线电遥控设备
    华普微HOPERF 2025-01-06 15:29 127浏览
  • 本文介绍Linux系统更换开机logo方法教程,通用RK3566、RK3568、RK3588、RK3576等开发板,触觉智能RK3562开发板演示,搭载4核A53处理器,主频高达2.0GHz;内置独立1Tops算力NPU,可应用于物联网网关、平板电脑、智能家居、教育电子、工业显示与控制等行业。制作图片开机logo图片制作注意事项(1)图片必须为bmp格式;(2)图片大小不能大于4MB;(3)BMP位深最大是32,建议设置为8;(4)图片名称为logo.bmp和logo_kernel.bmp;开机
    Industio_触觉智能 2025-01-06 10:43 87浏览
  • 根据环洋市场咨询(Global Info Research)项目团队最新调研,预计2030年全球无人机锂电池产值达到2457百万美元,2024-2030年期间年复合增长率CAGR为9.6%。 无人机锂电池是无人机动力系统中存储并释放能量的部分。无人机使用的动力电池,大多数是锂聚合物电池,相较其他电池,锂聚合物电池具有较高的能量密度,较长寿命,同时也具有良好的放电特性和安全性。 全球无人机锂电池核心厂商有宁德新能源科技、欣旺达、鹏辉能源、深圳格瑞普和EaglePicher等,前五大厂商占有全球
    GIRtina 2025-01-07 11:02 68浏览
  • 在智能家居领域中,Wi-Fi、蓝牙、Zigbee、Thread与Z-Wave等无线通信协议是构建短距物联局域网的关键手段,它们常在实际应用中交叉运用,以满足智能家居生态系统多样化的功能需求。然而,这些协议之间并未遵循统一的互通标准,缺乏直接的互操作性,在进行组网时需要引入额外的网关作为“翻译桥梁”,极大地增加了系统的复杂性。 同时,Apple HomeKit、SamSung SmartThings、Amazon Alexa、Google Home等主流智能家居平台为了提升市占率与消费者
    华普微HOPERF 2025-01-06 17:23 145浏览
  • By Toradex 秦海1). 简介嵌入式平台设备基于Yocto Linux 在开发后期量产前期,为了安全以及提高启动速度等考虑,希望将 ARM 处理器平台的 Debug Console 输出关闭,本文就基于 NXP i.MX8MP ARM 处理器平台来演示相关流程。 本文所示例的平台来自于 Toradex Verdin i.MX8MP 嵌入式平台。  2. 准备a). Verdin i.MX8MP ARM核心版配合Dahlia载板并
    hai.qin_651820742 2025-01-07 14:52 45浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦