汽车软件
文章平均质量分 87
水轻言
这个作者很懒,什么都没留下…
展开
-
汽车软件单元测试的要点与意义
主要包括控制流分析(如语句条件分支、循环迭代次数)、数据流分析(如变量值的传递)、代码复杂性(如圈复杂度、路径长度)、依赖关系(如函数之间的调用、模块之间的依赖)等。通常,基础的覆盖度(如语句覆盖和分支覆盖)是必要的起点,而在需要更高可靠性和安全性的项目中,可能会选择更严格的MC/DC覆盖度,比如,涉及ASIL D的模块。理论上,对于手写代码的合理性与正确性,他人及更有经验的他人去检查一遍,有一定的意义,甚至某些案例下,会胜过后期测试。但有时候,涉及到第三方标准库时,就无法按照这个规则执行了,原创 2023-10-26 22:10:19 · 96 阅读 · 1 评论 -
评价ASIL D软件代码的11个指标
在处理错误或跳出多层循环时,有很直接的效果,但非逻辑性的跳转会让代码很难理解、出了错误也很难追踪。存在的参数越多,就越容易在调用函数时出错,比如,参数顺序错误。代码也是一样,太长的代码行会明显增加阅读代码的难度,很现实的问题是,本文基于嵌入式ASIL D产品的开发经验和行业标准,分享了11个常用的代码指标及推荐限值,供参考。出口点通常是return语句,所以我们也建议尽量减少其数量,比如,一个函数的return维持在。在保证合理的逻辑、换行和缩进的前提下,要尽可能将长代码拆分。)时,就会发生嵌套,每。原创 2023-10-26 22:01:07 · 129 阅读 · 1 评论 -
汽车视角下看DevOps的内核和适用性
另外,我们也可以放大汽车行业Operation的范围,比如,将验收部门理解为Operation,而后去尝试适配DevOps的理念或实践。这里必然要以务虚的文化作为起步,但我们又不想谈文化,因为文化是所有人都知道且认同,但又不知所云或不以为然的东西。文字解决不了这种问题。当然,如果往长远预想,OTA足够成熟自由后,开发阶段的变更就能够及时持续体现在消费者车上,那样,才更接近IT DevOps的场景。通常,我们要建立全面的监控系统,监控各个环节的数据表现与日志记录等,一旦生产环境发生意外,能够第一时间识别。原创 2023-09-28 10:20:33 · 39 阅读 · 0 评论 -
汽车软件集成的5个层次
这种分工与标准化的好处不言自明,但也增加了很多集成点,集成点多了就会造成沟通协调复杂或者解决方案整合困难等弊端,而这也是我们做汽车软件要充分考量的。对于软件来说,尤其要考虑对手件联调,越来越多的电子功能需要多模块协同,最常见的诊断、通信问题就是该环节频繁识别出来的。二来呢,这些都属于技术特性,技术差异点只能说明汽车的“软件”和互联网的“软件”,而非“汽车软件”与“互联网软件”。传统汽车的各个子系统或者域通常是分离的,相互之间大体隔绝,所以涉及到的是装配,而非集成这个概念。原创 2023-09-28 10:19:01 · 109 阅读 · 0 评论 -
一次十分恶劣的用车经历后对产品体验的进一步理解
我以前调研过某款老牌合资车和某款新势力车型电芯诊断逻辑的功能安全策略(数据已脱敏,只描述逻辑),前者选择的是电芯丢失通讯10s就会报故障灯,电芯丢失通讯30s,强制下电,这是一种安全保障机制,但给用户非常差的体验和低质量的观感,而后者的诊断时间设置为2分钟,也仅仅是亮起故障灯,也就是说,你在路上狂奔,但电池状态2分钟内是未知的。好不容易弄好,再去扫码充电,泛黄的电子显示屏显示了一个隐约的二维码,但碍于阳光直射,它也是犹抱琵琶、扭扭捏捏,让我左扫右扫扫不上,做贼一样,用胳膊挡着太阳,才算扫成功。原创 2023-09-28 10:14:01 · 48 阅读 · 0 评论 -
再看敏捷(SAFe)对汽车行业的价值
话没毛病,毛病是,我们经常会看到一种本该令人匪夷所思却又被教育“年轻人不要太较真"的现象,比如,A团队正在做一件B团队半年前已经证明没意义的事,而C团队正在用另一种思路做同样的事,但是,很有默契的是,ABC这三个团队都悄悄地等待一鸣惊人,见面时还要微笑致意,我啥都没干。反复纠缠之下,我是对小团队小规模敏捷没啥耐心了,而正在我与敏捷彻底决裂的最后关口,最近,参与到了一个SAFe转型项目,些许点滴让我意识到,似乎这些因素确实会对大团队汽车软件开发有些益处,这给我带来了兴致。再去沟通,告诉我们两周后才接新需求。原创 2023-09-28 10:06:27 · 123 阅读 · 0 评论 -
有关复杂汽车软件bug管理的思考与探索
这种不能自拔有两层意思,第一层是难以自拔,因为尤其在后期,大多数人的大多数精力都集中在bug上,写bug,测bug,分bug,数bug,解bug,而第二层是不愿自拔,毕竟,追着条理分明的bug去做事,相对简单,也相对体现价值......:现在很多汽车软件都是多方跨组织协同开发的,如果站在供应链的维度看一个复杂问题,就有必要知道问题所处的组织层级,是主机厂,是Ter1,是第三方软件,还是芯片,或者软件平台提供方。其中,必然少不了bug,甚至在项目中后期,说bug牵引着项目的运转,都不算过分。原创 2023-09-28 10:05:31 · 82 阅读 · 0 评论 -
汽车ECU测试中的几个共性问题
最近的工作需要经常和测试打交道,但我并非这个细分领域的行家,看着几千条测试用例和五花八门的测试设备与工具,以及工程师展示的繁复曲线与图表,着实有些眼花缭乱,没太看懂,不由得陷入了深深的思索......原因是老师说的一句话,“话我照讲,实验你们照做,但你们多年后肯定记不住我们今天做了什么,只要记住一点,焦利氏称是测微小力的......”老师的反向操作倒也是6,不肖弟子把老师是谁都忘了,系统测试要尽量真实,真实的线束,真实的负载等。测试是个非常庞杂的课题,值得反复研究,限于精力与时间,本文简单总结,点到为止。原创 2023-09-28 10:04:54 · 38 阅读 · 0 评论 -
汽车的用户体验具体是在讲什么?
由于座舱涉及的安全与法规问题较少,对车圈外来者,算是软柿子,再加上种种其他因素,座舱概念铺天盖地铺展开来,对应地,大众关注点逐渐转变为用户的整体感受,开发人员也开始跳出独立的解决方案,放在整车系统层面去横向拉通。可真是,士别三日,当刮目相待。当然,黑屏死机,大家都知道不好,但死多久,啥时候黑,才算是真不好,也说不清楚。很明显,这些看得见的东西都是用了心、花了钱的,随后,那是否有类似0.02个PPM失效的疑问,或者同等价位下汽车各属性必然顾此失彼的现实,于我确实也不明显、不敏感了,不可见的东西,谁知道呢?原创 2023-09-28 10:02:14 · 103 阅读 · 0 评论