CMMIASPICE作为汽车产品开发中常用到的两个模型,有各自独特的优点,又根据不同的应用市场和侧重点,其区别又有所体现,本篇文章主要就这两个点说明两者之间的本质区别。

一、CMMI和ASPICE的介绍

1.1 CMMI介绍

先看一下维基百科关于CMMI的说明:

The Capability Maturity Model Integration (CMMI) defines a Process Area as, "A cluster of related practices in an area that, when implemented collectively, satisfies a set of goals considered important for making improvement in that area." Both CMMI for Development v1.3 and CMMI for Acquisition v1.3 identify 22 process areas, whereas CMMI for Services v1.3 identifies 24 process areas. Many of the process areas are the same in these three models.

CMMI全称Capability Maturity Model Integration,翻译过来就是“能力成熟度模型集成”,主要有3个模型组成,即CMMI采购模型1.3版、CMMI开发模型1.3版、CMMI服务模型1.3版,前2个模型总共有22个域,第三个模型则有24个过程域。这些过程域的目的就是通过一系列的实践来提升相关域,从而达到一个满意的目标。

白话文:CMMI就是通过提供一系列的模型使产品在开发过程中更加成熟和规范。

1.2 ASPICE(ISO/IEC15504)介绍

ASPICE,也叫ISO/IEC15504,同样也先来一段维基百科的介绍:

ISO/IEC 15504 Information technology – Process assessment, also termed Software Process Improvement and Capability Determination (SPICE), is a set of technical standards documents for the computer software development process and related business management functions.

ISO/IEC 15504 is the reference model for the maturity models (consisting of capability levels which in turn consist of the process attributes and further consist of generic practices) against which the assessors can place the evidence that they collect during their assessment, so that the assessors can give an overall determination of the organization's capabilities for delivering products (software, systems, and IT services).

ASPICE,也叫ISO/IEC15504,全称是Automotive Software Process Improvement and Capability Determination,是基于原始的SPICE模型发展而来,更适应于汽车领域的产品开发。同样,是通过一系列的流程规范来帮助开发者提升产品开发的能力。

通过CMMI和ASPICE的简单介绍,可以看出来二者都是为了规范产品开发过程并提升产品的开发能力,使产品达到客户满意度。所以二者在目标(Goal)上是相同的。但二者的区别也很多,详细的信息可以参考文章结尾处的链接或者其他相关资料。下面仅对比二者的几个区别。

二、CMMI和ASPICE的本质区别

2.1 应用市场方略的差别

CMMI由美国国防部(United States Department of Defense)与卡内基-梅隆大学(Carnegie-Mellon University)下的软件工程研究中心(Software Engineering Institute,SEISM)以及美国国防工业协会(National Defense Industrial Association)共同开发和研制的,即由SEI来维护。

ASPICE is maintained by INTACS and is mainly sponsored by German automobile constructors(VW, Daimler, Audi, BMW).所以,ASPICE主要有德系的一些车厂组成的联盟来维护。

所以,就目前来看,一些侧重美国市场的公司,会注重供应商是否有CMMI资质;而侧重以德系为市场的公司,会要求供应商的ASPICE级别。

2.2 核心内容的区别

(1) 过程域和级别的区别

A-SPICE v3.0 consists of 31 processes. 15 of these processes are mandatory, 7 are optional and the other 9 processes are being phased out. CMMI v1.3 consists of 22 process area's and only 1 of these could be optional in some cases (Supplier Agreement Management). CMMI makes a distinction between 5 maturity levels and 3 capability levels. A-SPICE only has capability levels (5) from which only 3 are really used (performed, managed, and established).

通过上述引用的参考文献可以看出:

  • 过程域的区别

ASPICE(V3.0)由31个过程域组成,其中15个是必须,7个是可选,剩下的9个在逐渐被淘汰。

CMMI(DEV-1.3)由22个过程域组成,其中只有1个供应商协议管理(SAM)是可选的。

  • 级别的区别

ASPICE只有5个能力级别,其中只有3个级别真正被应用(即:已执行,已管理,已建立)。

而CMMI有两种级别,一是按持续成熟度分为5个级别,按能力模型,分为3级。

(2) 侧重点的区别

The biggest difference between both models is the fact that A-SPICE focuses a lot on the engineering practices (V-model). They not only focus on software (as it was designed for in the beginning), but also on the systems engineering (software + hardware, electronics, mechanical, etc.). It pays little attention to project management & other organizational practices while these are very well documented in the CMMI-model.

由此可见, ASPICE更多地还是侧重V模型开发相关的实践,它不仅关注软件开发,而且还关注系统工程的设计,软件,硬件是怎么设计的,各模块之间的接口设计,之类的。它不太关注项目管理和一些组织级的实践。

而显然,CMMI中更详细地阐述了对项目管理(PMC,PP)还有组织级(OT,OPD,OPF)等实践的要求。

最后,来一张ASPICE和CMMI的过程映射关系:

三、参考文献

CMMI官网:https://cmmiinstitute.com/

ASPICE官网:http://www.automotivespice.com/

CMMI维基百科:https://en.wikipedia.org/wiki/Process_area_(CMMI)

ASPICE维基百科:https://en.wikipedia.org/wiki/ISO/IEC_15504

网页链接:CMMI和ASPICE的本质区别是什么?

网页链接:Automotive SPICE versus CMMI: method comparison

收集的相关论文: