居然可以这样汽车评测软件有哪些好用(共享汽车软件有哪些)
信息来源:互联网 发布时间:2023-10-18
内附本文嘉宾PPT
在VCEC共创学院线下沙龙第4期中,国际软件测试认证委员会ISTQB®中国分会CSTQB® 及国际TMMi中国分会和国际需求工程IREB中国分会的核心发起人、副理事长、上海滔瑞CEO周震漪老师为大家带来
《汽车软件测试过程改进》精彩议题,从汽车软件质量当前面临的挑战、为什么有了ASPICE还需要TMMi等方面为大家讲解。(PS文末附有嘉宾的PPT)
1、汽车软件质量当前面临的挑战大家都知道,现在的汽车跟之前已经很大的不一样现在的汽车实际上你真正看到摸到的只是它的躯壳,它的灵魂已经是软件有一百多个ECU在控制着汽车的各个方方面面,这里面涉及到很多的数据采集、分析等,需要复杂的数据模型。
1.1无人驾驶内置传感器和执行单元(ECU相当于微电脑)的增多;更高的计算能力和通信能力 -对可靠性的要求越来越高1.2网络化第三方服务的整合;通过无线连接能更快、更高效地更新或部署新功能;未来汽车甚至可以在云端进行更多操作。
1.3电气化新电子产品的不断引入;通过先进和智能型的软件算法降低能耗1.4更多流动性共享汽车服务,以及通过 APP呼叫出租车等 -定制驾驶体验我们每年都期待汽车有新的发展,带来一些比较亮眼的车型,但是慢慢地会发现,现在汽车很多创新大部分都依赖于软件,新能源汽车里面的软件起着更重要和关键作用。
汽车更多的部分使用软件来进行控制,比如说新能源的电池、助动转向系统、刹车系统等其实这些方面都是属于安全关键系统,也就是说一旦软件出现问题以后,不但要你钱,更是要你命软件如此重要,那如何来保障软件的质量?。
软件的市场越来越大,汽车的无人驾驶技术、网络化、电气化、更多流动性等趋势发展,如何来保障软件的质量成为新的挑战我今天的分享主要从“技术”、“过程”和“人”这三个部分来谈谈保障汽车软件质量的一些粗浅想法2、
与汽车软件质量保障相关技术在汽车软件质量保障过程中需要技术和方法的指导,这些技术包括哪些方面呢?真正的质量保障不仅要了解领域的知识,例如,汽车的结构和操作等知识和技术,而且要了解社会价值,了解用户的感受和体验。
2.1测试环境做测试的都知道,在动态测试过程中的测试环境非常重要,是我们在测试中是否能发现问题的关键之一,但汽车软件的测试还需要一些特殊的测试环境(模拟和仿真技术) XiL,例如:模型在环(MiL)软件在环
(SiL)处理器在环(PiL) 硬件在环(HiL)汽车在环(ViL)2.2动态测试方法在汽车软件测试中单元测试是非常重要的,而白盒测试又是单元测试中一种有效方法白盒测试方法有多种,但它们的测试深度是不一样的。
例如,语句覆盖与MC/DC(改进的判定条件)覆盖深度是不一样的,消耗的资源不一样,要求也不一样什么时候使用语句覆盖,什么时候用MC/DC覆盖?这里面就有一个风险的因素起着作用例如,风险小的特征(或组件)可以用语句覆盖,风险大的特征(组件)要用MC/DC等,在汽车行业大家都知道,ISO26262里面有个ASIL概念,即安全完整性等级,首先要评估安全完整性等级(ASIL),然后根据安全完整性等级选择不同的测试技术,例如是语句覆盖还是MC/DC覆盖等。
除了白盒测试以外,我们还有黑盒测试,它是非常好的一个质量保障方法等价类划分、边界值分析,这二种方法针对大量输入和输出数据的测试时比较有用在汽车领域,很多功能和系统都是用状态模型来描述,然后通过这些模型来开发测试用例并开展测试。
汽车领域经常还会有背靠背测试、错误注入以及植入测试换句话说,也就是我们要有意识的去注入大量的错误,看系统是如何反应甚至要模仿一些错误场景和极端情况,验证汽车是否能正确应对甚至有时要在代码里面载入问题来看看这些测试方法和技术是否有效,是否真能够找到错误。
另外还有其他的测试方法,基于经验和缺陷的测试,例如探索性测试、缺陷攻击、错误推测、基于检查表等除了上述动态测试外还有静态测试,静态评审(根据风险采用不同类型评审)、静态分析,例如数据流分析 /控制流分析、代码规则扫描(例如,MISRA C)、安全性扫描。
其实我们会发现,测试仅仅有技术支持其实还是不够的,还要有好的测试过程的保障3、测试过程和过程改进在汽车领域具体有哪些规范、标准可以用呢? 3.1 ISO 26262道路车辆功能安全ASIL 安全完整性等级, 根据 Exposure(E)、 Controllability(C)和 Severity(S)定义:Risk = E * C * S。
风险Risk与 ASIL 关联,E:在软件和产品开发过程中需要进行风险分析和评估;根据风险或安全完整性等级 ASIL与测试技术(黑盒技术、白盒技术、静态测试技术等)关联;对于高风险点,可以从技术上加强可控制性( 减小 Controllability的值)来降低风险。
对于风险的管理,要求风险具有可追溯性讲到安全的话,大家也都知道安全有两个概念,一个是功能安全,另外一个是信息安全很早以前的汽车仅仅关注在功能安全,什么叫功能安全?通俗一点也就是说汽车或系统对用户造成的伤害或损失。
比如汽车的刹车系统失效,导致人员的伤亡;或开发的应用系统,用户使用系统时存放的数据被篡改或丢失
信息安全是什么?外界对系统非法侵入,导致对系统和用户造成的损失有了互联网以后,随着与外部世界的接触,信息安全越来越重要,也越来越难做以往采用的质量标准是ISO9126,在ISO9126质量模型中,软件的安全性确实是属于软件功能范畴,这里面的安全仅仅只是功能安全。
但是现在(ISO25000-10)除功能安全外还需要重视信息安全,可能会有黑客的侵入,导致各种敏感数据的丢失现在汽车上都有摄像探头和众多传感器,行程中会收集大量的数据,这也就是为什么国家不允许把这些汽车数据存储在国外的原因,因为这些数据通过分析可以获得大量敏感信息,会对国家的安全造成损失。
3.2 AUTOSAR,即汽车开放系统架构现在没有一个国家的汽车是由同一家公司生产出来的,这其中涉及到700家甚至更多的供应商这其中每一家供应商开发的配件和软件整合起来又要保障整车的质量按照统一的标准进行开发,同时保障整车的质量,这就是在汽车行业里面非常重要的一个开发平台要求和标准。
而这其中还涉及到软件的周期长,同时过程中还会存在变更和维护3.3 Misra C分享一下心得,目前在汽车的软件开发过程中已经有人在做敏捷,但是不能因为敏捷而敏捷用牺牲质量来换取的敏捷是非常不可取的Misra C(是由汽车产业软件可靠性协会MISRA提出的C语言开发标准)能告诉你代码应该怎么来写,让测试和维护更方便和规范,大大节省了维护的时间。
3.4 ASPICE即汽车软件过程改进及能力评定ASPICE即汽车软件过程改进及能力评定,在汽车里面也是一个非常著名的、运用广泛的标准,相当于汽车领域的CMMi。
3.5 TMMI软件测试成熟度模型集成使用TMMi 模型进行测试过程改进TMMi(测试成熟度模型集成)是一个阶段型模型,TMMi中有五个级别,规定了成熟度级别和测试过程改进的路径每个级别都有一组过程域(PA),组织需要实施这些过程域,来达到对应的成熟度级别。
为了实施相应过程域(PA),必须满足该过程域下的所有目标( SG+GG),而目标又通过实践来实现
标准化、系统化、规范化是质量保障及能力提升建设的重要基础,没有标准就没有质量!
4、新型测试人才以人为本,人是关键要素不仅要掌握各种相关技术,还要有较强的质量意识, 不仅要具备“硬技能”,还要具备各种“软技能”4.1 新型测试人才技术再好,但是人不行,生产力达不到一定的高度,还是不行。
所以人、技术和过程都是非常重要的
4.2新型测试人才需要具备的能力那么作为一个测试工程,特别是汽车领域的测试工程师,需要掌握很多很多知识,例如需求工程,要了解什么叫好的需求,什么叫不好的需求,哪一个需求可测,哪些需求不可测,需求是否完整等等。
新型测试人才需要具备的能力:知识:主要靠学习(业务知识、开发技术、测试技术、质量保障技术、管理技术、过程改进技术、标准、规范……)技能:需要通过工作场景来训练(从知识到技能)经验:需要实际的工作经历积累,尤其通过失败后总结的经验累积。
素养:需要思维方式和工作态度的培养,需要一个长期坚持、不断重复、形成习惯。4.3 关于iSQE
一言以蔽之,汽车软件质量保障不仅仅需要依靠先进技术、需要好的过程保障,我们每个人都也都起着非常重要的作用,是不是有敬业精神、责任心,是否能够跟同行们之间相处,以及沟通能力怎么样等等,所以保障软件质量的最重要因素是“人”。
——资料延伸——
—— THE END ——▼关注
免责声明:本站所有信息均搜集自互联网,并不代表本站观点,本站不对其真实合法性负责。如有信息侵犯了您的权益,请告知,本站将立刻处理。联系QQ:1640731186

