前言
前两天的话题收集中,希望了解质量管理体系的票数是最多的。所以接下来几天,小编就给大家分享一些质量管理体系方面的内容,希望大家能积极参与留言、讨论。
说起质量管理体系,很多人都听过ISO9001,不过这套体系主要应用于制造行业,在我们IT行业,用的更多的CMMI体系,或者根据它裁剪出来的一套流程体系。
小编接下来要分享的,也是这一套体系。希望通过小编的分享,大家能了解以下内容:
CMMI是什么?
CMMI全称是Capability Maturity Model Integration,即能力成熟度模型集成( 也有称为:软件能力成熟度集成模型)。
定义:对于软件组织在定义、实现、度量、控制和 改善其软件过程的各个发展阶段的描述。
目的:帮助企业进行对软件工程过程的管理和改进 , 增强开发制造能力 , 从而能按时地、不超预算地制造质量的软件。
通俗一点说,CMMI就是一套指南,做事的一般方法,改进质量的参考框架。我们参考它提供的方法,通过控制我们的项目管理过程,来达到提高软件质量的目的。
CMMI模型中涉及很多的术语,大家可以去看看百度词条【CMMI】。
CMMI分了5个等级22个过程域,分别是CMMI1~CMMI5,但CMMI1和CMMI2对项目管理活动的指导作用是很小的,企业要做CMMI认证都是要通过CMMI3。给一张过程域分布图给大家参考,了解一下即可。
CMMI有什么用?
很多传统的软件公司,认证CMMI3主要是出于商业目的。很多招标都把通过CMMI3作为门槛。而且通过CMMI3的认证,可以一定程度上提升企业形象,间接的提高企业竞争力,避免一些个别客户的质疑。
当然,多数做CMMI认证的单位也希望借助这套体系来改进或者解决项目管理中出现的问题。先来说说软件企业常见的问题:
1. 软件项目无法按期交付,费用超出预算 ;
2. 需求规格说明总是一改再改 ;
3. 人员的变动对组织带来很大的影响 ;
4. 维护成本居高不下 ;
5. 不能在顾客希望的时间内完成维护 , 带来顾客抱怨;
6. 软件的可移植性差;
7. 软件的可复用性差。
大家可以试想一下,平时遇到这些问题时我们都是怎么去解决呢?
我想每个人都能说出个一二三来。
问题在于,是否有更好的方式呢?一般来说是有的。
项目管理中的问题大都是共通的,CMMI通过积累和研究这些问题,给出了一些问题解决指南。拿需求频繁变化这个问题来说,原因是什么呢?可能是因为客户想法一直在变,可能是设计时考虑的不周到,到了编码或者测试阶段才发现问题,也可能是需求写的不够清晰,导致不同的人产生了不同的理解。如果是后者,我们是否可以通过出一个“完美而标准”的《需求规格说明书模板》来改进甚至解决呢?答案是肯定的。
再比如说,在资料库整理方面。我见过一些单位的项目资料库,简单来说就是一个字“乱”。每次要耗费大量时间才能找到想要的资料,不同的项目资料整理方式还不一样,有时候甚至有关键资料缺失。更有甚者,资料库都没有,人员一流动,整个团队都可能无法运转。这种情况,我们是不是可以通过制定一些规范来解决这种问题呢?不言而喻。
至于其他的,如果公司或者项目有需要,我们可以参考CMMI里面提供的指南来提高项目的可视性、评估工作量、控制成本......这里就不一一细说了。
管理的本质就是解决问题,CMMI对于测试经理来说是一个提高管理能力的法宝。
适用什么样的公司?
无论什么样的公司或团队,都可以套用cmmi中的一些方法,区别在于套用的多少。
CMMI的目的在于通过各种方法将“质量”推到极致,但企业实际运营中,更多情况是需要在质量、成本和时间之间做好平衡,这种情况下,我们就需要选择性的进行裁剪了。
给大家看一下我们单位曾经做的裁剪:
CMMI怎么用?
讨论这个问题有一个前提,是公司要用CMMI3的体系管理项目。
很多通过CMMI3认证的企业都会成立一个组织,即PMO(项目管理办公室)。由PMO来推行CMMI体系在企业中的施行。
如果没有这样的组织,测试负责人也可以自己研究CMMI,然后根据企业的实际情况进行裁剪,制定不同项目阶段需要出具的文档成果,以及使用的模板。
给大家做个参考:
未完待续.....