技术开发 频道

ISO和CMM,我们该选择谁

【IT168 技术文章】

    网上评价 ISO 和 CMM 差异和共同点的文章比较多,但大多是从标准条文本身进行比对的。下面我将从适用性方面对比一下 ISO 和 CMM ( I )两套质量管理体系框架。

    1 管理水平的适用性

    ISO 系列标准虽是就质量管理而言,然而也可以看作一个浓缩的管理学框架,尤其是作为认证审核依据的 ISO 9004 : 2000 。它是一个大而全的系统,几乎覆盖了公司管理的各个方面。它对一个尚无完整质量管理体系、依靠自身发展过程中自发、被动或应急性的制定一些组织管理和研发管理过程和规范的公司来说,是一个很好的快速建立公司系统化管理框架的参照体系。通过这个体系的建立,把公司的各组织机构的业务流程、接口关系、人员岗位及部门职能界定、各种公司管理制度有机的整合起来。如果在这个过程中能够配合 BPR 进行,彻底梳理原先大家都意识到、但却无从下手的管理沉疴,效果会更好。

    CMM 是对软件开发实践所涉及的整个工程流程的规定和分析,它的体系既包括软件工程过程本身,也包括对这一过程的管理。它更多的是提示我们所处各个管理成熟度等级的阶段目标,以及为了达到这些特定的阶段目标而分解的大量具体实践。它没有告诉我们怎么达到这个目标,因此它是基于组织(公司)能意识到自身差距并能针对性的采取改进措施。它更多的是站在各个具体的点上去思考问题。纵观 CMM2 的各个 KPA ,如果公司连保证这些 KPA 实施的管理基础都不具备,从二级 KPA 的一个个点上去突破,很难达到以点带面的效果。

    这是一种比较可取的方式是先来一场组织管理上的革命,去创造这种质量管理水平提高的管理基础。对于一个具有一定管理基础的组织,引入 CMM ( I ),从这些具体的点上去采取措施,对于组织过程能力的持续提高、组织过程质量的持续改进将起到极大的推动作用。而组织管理革命的一个利器正是 ISO9000 质量管理体系。

    当然,我们在组织建立 ISO9000 质量管理体系的过程中,也可以借鉴 CMM 的思想,抓阶段的关键问题,分步实施,逐步推进。 因为面对 ISO9000 这一标准,对大多数组织来说,要一下子全面执行是有很大难度的,并且其有效性也难于体现出来。这就需要组织根据自身的实际情况,分析组织的现状、资源、文化、人员素质和面临的社会环境,找出同 ISO 9004 标准的差距,制订一个中长期的目标计划,从选择一、二个 ISO 9004 的条款要求的试点做起,成熟一项巩固一项,逐个地推广应用,并制订出具体的实施进度计划,在一定的期限内完成 ISO 9004 标准全面贯彻执行工作。

    由此,我更倾向于一个公司先基于 ISO9000 质量管理体系建立起质量管理体系框架,培养组织的质量意识。然后在此基础上,选择若干过程域进行重点监控,以逐步达到 CMM 某个成熟度等级的要求。

    2 复杂度的适用性

    这里所讲的复杂度包含两个方面的意思:一是指研发过程本身的复杂度;另一是指组织机构的复杂度。

    基于我对 ISO 和 CMM 以下理解: ISO 是一个达标性的体系,大而全,比较偏向于宏观把握; CMM 则着眼于具体实践,对各个关键过程域进行分解细化,偏向于微观控制。

    个人倾向于在一个研发过程本身复杂度不是很高,但组织复杂度由于组织本身的发展变得庞杂的组织中推行基于 ISO 的质量管理体系;在一个组织机构相对完善,由于项目规模本身的扩大而迫切需要引入适当的过程监控的组织实施基于 CMM 的质量管理体系。

    下面阐述一下两个概念:

    何谓研发过程复杂度?

    本文定义的研发过程复杂度是指针对组织正在实施的单个项目(或产品,以下统称项目)研发活动而言的。主要考虑项目规模(项目范围和工作产品规模)、项目团队规模、项目周期等因素。本文考虑最核心的指标为项目团队规模。

    何谓组织机构复杂度?

    本文定义的组织机构复杂度是指组织的人员规模、组织的机构设置层次结构及接口关系上。

    一个组织结构复杂度高的公司,并不意味着它的研发过程复杂度高。但一个研发过程复杂度较高的组织,往往可以推断其组织结构复杂度较高。如:一个 1000 多人的从事超市、酒店行业 ERP 的软件公司、其人员分布于各 30 人月以内( 6 人 5 月左右)的各小项目的实施,公司按照地域和业务领域划分 4 个事业部,分四级进行管理(总裁 —> 事业部总经理 —> 部门经理 —> 员工)。按照本文定义的复杂度含义可以断言,该公司的组织结构复杂度较高(四层管理、 1000 人以上规模),但其研发过程复杂度较低(单个项目投入人数在 10 人内)。

    为了更好的对比分析请看下面的统计数据:

    到 1999 年止,全球范围内共进行了 1330 次 CMM 评测,总计评测项目有 5452 项,参加评测的机构逐年攀升,其中有 7.2% 是海外项目,参加国别有 34 个,参加机构类型,商业机构占 56.1% ,美国国防部供应商占 29.8% ,军方和政府机构占 10.5% 。其中,初始级机构占总评估数的 43.2% ,可重复级占 34.2% ,定义级占 17.3% ,管理级占 4% ,优化级占 1.4% 。第二级(可重复级)比例最高的为 25 人到 100 人的机构,第三级(定义级)所占比例最高的为 1000 到 2000 人的企 业,第五级(优化级)所占比例最高的为 2000 人以上的企业。

    于是乎国内各咨询机构和各有意使企业通过认证的管理者得出结论,国内的企业可以以上述统计数据为参照,选择适合自己的认证目标。各位看官请试想一下:一个由众多独立核算的事业部或子公司粘合而成的一个 1000 多人的公司,分各个业务方向从事着众多 30 人月( 3 - 5 个人, 6 - 10 个月)上下规模的项目,其研发过程复杂度显然是不高的,其研发过程的可视性相对来说比较容易达到。此时组织的主要焦点在于如何降低其组织的管理复杂度,提高管理过程的可视性。如果此时严格照搬适合大团队研发过程管理的过程管理体系,到头来肯定是过程监控与研发实施活动成为脱节的两张皮,为了达到体系的要求去补大量的记录,为了真正不受羁绊的去更好的实施项目跨过很多死板过程的羁绊。个人倾向类似情况的组织(公司)真正从整理业务流程入手,建立一套着眼点在提高组织管理过程可视性的管理体系,不妨老老实实的按照 ISO 体系的要求,建立自己的质量管理体系。

    对应的例子是一个 100 多人的公司,其 100 多人的开发团队投入其核心产品的开发,所有组织活动都是围绕这个产品开发过程展开的。此时组织的质量瓶颈在于如何提高研发过程的可视性。此类组织我倾向于采用 CMM 建立逐步完善的研发过程质量监控体系。

    综上所述,从复杂度与质量管理体系选择上,可以得到下表的对应关系:

    组织机构复杂度 研发过程复杂度 关键问题 选择体系

    高 高 管理过程可视性 ISO

    高 低 研发过程可视性 CMM

    低 高 管理过程可视性 ISO

    低 低 研发过程可视性 CMM

    3 量化管理的适用性上

    CMM 和 ISO 9000 都强调过程改进。如果组织还没有一个文档化的研发过程,则首要任务是对当前的研发过程进行抽象、分析、整理并文档化,从而制定出一个符合本组织研发实际的研发过程规范,并从制度上确保研发过程规范的执行。

    如果已经具备了相对陈述的研发过程规范,组织需要做的是对这个研发过程规范在实际研发活动中的表现进行持续的评估,找出问题,然后对过程规范本身进行补充修订,然后找项目试点,最终推广应用。这也就是我们通常所说的持续改进。

    在阐述量化管理的适用性前,先来探讨一下为什么要进行量化管理?

    1随着组织的质量管理水平和质量意识的提高,越来越多的过程质量问题的不是可以通过直接的外在表现可以观察出来的。

    2 随着组织的质量管理水平和质量意识的提高,越来越多的过程质量问题的定位越来越难以通过其直接的外在表现进行判断。

    如何发现过程质量问题?如何定位过程质量问题的根源所在? CMM L4 的 “ 定量过程管理 ” 、 CMMI L3 的 “ 决策分析和决定 ” 和 CMMI L2 的 “ 测量和分析 ”KPA 很好的回答了这个问题:我们通过收集、整理和分析过程数据,并运用系统的决策方法从中得出分析结论,寻求问题的解决方法。

    请看下例:

    某组织最高管理者 2004 年以来,接到客户持续不断的抱怨,说系统稳定性差?当最高管理者在向产品线反馈该问题时,产品线说,我们的产品越来越稳定,去年的外部故障是 15 个,今年的外部故障只有 13 个。一切都那么的 OK ,为啥客户的抱怨却与日俱增呢?问题到底出现在哪里?该如何去纠正?

    产品线成立了专门小组寻找问题所在及解决之道。在收集数据的过程中,他们关注到这样一个现象, 2003 年产品售出 256 套( 25 个客户), 2004 年度产品一下子售出 6000 套( 300 个客户)。虽然报出的外部故障只有 13 个,比去年的 15 个有了减少,但其波及的范围(客户数)却成 10 倍的增加。

    问题症结终于找到了,我们产品质量的提高没有跟上我们市场扩张的速度。我们需要解决的最关键的问题是彻底解决现有故障,并作充分的测试,提高我们发布产品的稳定性。

    过程管理的核心是使过程状态可见并使过程可控;量化管理的目标是如何使前者更加精准。 ISO9000 虽然也强调以事实为依据的科学决策和 SPC ,并要求组织有这方面文档化的指南与要求,但它没有进一步说明从哪些关键点上去入手,而且它的 SPC 更多的是针对制造业的不良品而考虑的。

    CMM/CMMI-SW 是专门为软件研发过程管理设计的,它在各相关 KPA/PA 中蕴涵的量化管理的关键实践更具针对性、更细致、也更全面。 CMMI L4 更是明确要求: “ 对各个过程运用统计技术和其他定量技术对各个过程实施控制,建立了关于产品质量、服务质量以及过程性能的定量目标,并且把这些定量目标作为管理过程的准则。在过程的整个生存周期中,对产品质量、服务质量和过程性能都进行统计管理。 ” 在第 4 级上,对过程的性能是以统计技术或其他定量技术进行控制。并且从统计意义上说是可预见的。

    可见,在具有一定质量管理基础的组织内,可以参照 CMM/SMMI-SW 相关 KPA/PA 的要求,建立自己的研发过程度量体系,逐步推进量化管理。

    结论:

    组织在建立质量管理体系时,可结合本组织的管理水平、组织机构复杂度、研发过程复杂度的现状综合考虑,选择适合本组织的模型和体系。并可以在过程中参照 CMM/CMM-SW/SE 的要求,提高组织的量化管理水平。

 

0
相关文章