`
softstone
  • 浏览: 480741 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

在中国开展CMM评估的几点建议

阅读更多

在中国开展CMM评估的几点建议

周伯生

(本文转载自软件工程专家网www.21cmm.com

 
  从美国的软件产业发展可以看到,软件产业有结构化生产方式(1975年-1995年)、以过程为中心的生产方式(1985年-2005年)和工业化生产方式(1995-今)等三个发展阶段。

  我国软件组织在软件过程的现状可以概括为以下三个方面:第一,我国正在由结构化生产方式向以过程为中心的生产方式和工业化生产方式前进。目前已有很多企业(不论是国营或者民营公司)认识到要按CMM改进软件过程,实施科学化、系统化的管理,以提高组织的软件能力成熟度,这表明具备了改善自我的强大动力。第二,目前在前进的道路上仍然有一些困难,如一些组织想通过ISO9000和CMM提高能力成熟度,但是他们不熟悉CMM的概念,也不知道CMM和ISO9000之间究竟有哪些区别。大部分软件组织在软件工程理论和实践两方面都比较薄弱,虽建立了软件过程,但过程阶段不明显,软件生产无序,对进度,预算,质量的预测和控制不得力,常常在遇到问题时就放弃原定计划,重视编程与测试,忽略需求分析和构架设计。高层管理对软件管理尚未引起足够的重视,没有配备足够的资源或合格的人员承担过程改善工作。第三,缺少文档化的过程描述,特别是缺少工作文档(如过程中的变更请求报告)、工作量统计文档(如时间和工作量统计表,周状态报告)和风险管理文档(如风险估计报告、风险评测报告)。缺乏对过程和产品进行测量,软件过程的历史数据很少,因此很难基于历史数据对工作量和进度进行合理的估计。各个软件组织应该基于对目前状态的了解,按照CMM标准找出存在的差距。差距就是不够成熟的地方,也正是应该加强改善软件过程管理的地方。

  软件过程改进是一种含有大量管理成分的工作技术,它主要包括以下三个关键步骤:对比目前的状态和期望达到的状态,找出存在的差距;确定要改变哪一些差距,要改变到什么程度;制定相应的具体实施计划,其中的“具体”是指:要有明确的,可以检验的目标;要定出检验成功与否的标准;要有具体的实施办法;指定具体执行计划的人,并明确具体的职责与任务;要明确执行计划的主要领导或协调者,以负责解决在计划执行中出现的问题;要列出“实施计划”所应用的新技术与新工具以及如何获得这些新技术与新工具。

  我国软件产业方兴未艾,实施CMM可以在起跑线上改变我国的软件工程文化,改善软件人员的素质,不仅对我国的经济具有重要意义,也是提高软件企业素质,增强软件企业的国际竞争力的必要前提,而且还为软件的出口创汇创造了条件。CMM是一个较好的软件改善框架,但CMM只给出做什么,并没有给出如何做。因此要认真研究如何遵循CMM模型进行具体操作的问题。

  为了更好地理解CMM,提高软件组织的过程管理能力,顺利通过CMM评估,基于我们对 CMM的研究与评估实践,给出如下建议:高层管理应该把更多的注意力放在过程改善上,设立过程改善的专职队伍。这一方面是因为过程改善是思想观念和工作方式的改变,是企业文化的转变,它涉及到企业中绝大部分工作人员。另一方面是因为以过程为中心是软件工业化生产的三大支柱之一,只有高度重视,加强研究,学习和实践,才能真正使软件生产向产业化方向迈进。

  在软件过程改善上应配备必要的资源,要建立一支有相当规模的改进队伍,在投资上应达到足够的力度。在组织内部,首先要建立软件工程过程组(称为SEPG),负责软件过程改进任务,并挑选合格的人员担任全职的SEPG组长。根据国外经验,一般需要占该软件组织中开发资源的5%~10%,根据世界上近1800个组织的评估实践证明,进行CMM评估的效益是投入的4倍~8倍。

  建立合适的组织结构,研究软件工程理论和软件过程改进方法,负责制定和实施过程改进计划,他们是实现企业评估活动的具体组织者。在执行计划的过程中,注意检查它的遵从性,如遇偏离,应研究原因,并采取相应的纠正行动,他们是企业进行定期过程诊断的内部评估师和企业过程改进活动的监控者。

  要加强培训工作,开展能力成熟度评估既要有高素质的主任评估师,也要有相当的过程评估队伍,更要有庞大的过程改善队伍。要认识到只有高素质的人员,执行成熟的良好过程,才能生产出好的产品,应普遍开展CMM及软件工程基础的培训,使每个岗位的人员都具备过程改进的意识,并掌握所必要的过程改进知识和技能。

  测量数据是进行过程改进的基础,要重视过程与产品的测量过程。在项目的整个开发过程中,特别是在里程碑处,要收集过程的执行数据,记录活动状态,既为当前项目的测量和分析提供数据,又可作为历史数据保留下来为今后的项目参考。这些数据主要包括:软件规模、工作量、成本和进度的估计数据和实际数据,产品质量测量数据,需求变化情况以及风险分析数据等。

  应重视软件配置管理及配置管理工具的开发。配置管理最主要的目的是在项目的整个软件生命周期中建立和维护软件项目产品的完整性,系统地控制对配置项的改变,并管理组织的软件工程资产。配置管理的内容繁多,权限管理复杂,开发或采购合适的配置管理工具是非常必要的。

  在我国开发CMM评估,既要注意智力引进,聘请国外的主任评估师为我国进行过程评估,更要着力培养我国自己称职的主任评估师。这不仅还是因为中国是一个潜在的IT 大国,而且还因为CMM实施与一个国家的文化密切相关。此外,改善软件过程本身也是一个过程,需要长期地得到有资格的主任评估师的帮助。各行各业的主管部门都要扶持和支持培养我国自己的主任评估师,把培养主任评估师看作是转变观念和创新知识的新产品。要充分认识到过程改善工作的长期性与艰巨性。过程成熟度升级本身就是一个过程,而且有一个生命周期。因此,过程改善工作必然具有一切过程所具有的固有特征,不能急功近利。

  在CMM评估工作中,要提倡将能力成熟度模型CMM与个体软件过程PSP以及群组软件过程ISP有机地结合起来,同时密切注意过程改进的新动向。各地应在软件产业主管部门的支持和协调下,统筹社会各界的力量,加大软件过程改进的研究、评估和实施的力度,把我国的软件产业推向前进。首先要在企业内部建立庞大的过程改进队伍,积极研究、实践和推动过程改进工作。认真建立CMM主任评估师队伍,认真建立各门有关课程的合格的教员队伍。还要通过市场竞争机制,扶植和建立过程改进的咨询机构和中介机构。

分享到:
评论

相关推荐

    cmm培训教程ppt

    在CMM的培训教程中,你将学习到以下几个关键知识点: 1. **CMM简介**:CMM由美国卡内基梅隆大学软件工程研究所(SEI)在20世纪80年代末提出,最初用于国防和航空航天领域。它通过对软件开发过程的标准化和规范化,...

    SSE-CMM浅析

    - **自我评估**:组织可以通过SSE-CMM进行自我评估,识别自身在系统安全工程方面的强项和弱点。 - **外部评估**:获取组织或评估组织可以利用SSE-CMM评估供应商的能力,确保所获取的产品或服务符合安全要求。 - **...

    CMM3 过程模板文档全套

    CMMI3级软件过程改进方法与规范 1.1 CMMI简介 4 1.1.1 CMMI发展简史 4 1.1.2 CMMI的过程域 5 1.1.3 CMMI的两种表示法 6 1.2 CMMI阶段式表示法 7 1.2.1 成熟度等级L1:初始级的特征 8 ...1.7 CMM/CMMI在中国 21

    cmm.rar_CMM

    **CMM(Capability Maturity Model,能力成熟度模型)**是一种评估软件开发组织或项目团队在软件工程过程管理上的成熟度和系统性方法。CMM由美国卡内基梅隆大学软件工程研究所(SEI)开发,最初目的是提高国防系统的...

    浙江大学CMM课件浙江大学CMM课件浙江大学CMM课件

    浙江大学的CMM课件可能包括以下几个方面: - CMM理论基础:解释CMM的起源、核心理念以及五级模型的详细解读。 - 过程改进:介绍如何根据CMM模型进行过程改进,包括制定和执行改进计划。 - 评估与度量:讲解如何对...

    网络管理论文CMM的应用

    在中国和其他国家,许多企业已经引入CMM模型来改进其软件开发过程,通过CMM评估可以帮助企业识别出过程中的不足,制定改进计划,提升企业的竞争力。同时,CMM也成为了软件外包业务中衡量供应商能力的重要标准。 在...

    CMM1.1中文版

    ### CMM1.1中文版相关知识点解析 #### 一、CMM1.1概览 **CMM**(Capability Maturity Model),即能力成熟度模型,是由美国卡内基梅隆大学软件工程研究所(SEI)提出的一种用于评估软件开发组织能力成熟度的标准...

    CMM和PMP教材

    《CMM和PMP教材》 本压缩包包含两份重要的IT管理领域的教材:PMP官方教材(PMBOK第五版中文...同时,这两份教材也是准备PMP认证考试和实施CMM评估的重要参考资料,为实际工作中的问题解决提供了理论支持和实践指导。

    cmm的调查报告

    《中国CMM/CMMI咨询机构10强调查报告》旨在从用户的角度出发,全面了解和评估面向IT企业的CMM/CMMI咨询及评估市场。这份报告通过广泛深入的调研,不仅描绘了该领域的市场全景,还揭示了行业的生存状态和发展趋势,为...

    软件测试CMM文档 Word版

    文档主要围绕以下几个关键知识点展开: 1. **CMM层次结构**:CMM分为五个等级,从一级(初始级)到五级(优化级),每个级别代表不同的成熟度水平。一级是混乱无序的,五级则实现了持续的优化和改进。 2. **过程...

    cmm模板之立项管理

    CMM(Capability Maturity Model,能力成熟度模型)是一种评估和改进组织软件开发过程的方法论,其中的立项管理模块是确保组织按照规范和高效的方式开展项目的基础。 一、立项管理的目标与意义 立项管理的首要目标...

    CMM3规范项目管理

    由美国卡内基梅隆大学的软件工程研究所(SEI)创立的CMM(Capability Maturity Model 软件能力成熟度模型)认证评估,在过去的十几年中,对全球的软件产业产生了非常深远的影响。CMM共有五个等级,分别标志着软件企业...

    CMM课件 软件成熟度模型

    **CMM(Capability Maturity Model,能力成熟度模型)**是一种评估和改进软件开发组织能力的方法论,由美国卡内基梅隆大学软件工程研究所(SEI)在20世纪80年代末期提出。CMM是软件工程领域的一个重要里程碑,它为...

    哈工大cmm课程课件

    CMM是一种评估和改进软件开发组织过程能力的方法,由美国卡内基梅隆大学软件工程研究所(SEI)开发,它为组织提供了逐步提升其软件开发管理水平的框架。 CMM分为五个成熟度级别:初始级、可重复级、已定义级、已...

    CMM与项目管理

    CMM提供了一套评估和改进软件开发流程的方法,而项目管理则关注如何在具体项目中有效地应用这些流程。 在实际操作中,项目经理需要依据CMM的指导,对项目进行科学的管理。例如,通过设定明确的目标和度量标准,进行...

    CMM3 标准学习资料

    在CMM3这一级别,主要关注以下几点: 1. **过程标准化**:CMM3强调的是将软件开发过程标准化,建立一套明确、可重复使用的流程,确保所有项目按照相同的方法进行,减少因人为因素导致的不一致性和错误。 2. **文档...

    CMM专用培训教材(中文版)

    这份由上海软件评测中心编写的《CMM专用培训教材》是中国版的CMM学习材料,旨在帮助读者理解并掌握CMM的核心概念和实践方法。教材的特点是易于理解,提供了实际的评测工具,使读者能够分析和评估自己组织的软件开发...

Global site tag (gtag.js) - Google Analytics