一、什么是SPCA
SPCA认证的全称“软件过程及能力成熟度评估”,又称“双模认证”。是软件过程能力评估和软件能力成熟度评估的统称。
为了贯彻国务院18号文件和47 号文件精神,加快发展我国软件行业,提高国内软件企业的竞争力,原信息产业部会同国家认证认可监督委员会,在研究了国际软件评估体制尤其是美国卡内基-梅隆大学SEI所建立的能力成熟度模型CMMI的基础上,考虑国内软件产业实际情况,在2001年建立了SPCA评估体系。
SPCA是根据CMMI的基础根据国内现状改进发展出来的软件能力成熟度模型国内标准,都是软件过程能力评估和软件能力成熟度评估的。也就是说SPCA和CMMI认证面向的群体是完全一样的,只是认证的依据(标准)不同而已,SPCA 评估依据的标准是信息产业部《SJ/T 11234-2001 软件过程能力评估模型》和《SJ/T11235-2001 软件能力成熟度模型》。
这两个标准是在深入研究了 CMM、CMMI、ISO/IEC TR15504、ISO9000、TL 9000 以及其他有关的资料和文件后,结合国内企业的实际情况制定的行业标准,该标准于 2001 年 5 月 1 日发布实施。《SJ/T 11234-2001 软件过程能力评估模型》针对软件企业对自身软件过程能力进行内部改进的需要,而《SJ/T 11235-2001 软件能力成熟度模型》则针对软件企业综合能力第二方或第三方评估的需求。
- SJ/T 11234《软件过程能力评估模型》
针对软件企业对自身软件过程能力进行内部改进的需要,与CMMI连续表示形式基本相同。该模型有22个过程,分为4大类,即:过程管理类、项目管理类、工程化类和支持类,每个过程能力从0到5划分为6个评估等级,每个等级包含了通用目标、通用惯例、特定目标和特定惯例,它们组成一套衡量准则。按此准则对实际运行的过程进行评估,可以确定当前软件过程的能力状态。对每个过程评估后,可以得到企业软件过程能力的一条“谱线”。企业还可以针对软件开发项目,根据项目的目标和要求,有针对性地“弄清楚”有关过程的能力状态,实施必要的过程改进,以支持项目的完成。
- SJ/T 111235《软件能力成熟度模型》
针对软件企业综合能力第二方或第三方评估的需求,与CMMI分阶段表示形式基本相同。该模型用成熟度1~5个等级来描述综合软件能力。与SJ/T 11234相同,也有22个过程方面。除了成熟度等级1外,每个等级包含若干个过程方面,每个过程方面的实施情况由相应目标和惯例的实施情况体现。采用这种衡量准则可以评估软件企业的综合能力——软件能力成熟程度。
- SPCA评估遵循《软件过程及能力成熟度评估指南》
该指南是国家认监委和信息产业部2002年8月共同发布的利用SJ/T11234或SJ/T11235实施评估的操作指南。评估过程由经过培训的专业队伍以评估参考模型作为确定过程的强项和弱项的基础而对一个或多个过程进行检查。从不同用途考虑,评估分为内部过程改进评估和顾客选择评价两种。
二、SPCA的认证条件及等级划分
1、SPCA认证申请受理的条件
1) 申请企业从事软件开发的时间不应少于3年;
2) 专职软件开发和测试人员的数量不应少于20人;
3) 具有完整软件开发的全过程经历(准确来说就是能够提供完整的软件开发全套文档)。
2、SPCA认证分为五个等级:
第1级 初始级
在第1级成熟度等级的情况下,过程一般是特定的和无序的。处于成熟度等级1的组织一般不具备稳定的开发环境。在这类组织中,项目的成功往往取决于个人的能力和拼搏精神,离开了具备同样能力和经验的人,就无法在下一个项目中获得同样的成功。处于成熟度等级1的软件组织在这种特定的无序环境中常常也能生产出可以工作的产品,但是,往往伴随着的是项目超过预算和拖延进度。
第2级 受管理级
一个软件组织如果达到了成熟度等级2的各个过程方面的全部目标,就表明这个组织的软件能力达到了第2级成熟度等级。就意味着该软件组织已经确保有关的过程在项目一级得到策划、被形成了文件、得到执行、受到监督和控制。在这一级上,项目要达到针对过程确定的诸如成本、进度和质量目标之类的具体目标。
第3级 已定义级
处于成熟度等级3的软件组织是已经达到了等级2和等级3的各个过程方面的全部目标的组织。在等级3上,所要执行的过程是从组织的标准过程集合和组织过程财富剪裁而来,是与将要运行该过程的环境相适应的。这些要执行的过程是得到理解和恰当赋予特性的,并且用标准、规程、工具和方法予以描述。
第4级 定量管理级
处于成熟度等级4的组织是达到了等级2、3和4级各个过程方面的全部目标的组织。在这个等级上,对各个过程运用统计技术和其他定量技术对各个过程实施控制,建立了关于产品质量、服务质量以及过程性能的定量目标,并且把这些定量目标作为管理过程的准则。在过程的整个生存周期中,对产品质量、服务质量和过程性能都进行统计管理。
第5级 持续优化级
处于成熟度等级5的组织是达到了成熟度等级2、3、4和5级各个过程方面的全部目标的组织。成熟度等级5侧重于过程性能的持续改进,无论是渐进式的改进还是变革式的改进。在这个成熟度等级上,是在了解过程内在变化原因的基础上持续改进过程。建立起组织的定量过程改进目标,作为管理过程改进的准则,并且,这些目标将适时修改,以反映不断变化的本组织的业务目标。实际实施的过程和组织的标准过程集合都是改进活动的对象。
三、企业实施SPCA的流程
1、企业实施SPCA的流程
企业实施SJ/T11234或SJ/T11235并进行评估,一般需进行如下7个阶段:标准培训、组织职能建立和文件体系完善、文件评审、差距分析、持续支持、中期评估、后期评估。其中各阶段的目的如下:
标准培训:旨在建立公司人员的软件过程改进意识,了解过程改进原理,以利SJ/T11234或SJ/T11235实施。
组织职能建立和文件体系完善:建立实施SJ/T11234或SJ/T11235的职能机构,明确职责;识别公司现存软件过程和文件,完善软件过程定义并建立完整的文件体系。
文件评审:评审文件体系的适用性,识别文件的改进之处。
差距分析:进行现状分析,识别与SJ/T11234或SJ/T11235的每个过程方面的差距,并制定一个行动计划来覆盖识别出的差距。
持续支持:实施持续支持以实施过程改进,并覆盖差距分析阶段识别出的差距。
准备性检查:对软件过程改进实施情况进行评估,为评估做准备。
后期评估:使用《软件过程及能力成熟度评估指南》的方法进行评估并定级。
2、SPCA认证的基本流程
SPCA认证流程分为:认证申请、准备性检查、现场评估和评估决定四大步骤。
认证申请:企业可以向SPCA评估机构申请评估。企业填写《评估申请书》,报送SPCA评估机构评审。评估申请书通过评审后,双方签订评估合同。
准备性检查:评估合同签订后,评估机构任命评估组长,成立评估组,确定评估目的和确定评估范围,确定评估输入,编写评估计划。
评估计划完成后,评估组可以着手准备性检查,由评估组成员填写PIID表中的证据,开展准备性检查工作。
现场评估:通过准备性检查,评估组根据双方确定的评估计划,开展现场评估工作。现场评估大体分为以下几个主要步骤:首次会议、组织过程改进情况介绍、文档检查、访谈、评估小组证据整理、评估大组证据整理、初步发现报告、定级、末次会议(最终发现报告)。
评估决定:完成现场评估后,评估组长向评估机构的技术委员会提交评估结果,由技术委员会对评估结果进行评审。评审通过后,颁发带中国合格评定国家认可委员会(简称认可委)标志的评估证书。


