ASPICE现在越来越多的被OEM和零部件供应商提及和重视。ASPICE几乎成为汽车行业的通用标准和准则。那么什么是ASPICE呢?
在介绍ASPICE之前,九脑汇学院不得不提及的是CMMI。
CMMI简介CMMI全称是能力成熟度模型集成(Capability Maturity Model Integration),是在1994年由美国国防部与卡内基-梅隆大学下属的软件工程研究中心以及美国国防工业协会共同开发和研制的,其目的是帮助软件企业对软件工程过程进行管理和改进,增强开发与改进能力。
CMMI基本上都采用IDEAL方法来进行过程改进,通过不断的分析差距、建立计划、实施行动、总结经验,来获得提升。
CMMI包括了多种模型,其中开发模型(development model)可用于指导产品开发,简称CMMI-DEV。而CMMI-DEV v1.3一共有22个过程域,大致有过程管理、项目管理、工程管理、项目支持四大类。
ASPICE历史ASPICE的全称是Automotive SPICE。很明显的看出ASPICE是由SPICE发展而来。而SPICE是由国际标准化组织ISO、国际电工委员会IEC、信息技术委员会JTC1发起制定的ISO15504标准。其项目名为“软件过程改进和能力测定”(Software Process Improvement and Capability dEtermination),简称SPICE。
ASPICE在2005年5月发布了初版,经过评审和最终检查,于2005年8月正式发布。ASPICE从最开始的2.0版本,不断发展更新,现在最新的ASPICE是2017年11月发布的3.1版本。
其实,基于SPICE,医疗、航天等行业也制定了自己的行业SPICE标准。
ASPICE总览ASPICE其实包含两部分:过程参考模型、过程评估模型。过程评估模型从过程参考模型中选择过程并增补指标。这些指标支持收集客观证据,使评估师能够根据能力维度对过程进行评定分配。
过程参考模型过程参考模型是基于V模型构造。ASPICE过程参考模型概览如图所示。
ASPICE将过程分成3个组别:主要生命周期过程、组织生命周期过程、支持生命周期过程。其中主要生命周期过程应该是大家讨论的最多,最为重要且比较难以完成的部分。在ASPICE中的工程过程主要由系统工程和软件工程。系统工程和软件工程在“V”模型中十分醒目,也是整个ASPICE的精华所在。
如果了解了“V”模型,ASPICE的整个流程和架构都会很好的理解了。
双向可追溯性和一致性是ASPICE特别在意的点。但这种可追溯性和一致性在项目的实操过程中,审查员一般只能以抽查的方式检测。特别是一致性,工具是很难检查出来。
因此ASPICE要求,需求文档需要被验证,且需要有具体标准定义。设计文档需要被评估,且评估准则可包括质量特性如模块化、可靠性、安全性(security)和可用性等。
过程评估模型ASPICE将过程评估模型分为:
1.过程实施指标——只适用于L1
2.过程能力指标——适用于L2~L5。
过程实施指标的类型又分为:
1.基本实践(BP)
2.工作产品(WP)。
过程能力指标的类型又分为:
1.通用实践(GP)
2.通用资源(GR)。
3评估指标与过程能力的关系如上图所示。
ASPICE层级
ASPICE将层级分为六级:L0~L5。个级别过程能力的评定参考表如下图所示。
ASPICE的不足及完善从ASPICE的名称就能看出,ASPICE的出发点在评估软件——“软件过程改进和能力测定”(Software Process Improvement and Capability dEtermination,SPICE)。因此ASPICE忽略了硬件和机械工程。
好在ASPICE加入“插件”概览。如上图所示,粗体字的过程是ASPICE 3.1 PRM/PAM的一部分,而其他工程过程(机械工程,硬件工程)却不在VDA QMC授权下开发。机械工程、硬件工程需要OEM或者供应商自己定义。