版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、企业实施CMMI的过程及分析企业实施CMMI的过程及分析第一章、简介中国的软件企业目前大多仍然处于一种手工作坊式运营阶段,质量和效率 观念都不强,在技术和产品本身与国际市场接轨方面更是一片空白。这些 对软件企业而言,是一个致命的弱点。软件产业的游戏规则就是技术及其 标准,全球软件产业其实处于一个非常开放的价值链中,因此如果你落后 了这些技术和标准,就可能被抛出游戏之外。另外,软件企业是一个技术 密集型企业,获取竞争力的关键就在于提高开发应用效率,降低成本,同 时提高产品的质量,而上述这些方面是CMMI的强项。实施CMMI对软件企业的发展起着至关重要的作用,CMMI过程本身就是对 软件企业发展历
2、程的一个完整而准确的描述,企业通过实施CMMI,可以 更好地规范软件生产和管理流程,使企业组织规范化。而且,只有在国际 市场取得成功的产品和企业才具有长久的竞争力和生命力,由于CMMI已 获得国际企业和用户的广泛认可,因此必须在软件企业实施CMM。1.1产生背景CMMI ( Capability Maturity Model Integration 集成成熟度模型,以 下简称&rdquoCMMI&rdquo )的出现是为了克服软件生产的危机。为了解 决软件危机问题,多年来学术界、企业界在软件工程、技术和工具方面投 入了大量的人力、物力和财力,希望能找到一种提高软件质量的有效方法。 他们致力于探
3、索开发软件的新技术、新方法,试图提高软件的生产率和质 量。而这些新技术、新方法确实也为解决软件危机提供了一些帮助。例如, 面向对象方法,它很好的解决了软件开发完备性和代码重用性等问题。但 这些方法都没有从根本上解决软件危机。软件产品的开发、维护杂乱无章、 软件企业的不成熟状况依然困扰着软件产业的发展。于是专家们开始从软 件过程的管理方面着手解决软件危机问题。软件企业开始希望能有效地控 制软件的开发和维护过程,使企业内部形成优秀的软件工程和软件管理文 化。在80年代末期前后,美国国防部门和工业界开始认识到在软件开发中最 重要的问题在于软件生产商对软件的生产过程管理不力,也就是说,软件 生产过程的
4、成败比新技术和开发方法更能决定一个项目或企业的成败。没 有完善的软件生产过程体系,软件开发的成败只能依靠人为主观或偶然因 素,如某一杰出软件天才或小组的成就,而不是可持续的客观标准及体系。 因此,对成功的软件过程的重复使用,对以往经验或教训的分析总结,对 全部开发案例的编档、存档就成了一套完整而成熟的软件过程,需要一个 从无序到有序,从人为到客观标准,从定性到定量的不断积累与完善的过 程,这一过程的演变中软件企业会面临一系列有代表意义的成熟阶段。CMM正是在这样的背景下产生的。CMM是87年由美国卡内基梅隆大学软件 工程研究所(CMU/SEI )研究出的一种用于评价软件承包商能力并帮助改善 软
5、件质量的方法,其目的是帮助软件企业对软件工程过程进行管理和改进, 增强开发与改进能力,从而能按时地、不超预算地开发出高质量的软件。 CMM软件评估标准是从1930年开始的近代质量管理理论与实践基础上发 展起来的。此项工作最初是应联邦政府的要求提供一种评估其软件承包商 效的软件工程过程的基础结构,不断进行管理的一实践和过程的改进,就 可以克服软件生产中的困难。2000年底SEI发表了 CMMI,整合软件工程(SW)、系统工程、整合式产品与过程及采购的整合模式。从此以后,CMM 就与CMMI并行。1.2CMMI的组成CMMI由五个成熟度等级组成。除了等级1外,每个成熟度等级都由几个 关键过程区域K
6、ey process Area,KPA)组成。每个关键过程区域又划分 为五个称作公共属性的部分。公共属性规定一些关键实践,当这些关键实 践群体得到认真执行,能实现关键过程区域的目标。那些与判定成熟度等 级有关的组成部分处于模型的顶层。它们是:,成熟度等级(Maturity Level)、关键过程域与各个关键过程域的目标(Goal)。这个模型的细节的 组成部分 关键实践(Key Practice) 从属活动以及基础构造 (Infrastructure or Activities)都是资料性的。这些资料性的部分指导 CMMI的使用者运用他们的专业判断力来做出应用上的决定。CMMI的成分主要包括:成
7、熟度等级(Maturity Level)一个成熟度等级是朝着实现成熟软件过程进化途中的一个妥善定义的平 台。五个成熟度等级提供CMMI的层级结构。关键过程域(Key process Area)每个成熟度等级由若干关键过程域组成。每个关键过程域标识出一串相关 的活动,当它们作为群体完成时,就达到一组目标,此组目标对建立该过 程成熟度等级是至关重要的。关键过程域是分别定义在各个成熟度等级并 与之相连在一起的。例如,等级2的一个关键过程域是软件项目策划。目标(Goal)每一个KPA都确定了一组目标。若这组目标在每一个项目都能实现,则说 明企业满足了该KPA的要求。如果满足了一个级别的所有KPA要求,
8、则表 明达到了这个级别所要求的能力。目标概括一个关键过程区域中的关键实 践,并可用于确定一个组织或项目是否已有效地实施该关键过程区域。目 标表示每个关键过程区域的范围、边界和意图。例如,软件项目策划关键 过程区域的一个目标是&ldquo软件估计已文档化,供策划和跟踪软件项 目使用。关键实践(Key Practice)每个关键过程域用若干关键实践加以描述,当实施这些关键实践时,能帮 助实现该关键过程域的目标。关键实践描述对关键过程域的有效实施和规 范化贡献最大的基础设施和活动。例如,软件项目策划这个关键过程域的 一个关键实践是&ldquo按照已文档化的规程制定项目的软件开发计划 &rdquoo公
9、共属性(Common Features)将关键实践分别列入下列五个公共属性中:执行承诺、执行能力、执行的 活动、度量分析、及实施验证。公共属性能指示一个关键过程区域的实施 和规范化是否是有效的、可重复的和持久的。执行的活动这个公共属性描 述实施活动。其余四个公共属性描述规范化因素,它们使得过程成为组织 文化的一部分。?执行承诺执行承诺是企业为了建立和实施相应KPA所必须采取的活动,这些活动主 要包括制定企业范围的政策和高层管理的责任。?执行能力执行能力是企业实施KPA的前提条件。企业必须采取措施,在满足了这些 条件后,才有可能执行K卫A的执行活动。执行能力一般包括资源保证、 人员培训等内容。?
10、执行活动执行活动描述了执行KPA所需求的必要角色和步骤。在五个公共属性中, 执行活动是唯一与项目执行相关的属性,其余四个属性则涉及企业CMMI 能力基础设施的建立。执行活动一般包括计划、执行的任务、任务执行的 跟踪等。?度量分析度量分析描述了过程的度量和度量分析要求。典型的度量和度量分析的要 求是确定执行活动的状态和执行活动的有效性。?实施验证实施验证是验证执行活动是否与所建立的过程一致。实施验证涉及到管理 方面的评审和审计以及质量保证活动。在实施CMMI时,可以根据企业软件过程存在问题的不同程度确定实施KPA 的次序,然后按所确定次序逐步建立、实施相应过程。在执行某一个KPA 时,对其目标也
11、可采用逐步满足的方式。持续过程改进和逐步走向成熟是 CMMI体系的宗旨。1.3CMMI的级别CMMI模型描述和分析了软件过程能力的发展程度,确立了一个软件过程 成熟程度的分级标准,它以5个不断进化的层次反映了软件过程定量控制 中项目管理和项目工程的基本原则。五级:为最高级,即优化级,在这个等级,整个企业将会把重点放在对过 程进行不断的优化。企业会采取主动去找出过程的弱点与长处,以达到预 防缺陷的目标。同时,分析有关过程的有效性的资料,做出对新技术的成 本与收益的分析,以及提出对过程进行修改的建议。达到该级的公司过程 可自发地不断改进,防止同类缺陷二次出现。四级:为已管理级,在这一级,企业对产品
12、与过程建立起定量的质量目标, 同时在过程中加入规定得很清楚的连续的度量。作为企业的度量方案,要 对所有项目的重要的过程活动进行生产率和质量的度量。软件产品因此具 有可预期的高质量。达到该级的企业己实现过程定量化。三级:为已定义级,即过程实现标准化。在这一级,有关软件工程与管理 工程的一个特定的、面对整个企业的软件开发与维护的过程的文件将被制 订出来。同时,这些过程是集成到一个协调的整体。这就称为企业的标准 软件过程。二级:为可重复级,在这一级,建立了管理软件项目的政策以及为贯彻执 行这些政策而定的措施。基于以往的项目的经验来计划与管理新的项目。 达到此级别的企业过程己制度化,有纪律,可重复户一
13、级:为初始级,过程无序,进度、预算、功能、质量不可预测,企业一 般不具备稳定的软件开发与维护的环境。常常在遇到问题的时候,就放弃 原定的计划而只专注于编程与测试。从第二级起,每一级包含了不同的 KPA,每个KPA都有明确的实施目标,并按公共属性类别定义相应的关键 实施活动。1.4CMMI在国内的应用现状及存在的问题CMMI只提要求,只告诉我们做什么,而没有告诉应该怎么做。目前CMMI 在国内具体的实施和应用大都是由顾问公司协同企业来做。怎么使用基本 是企业来琢磨,最后评估公司再验证要素的覆盖程度。评估公司不对体系 的效率负责,只管要素覆盖,是因为要素覆盖是与拿证书相关的。强调在 原模式的基础上
14、建立CMMI体系,而不能进行流程重组。这其实反映了评 估公司的非专业化,只对质量管理熟悉,对其它管理不了解,对细分的行 业特征不了解。所以在这些评估公司指导下通过CMMI,其真正价值到底 怎样,很值得怀疑。CMMI在中国100%的达标率,也使得CMMI的含金量遭 到更多置疑。经常不断看到己通过CMMI认证的企业在谈CMMI带来的各种 收益,但实际上对CMMI价值的认可度到底有多少,只有每个人自己心里 知道。可以肯定的是,对CMMI价值的认同需要一个相当长的时间,决不 是几个月就能达到的结果。一个好的顾问公司应该协同顾客研究其流程, 提出重组的建议,流程的建立不仅要考虑要素覆盖还要兼顾流程效率。
15、实 施参与深度不够是一方面,参与时间也偏短,我们一般一个咨询周期6 一 8月,而国外1-2年的周期是很多的。6个月的时间往往只是体系的初 步建立,还很粗糙,要运行和完善为一个比较可行的体系,还需要大量的 时间。软件过程成熟度的提高是一个渐进的过程,需要一个长远的、可持 续发展的过程作为保证。为建立一个面向过程持续提高的基础和文化,有 些软件企业可能要花费很大的精力和时间。但是这种努力对任何一个软件 企业来说都是非常必要的。我们必须明确实施CMMI的目的不是为了通过 认证,而是为了从根本上改变我们的软件开发过程,提升企业的竞争力。 另外很长时间以来,行业内对CMMI有一种误解:做软件出口,才需要
16、实 施CMMI。言外之意,不做软件出口,没必要实施CMMI。全球软件产业其 实处于一个非常开放的价值链中,而软件产业的游戏规则就是技术及其标 准,因此如果你落后了这些技术和标准,就可能被抛出游戏之外。另外, 软件企业是一个技术密集型企业,获取竞争力的关键就在于提高开发应用 效率,降低成本,同时提高产品的质量,这方面是CMMI的强项。因此实 施CMMI是软件企业加强自身管理,提高素质,摆脱困境的必经之路,是 软件业与国际接轨的重要举措,是我国软件企业走向世界迅速发展的必由 之路。面对如此的产业环境,我们只能做出如下判断:中国软件产业管理能力的 根本提升,取决于广大中小软件企业管理能力的有效改进。
17、对中国而言, 今后很长一个时期内CMMI的最大价值是促进软件产业管理竞争力的整体 提升,为软件产业的规模化发展积蓄力量、提供准备,而不是直接推动软 件出口。第二章、CMMI的在企业中的实施国内的绝大部分软件企业目前处于CMMI的初级阶段,没有基础和经验。 虽然CMMI的主要思想很清楚,标准的条例也很明确,但如何达到这种标 准的可操作性比较差。所以许多企业在实施CMMI的过程中,往往感到迷 茫,不知从何处下手。本章将通过本公司实施CMMI的一些实践经验总结 软件企业实施CMMI或通过CMMI评估所必须经历的步骤,但是不同的软件 企业的软件开发管理水平各不相同,可以根据自身的实际情况和具体要求 加
18、以应用。2.1CMMI实施过程CMMI模型描述和分析了软件过程能力的发展程度,确立了一个软件过程 成熟度的分级标准。从第二级起,每一低级别的实现均是高级别实现的基 础,只有持续不断地进行软件过程改进,遵循分级标准的规定,才可以较 好的过渡到上一级别的成熟阶段。根据多年的经验和教训,人们总结出软 件开发的首要问题不是技术问题而是管理问题,目前国内有很多软件企业 的软件过程管理还有很多问题,对于绝大多数从未做过软件过程改进的企 业来说,直接从CMMI3开始实施就如同没有打好地基直接盖房子一样,结 果可想而知。而CMMI2级的焦点集中在软件过程管理上。一个可管理的过 程则是一个可重复的过程,一个可重
19、复的过程则能逐渐进化和成熟。第二 级的管理过程包括了需求管理、项目管理、质量管理、配置管理和子合同 管理五个方面。其中项目管理分为计划过程和跟踪与监控两个过程。通过 实施这些过程,从管理角度可以看到一个按计划执行的并且阶段可控的软 件开发过程。但是因为我们公司在实施CMMI之前的开发已经定义了类似 CMMI2级的KPA的6个Check Point的项目管理流程,并已经顺畅的实施 了 2年,各个项目经理和相关的项目关键人员对软件实施流程已经有了比 较深刻的理解。因此,在经过和评估师的深入讨论以后,我们公司决定直 接实施CMMI3级,并于去年年底顺利获得通过认证。目前,我们公司正在 为年底通过CM
20、MI5级做精心的准备。以下是我们公司在实施CMMI的过程中进行软件过程改进的几个关键的行 为:提高思想认识,解决制度化理念和现有理念的冲突尽管我们公司原来已经定义了类似6个Check Point的软件开发管理流程, 但是按照CMMI体系实施软件过程改进的过程中还是遇到诸多问题,其中 开发人员、项目经理抵触情绪最为突出。而这种冲突主要是管理理念的冲 突,因此,CMMI小组的首要任务是让项目管理过程的相关人员能够接受 和推行CMMI在项目中的实施,而不断的开会讨论是一个行之有效的方式。 从整个企业的层面来看,通过实施质量体系,事实上改造了原有项目实施 的流程,使制度化的观念深入人心,为企业引入西方
21、先进的管理思想、推 行全面的制度化管理奠定了思想和文化基础。实施之前进行全面CMMI和软件过程改进培训任何一个软件企业要想实施先进的管理措施,首先应该做的就是理论基础 的建设,作为一个过程式管理方法的CMMI,同样也不例外。任何体系的 实施都离不开其主体一人。企业实施质量体系过程中要对各层次人员进行 不同的定向培训。对于开发人员来说加强软件工程的培训和实践应从学校 教育就开始,进入企业后再进行有针对性的再教育。不仅是对于开发人员, 对于项目管理人员的管理培训,对体系的实施起着至关重要的作用。因为 项目管理人员处在承上启下的关键位置,体系的落实、组内配置管理、组 内质量数据的收集等都离不开这一层
22、管理人员的配合。而实际情况是,项 目管理人员往往都是从技术出身,管理意识不足是普遍存在地问题。这层 管理人员进行强化的质量意识培训和项目管理培训是非常迫切的。因此, CMMI推动小组组织了一系列的培训来对项目经理,软件品质保证负责人 等软件开发的相关人员进行培训,通过培训能使大家明白怎样做一个合格 &ldquo科研管理人员&rdquo,真正增强其管理的意识,会发现项目经理 会主动配合质量管理工作,因为他们认识到,质量管理其实是项目管理职 能中非常重要的部分。确定合理的实施级别CMMI模型划分为5个级别,共计18个关键过程域,52个目标,316个关 键实践。每一个CMMI等级的评估周期(从准备到
23、完成)约需12 一 30个月。 无论一个软件企业的软件过程处于什么样的水平,都可以在CMMI框架的 5个级别中找到自己的位置。然后有针对性采取与自己所处级别相适应的 措施,使企业能纳入CMMI的进化阶段,使软件过程管理早日得到改善。 因为我们公司在实施CMMI之前的开发已经定义了类似CMMI2级的KPA的 6个Check Point的项目管理流程,并已经实施顺畅的实施了 2年,各个 项目经理和相关的项目关键人员对软件实施流程已经有了比较深刻的理 解。因此,在经过和评估师的深入讨论以后,我们公司决定直接实施CMMI3 级,并于去年年底顺利获得通过认证。目前,我们公司正在为年底通过 CMMI5级做
24、精心的准备。成立工作组企业针对CMMI的实施,应成立专门的CMMI实施领导小组或专门的机构。 领导层必须真正学习理解软件过程管理和改进的重要性,亲自领导和参与, 要保证过程管理的人员配备,抽调企业中有管理能力、组织能力和软件开 发能力的骨干人员。在CMMI的实施过程中,工作组的成立是CMMI的一个 关键步骤。我们公司的CMMI工作组由公司的副总亲自担纲,他从人员组 成的上确保了 CMMI顺利实施的基础。CMMI过程规程文件的制定既然我们已经确定了要从CMMI3级着手来实施基于CMMI的软件过程改进, 那么过程规程文件的制定则是必不可少的。过程规程文件制订的好坏对公 司实施CMMI的进度和统一性
25、都有至关重要的影响,我们公司的CMMI在评 估公司的帮助下制订了所有KPA需要的文件模板,这些文件对项目快速、 无误的实施CMMI起到了加速推进的作用。(6)持续不断的软件过程改进软件过程改进是一种含有大量管理成分的工作技术,它主要包括以下三个 关键步骤:对比目前的状态和期望达到的状态,找出存在的差距确定要改 变哪一些差距,要改变到什么程度制定相应的具体实施计划,其中的 &ldquo具体&rdquo是指:要有明确的,可以检验的目标:要定出检验成功 与否的标准要有具体的实施办法指定具体执行计划的人,并明确具体的职 责与任务要明确执行计划的主要领导或协调者,以负责解决在计划执行中 出现的问题要列出
26、&ldquo实施计划&rdquo所应用的新技术与新工具以及 如何获得这些新技术与新工具。它是从软件过程的角度考虑问题,而并非 关注软件开发工具,与框架软件生存周期无关,也与所采用的开发技术无 关。在经过实施CMMI3的过程中,我们碰到了原来的统一流程无法满足不同的 项目形态,因此,针对不同的项目情况,我们对CMMI的项目实施流程进 行裁剪以符合不同的项目情况。而所有项目实施CMMI累积下来的历史数 据将对新的项目起到参考和指导的作用,为公司过CMMI5累积了大量的过 程改进的经验数据。(7)预评估企业在进行正式的CMMI评估之前应该进行预评估,预评估的目的是判定 企业是否准备充分可以进行正式的
27、CMMI评估。预评估由一位主任评估师 指导进行,目的是对项目的成熟度进行初步了解,按照CMMI3级KPA识别 明显缺陷并推荐纠正措施,以便更好进行正式CMMI评估预评估主要工作 包括组织级和项目级的文档审阅以及与项目组人员的面谈。评审结束,提 交预评估果并与组织进行有关讨论。预评估通常作4天左右,检查的样本 数据会比正式评估时少一些。2.2实施CMMI的作用软件企业是一个技术密集型企业,获取竞争力的关键就在于提高开发应用 效率,降低成本,同时提高产品的质量,而上述这些方面是CMM的强项。 实施CMM对软件企业的发展起着至关重要的作用,CMM过程本身就是对软 件企业发展历程的一个完整而准确的描述,企业通过实施CMM,可以更好 地规范软件生产和管理流程,使企业组织规范化。而且,只有在国际市场 取得成功的产品和企业才具有长久的竞争力和生命力,由于CMM已获得国 际企业和用户的广泛认可,因此必须在软件企业实施CMM。以下是本人的 一些体会:在公司级别上规范和统一软件开发过程通过实施CMMI可以使公司的全部项目在相同的规范和流程下进行开发, 使项目的开发具有一定的可比性和可参考性。有助于澄清需求,消除项目最大的潜在危险CMMI对需求的定义和管理有着详细的指
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T-CNFMA A003-2021 锯材四面刨光生产线技术要求
- 肇庆市2026-2027学年高考考前提分物理仿真卷(含答案解析)
- 工厂质检专员2026年上半年产品品控工作总结
- 暑期游泳场馆安全注意事项课件
- 2026年秋季高三提前开学第一课 冲刺期的作息与健康管理
- 2026年秋季心理学专业开学第一课 实习实践与能力提升课件
- 2026年北师大版小学三年级英语上册Lesson3《Thisismyfriend》完整教案
- 2026年北师大版初中英语下册第8单元《HealthyLife》完整教案
- 2025年基因编辑作物国际贸易政策
- 工程材料设备保管责任协议 项目部物资保管合同
- 无人机反制装备技术要求
- 常见精神科疾病及治疗
- 阿仑膦酸钠临床推广幻灯20090310
- 售后维修服务单
- 黄酒的酿造 黄酒酒曲制备
- 施工现场五牌二图
- 《食品检验机构资质认定条件》内部审核检查表
- 铸造企业现场管理类隐患排查治理清单
- YS/T 582-2013电池级碳酸锂
- 中国农业银行现金管理项下委托贷款协议范本-
- 汽轮机危急遮断系统(ETS)课件
评论
0/150
提交评论