0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

智能汽车电子与软件 来源:汽车电子与软件 2023-02-01 15:15 次阅读

汽车行业的软件开发标准,最著名的应该是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基础设施将是响应这一变化的关键。我们有一家做气体传感器的客户,其德方客户明确提出要求,研发过程必须上系统,且必须拥有统一的代码仓库和持续集成的能力(虽然这家客户本身的代码量不多,之前的代码全部放在工程师电脑里进行管理)。但德方客户考虑到,后续市场或法规对于车内空气的更高要求,可能需要在更短时间内,提供更新迭代的产品。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开发
    +关注

    关注

    0

    文章

    370

    浏览量

    40836
  • 汽车
    +关注

    关注

    13

    文章

    3498

    浏览量

    37264

原文标题:汽车软件开发标准,将走向何方?

文章出处:【微信号:智能汽车电子与软件,微信公众号:智能汽车电子与软件】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    我国软件开发者数量超过940万

    在近日举办的开放原子开发者大会上,工业和信息化部负责人传来了一则令人振奋的消息:我国软件开发者数量已经突破940万大关。这一数据不仅彰显了我国在软件开发领域的雄厚实力,也预示着我国在全球软件开
    的头像 发表于 12-23 11:08 64次阅读

    北京软件开发公司有那些?做软件的公司有哪些?

    北京作为中国的科技创新中心之一,拥有众多提供软件开发服务的公司。以下是一些在北京地区较为知名的软件开发公司: 华盛恒辉科技有限公司:是一家专注于高端软件定制开发服务和高端建设的服务机构
    的头像 发表于 10-28 15:02 380次阅读

    ECU电控软件开发及测试介绍

    本文重点介绍符合AutoSar架构的应用软件开发、MBD开发模式下的软件质量评估与优化方案、复杂场景下的ECU性能压力测试方案。
    的头像 发表于 09-26 14:25 3331次阅读
    ECU电控<b class='flag-5'>软件开发</b>及测试介绍

    Vector DaVinci Team解决方案实现AUTOSAR Classic ECU软件开发

    随着软件技术的发展,车辆的开发过程从硬件主导转变为软件定义汽车(SDV),软件开发汽车
    的头像 发表于 09-13 11:23 1059次阅读
    Vector DaVinci Team解决方案实现AUTOSAR Classic ECU<b class='flag-5'>软件开发</b>

    Jama Connect for Automotive,汽车行业需求管理解决方案,加速汽车软件开发

    软件开发
    龙智DevSecOps
    发布于 :2024年08月05日 13:55:24

    2024 ACT汽车软件与安全技术周 龙智即将携全方位汽车软件开发解决方案亮相,助力应对汽车软件开发功能安全

    ,分享推动汽车软件开发与功能安全的创新实践。 ATC作为汽车技术会议领域的领先平台,专注于汽车电子与软件版块的技术交流将近10年历程,深耕行
    的头像 发表于 07-08 16:17 544次阅读
    2024 ACT<b class='flag-5'>汽车</b><b class='flag-5'>软件</b>与安全技术周 龙智即将携全方位<b class='flag-5'>汽车</b><b class='flag-5'>软件开发</b>解决方案亮相,助力应对<b class='flag-5'>汽车</b><b class='flag-5'>软件开发</b>功能安全

    【《软件开发珠玑》阅读体验】+ 心得

    【《软件开发珠玑》阅读体验】+ 心得 感谢电子发烧友论坛提供的读书机会。读这本书使我在编程方面多了位资深老师。 在软件项目开发领域的时,我阅读了《软件开发珠玑》这本书。它以独特的视角和
    发表于 06-23 17:56

    上位机软件开发用什么语言

    上位机软件开发是指开发用于与下位机(如PLC、单片机等)进行通信、控制和数据处理的计算机软件。上位机软件在工业自动化、物联网、智能家居等领域有着广泛的应用。选择合适的编程语言对于
    的头像 发表于 06-06 10:44 1776次阅读

    广告电商+超级云APP结合 # 软件开发# 模式开发# 小程序开发# App开发

    软件开发APP
    jf_01576396
    发布于 :2024年04月09日 17:42:13

    星宸科技通过ASPICE CL2级认证,以国际软件开发标准守护产品质量

    2024年1月5日,国际独立第三方检测、检验和认证机构德国莱茵TÜV大中华区(简称“TUV 莱茵”)为星宸科技颁发ASPICE L2评估认证证书,标志着星宸科技软件开发流程体系已达到国际标准,完全满足全球汽车厂商和Tier1合作
    的头像 发表于 03-21 09:32 806次阅读
    星宸科技通过ASPICE CL2级认证,以国际<b class='flag-5'>软件开发标准</b>守护产品质量

    如何通过人工智能(AI)克服汽车软件开发挑战?

    关于“如何通过人工智能(AI)克服汽车软件开发挑战”的网络研讨会,本文总结了研讨会的关键观点以及相关白皮书和专访,帮助读者更好地了解汽车软件行业中的最新趋势和解决方案。
    的头像 发表于 02-28 15:01 1229次阅读
    如何通过人工智能(AI)克服<b class='flag-5'>汽车</b><b class='flag-5'>软件开发</b>挑战?

    2024年全球汽车软件开发状况调查-首次中国汽车软件开发专业人士问卷征集

    今年,Perforce联合北汇信息一起,首次诚挚邀请中国汽车软件开发专业人士参加该报告2024年的调查。这项调查涵盖了发现汽车软件工作人员面临的最新趋势、挑战和技术,我们需要您的帮助!
    的头像 发表于 01-29 15:47 477次阅读
    2024年全球<b class='flag-5'>汽车</b><b class='flag-5'>软件开发</b>状况调查-首次中国<b class='flag-5'>汽车</b><b class='flag-5'>软件开发</b>专业人士问卷征集

    keil arm软件开发指南

    电子发烧友网站提供《keil arm软件开发指南.pdf》资料免费下载
    发表于 01-26 15:51 7次下载

    汽车软件开发CAEdge框架关键技术

    软件定义汽车中,汽车功能主要通过软件实现,不再仅仅依赖硬件。这种将软件与硬件解耦的方式使得新功能和软件
    发表于 01-24 14:16 558次阅读
    <b class='flag-5'>汽车</b><b class='flag-5'>软件开发</b>CAEdge框架关键技术

    嵌入式软件开发软件开发的区别

    嵌入式软件开发软件开发是两个不同的概念,它们在一些关键方面有着明显的区别。嵌入式软件开发是指开发嵌入在硬件设备中的软件,而
    的头像 发表于 01-22 15:27 2277次阅读