背景
如何设计开发一个符合功能安全的模块,大多都是按照Aspice的规范去做。所以理解Aspice就很重要。
什么是Aspice
英文全称:Automotive Software Process Improvement Capability dEtermanition
ASPICE4.0文档
汽车软件过程改进及能力评定,是汽车行业用于评价软件开发团队的研发能力水平的模型框架。最初由欧洲20多家主要汽车制造商共同制定,于2005年发布,目的是为了指导汽车零部件研发厂商的软件开发流程,从而改善车载软件的质量。
德国的一些整车厂,一起推动和制定了这个规范。
这么一个组织
AUTOMOTIVE SPICE SIG
AUDI AG, BMW Group, Daimler AG, Fiat Auto S.p.A., Ford Werke GmbH, Jaguar, Land Rover, Dr. Ing. h.c. F. Porsche AG, Volkswagen AG
and Volvo Car Corporation
指定 DA AK13 工作组负责开发Automotive SPICE® (Software Process Improvement and Capability dEtermination)该工作组的成员大部分还是上面那个组织的成员。
他们还负责如下内容:
- 编写Automotive SPICE的参考指南
- 解释Automotive SPICE的参考指南
- 支持VDA AK16工作组 (ISO 26262的软件部分)
一些基础概念
- 该组织制定一个模型,用于软件工程提升和能力确定。想法来源于ISO/IEC 15504(允许在同一个共识下建立特定领域的模型)。其中15504规范里定义了过程的所有编号,Aspice中引用的部分编号,下文会提到(比如ACQ.3、SYS.1、SWE.1、SUP.1、MAN.3等)
- Automotive SPICE包含了用于执行过程评估的方法和结构
- 允许组织
- 检查和评估他们自己的流程
- 使用评估模型作为改进流程的指南
- 评估其他组织(例如供应商)
为什么使用Automotive SPICE
- 更好的过程会促成更高的质量(大众对于达到更高过程能力影响的声明)
- 可以有效的尽早发现问题(来源BMW提供的数据)
在这里插入图片描述
- 外部的压力
汽车软件供货关系:汽车整车厂 <- 一级供应商(Tier1) <- 二级供应商(Tirer2)
当前整车厂在选择供应商时,如何进行选择呢?ASPICE就是一个衡量标准;
那么传导到供应商那里就是如果拿不到高等级ASPICE,就丧失了供货能力。
其中ASPICE流程是大众集团对其全球范围内对供应商软件开发能力的强制性要求
Automotive SPICE过程评估模型
是一个二维评估模型,一个是过程维度,一个是能力维度:
Automotive SPICE过程域
汽车电子智能化最近发展迅速,SPICE也进行了几次更新,最新的是SPICE4.0
其中这里面每个过程的编号,就是从15504规范里选取的,因为SPICE是针对汽车硬件和软件的开发,只用到了一部分,也就是为什么上述的一些编号不是连续的原因。
能力等级
评定过程属性
过程属性的评定按以下步骤从0-100%计算:
- N (Not achieved) 对应0-15%.
在被评估的过程中,有很少或没有证据表明定义的过程属性得到了达成。 - P (Partially achieved) 对应> 15-50%.
在被评估的过程中,有一些证据表明对定义的过程属性进行了执行,并得到一些达成。过程属性的达成在某些方面可能是不可预测的。 - L (Largely achieved) 对应> 50-85%.
在被评估的过程中,有证据表明对定义的过程属性有系统地执行,并得到显著的达成。过程属性相关的一些弱点可存在于被评估的过程中。 - F (Fully achieved) 对应> 85-100%.
在被评估的过程中,有证据表明对定义的过程属性有完整地和系统地执行,并得到充分的达成。没有过程属性相关的显著的弱点存在于被评估的过程中。
评审结果
一些思考
其实Aspice就是定义了一套软件开发的整个流程以及如何对整个开发流程进行管控;和华为的IPD开发流程很像,定义了每个开发流程以及每个流程的输入和输出是什么,然后还要能追溯,能评估;
那我们按照Aspice进行所有的软件活动,那么就会很高概率能通过功能安全认证了。