软件企业如何实施CMM

原创 2005年02月27日 01:39:00
来源:东方易初

国内的绝大部分软件企业目前处于CMM的初级阶段,没有基础和经验。虽然CMM的主要思想很清楚,标准的条例也很明确,但如何达到这种标准的可操作性比较差。所以许多企业在实施CMM的过程中,往往感到迷茫,不知从何处下手。本文讨论软件企业实施CMM或通过CMM评估所必须经历的步骤,希望能起到一个抛砖引玉的作用,软件企业实际实施CMM时,可以根据自身的实际情况和具体要求加以应用。

提高思想认识

CMM在中国的实施,从整体上看处于起步阶段,很多软件公司对ISO9000了解较多,也有较多通过了ISO9000认证。相对而言,了解CMM的就不多了。具备一定规模的软件企业,对CMM非常感兴趣并表示了极大的关注,有部分公司也在积极实施CMM,但正式推行CMM需要在人力和经费上增加投入,一般的软件中小企业有一定困难。

根据全球软件销售额数字分析,今后几年软件和信息服务的市场规模将有一个巨大的发展。然而中国这样的一个大国,软件销售额还不到世界市场的0.5%。我国软件企业除少数几家在500人以上外,多数是在50人以下的民营、集体和个人的软件公司。以开发技术和规范化程序来衡量,总体上仍是相当落后的,大多数企业仍为手工作坊式制作,产品缺乏市场竞争力。因此,软件过程管理已成为发展我们软件产业的一个关键性问题。实施CMM对软件企业的发展起着至关重要的作用,CMM过程本身就是对软件企业发展历程的一个完整而准确的描述,企业通过实施CMM,可以更好地规范软件生产和管理流程,使企业组织规范化。而且,只有在国际市场取得成功的产品和企业才具有长久的竞争力和生命力,由于CMM已获得国际企业和用户的广泛认可,因此必须在软件企业实施CMM。

进行CMM培训和咨询工作

任何一个软件企业要想实施一先进的管理措施,首先应该做的就是理论基础的建设,作为一个过程式管理方法的CMM,同样也不例外。

根据CMM模型的要求,一个项目的开发一定要有章可循,而且要做到有章必循,这两点都离不开培训。培训的内容主要有两个方面,第一,对所有员工包括经理在内的最基本的软件工程和CMM培训知识;第二,对各个工作组的有关人员提供专业领域知识等方面的培训;此外,在每次开发过程中,还要对普通人员进行软件过程方面的培训。

培训的方式有很多,第一,向有关专业培训咨询机构进行咨询。这些培训公司为CMM知识的导入起着主导作用,他们来源于各种背景,有国家有关研究所、相关协会、大学、原ISO9000咨询公司、新创办的CMM咨询公司、实施过CMM的企业等,但这些培训咨询公司主要集中在北京、上海,尤其是北京。所以也希望其他省市,特别是被批准为“国家软件基地”的城市,应加大力度,竭力扶植有关咨询培训机构。第二,利用互联网资源进行咨询和培训。可以报名参加CMM网校等网站进行系统的学习。第三,聘请有关CMM专家到企业实地指导CMM的实施。企业可在被指导过程中逐步掌握CMM的要领和实施过程。值得注意的是,企业最开始阶段必须聘请一位经验丰富的CMM专家,但以后一定要培养自己的专家,这样不仅能节约开支,还能使企业自己具有一个对CMM深刻理解的、有实践经验的专家,为企业今后的继续升级打下一个良好的基础。

确定合理的目标

CMM模型划分为5个级别,共计18个关键过程域,52个目标,300多个关键实践。每一个CMM等级的评估周期(从准备到完成)约需12-30个月。无论一个软件企业的软件过程处于什么样的水平,都可以在CMM框架的5个级别中找到自己的位置。然后有针对性采取与自己所处级别相适应的措施,使企业能纳入CMM的进化阶段,使软件过程管理早日得到改善。

因此,要实施CMM,首先应该对本企业的现状有一个准确的评估。企业目前处于什么水平,企业发展的问题是什么,借助CMM要达到的目的是什么。然后再结合企业的实际情况选择CMM的切入点,确定总体目标。这个目标包括在多长时间之内,需要投入多少人力、物力和财力,要达到哪一级。在总体目标已经确定的前提下,还要制订近期目标和长期目标。

成立工作组

企业针对CMM的实施,应成立专门的CMM实施领导小组或专门的机构。领导层必须真正学习理解软件过程管理和改进的重要性,亲自领导和参与,要保证过程管理的人员配备,抽调企业中有管理能力、组织能力和软件开发能力的骨干人员。

在CMM的实施过程中,工作组的成立是CMM的一个关键步骤。有几个重要的组织是必不可少的,这些组织包括软件工程过程组、软件工程组、系统工程组、系统测试组、需求管理组、软件项目计划组、软件项目跟踪与监督、软件配置管理组、软件质量保证组、培训组。

在CMM的实施中组织机构的设置必须完善,但不等于说每一个机构必须是独立的。有些组织很小时,机构可以适当合并,成员可以身兼数职。但对那些关键实践要求独立性时,组织必须十分小心。例如,软件质量保证组的独立性就是必须考虑的,否则在技术上或机构上出现的偏差,会无目的地影响到软件过程、项目质量和风险决策的正确性。

在这里还要提到一点,那就是物理组和逻辑组。在CMM中有两种组织,一种叫物理组织,它是客观存在的,例如项目组、技术部等,有众多专职人员;另一种叫逻辑组织,就是说它的人员可以是兼职的,很多逻辑组只需一两个人就可以了。

制定和完善软件过程

CMM模型强调软件过程的改进,如果企业还没有一个文档形式的软件过程,则首要任务是对当前的工作流程进行分析、整理及文档化,从而制定出一个具有本企业风格的软件过程,并用该文档化的过程指导软件项目的开发。如果已经具备了软件过程,则要对这个过程做内部评估,对照CMM的要求,找出问题,然后对这个过程进行补充修改。在具体实施的过程中,可以选择有一定代表性和完善性的项目组或项目进行试点,跟踪、监督改进后的软件过程的实施情况,执行改进活动的状态。

同时,过程小组的成员还应该维护过程中的数据库,定期统计各个过程中的产品和规模、开发周期、修改次数及评估周期。这些数据库可用来分析项目的效率以及存在的问题,以便今后进一步的改进,同时还可以为项目开发实事求是过程提供咨询。

总结这些项目组或项目以前成功的经验,从中规划出一个具有实际意义的软件过程,按照CMM规范评估这个过程,找出其中的优缺点。对不满足CMM要求的地方加以完善,使其成为一个完美的实施CMM的软件过程方案;然后将这个软件过程应用到当前正在承接的或即将承接的项目上,在实际使用过程中进一步发现其中的不足和错误之处,加以改进,最后将试点的结果推广到整个企业。

内部评审

由于我国在CMM评估中要聘请外籍主任评估师,费用较高。据估计,要通过一个级别的CMM评估,费用是通过ISO9000认证的十多倍。因此,建议软件企业在进行正式评估之前,先进行内部评审或评估。这种内部评审包含两层含义。第一种就是软件企业组织自己内部成员,严格、认真地按照CMM规范评估过程,对自己的软件过程进行评审,找出其中的不足点并进行改进。第二种含义就是在全国范围内,由有关软件工程和CMM专家组成一个专门的“内部评审”机构,负责指导协调实施CMM的活动,推进活动的深入开展,对国内软件企业CMM评估进行“预先评估”。这种预先评估,可降低软件企业通过正式CMM评估的风险,减少软件企业实施CMM的成本,为企业最终获得国际CMM认证打下基础。

正式评估

目前主要有两种基于CMM的评估方法,一种是CBA-SCE(CMM-Based Appraisal for Software Capability Estimation),它是基于CMM对组织的软件能力进行评估,是由组织外部的评估小组对该组织的软件能力进行的评估。另一种是CBA-IPI(CMM-Based Appraisal for Internal Process Improvement),它是基于CMM对内部的过程改进进行的评估,是由组织内部的小组对软件组织本身进行评估以改进质量,结果归组织所有,目的是引导组织不断改进质量。这两种评估均由CMU/SEI授权的主任评估师领导,参考CMM框架来进行,都要审查正在使用和将来使用的文件/文档,并对不同的组织员工进行采访。SEC与IPI两评估结果应该一致,评估结果的所有资料都将呈报CMU/SEI。

针对企业实施CMM的需要,这里主要讲述CBA-IPI的评估方式,以便企业为提高软件过程进行内部评审。CBA-IPI的评估由几方共同组成:评估小组、公司的管理人员、具体项目的执行人员以及主任评估师。其中评估小组是由经验丰富的软件专业人员组成,还要经过CMM和CBA评估的培训,使他们了解组织的同时,也懂得如何将CMM模型及关键实践与组织的要求建立关联。CBA评估过程主要分成两个阶段:准备阶段和评估阶段。准备阶段包括小组人员培训、计划以及其它必要的评估准备工作。在评估的最初几天,小组成员的主要任务是采集数据,回答SEI的CMM提问单,文档审阅以及进行交谈,对整个组织中的应用有一个全面的了解。然后进行数据分析。评估员要对记录进行整理,并检验所观察到的一切信息,然后把这些数据与CMM模型进行比较,最后给出一个评估报告。在每个评估报告中,必须针对CMM 的每个关键过程域,指出这个软件过程在什么地方已经有效地执行了,什么地方还没有有效地执行。只有所有评估人员一致通过的情况下,这个评估报告才有效。

根据评估结果改进软件过程

根据Ideal模型,成熟度的评估只是软件过程改进中的一个环节,如果这个环节与软件过程改进的其他环节不能很好地结合,那么,CMM评估对于软件过程改进所应具有的作用就得不到发挥。

一般来说,应该在评估之后很快地做出软件过程改进的计划,因为这时大家对评估结果和存在的问题仍有一个深刻的认识。计划在软件过程改进中是一个非常必要的阶段,只有有效的计划,才能确保软件过程得到有效的改进。

CBA评估方法对衡量软件企业的能力成熟度是一个非常有效的手段,评估结果本身就是一个非常坚实的基础,是制定软件过程改进计划的依据。CBA评估客观地指出了企业软件过程存在的问题,帮助企业发现软件过程的不足之处,充分指出了软件过程改进的前景。

结束语

因为软件过程成熟度的升级本身就是一个过程,全面引进应用CMM所涉及的范围非常广,要求人力、财力与设备资源的投入相当大。所以在实施CMM时,千万不要一开始就把目标定位过高,不必一下子去满足某一能力成熟度等级的所有目标。而要根据企业自身的情况,试行某些关键过程域的一部分关键实践活动,逐步完善软件过程和成熟度的升级。而且在实施CMM的过程中,应当处理好CMM实施和认证的关系。实施是基础,认证是结果。只有认真扎实的实施,才可能有认证的通过。由于我国大部分软件企业距离CMM的认证有相当大的距离,最好先按照CMM严格的软件工程方法,致力于改进企业的管理,提高软件开发能力,而先不要搞软件能力评鉴,追求认证、评级等。等到能力成熟后,再进行认证。这样可以避免和杜绝华而不实、弄虚作假的现象。应该把实施CMM作为提高软件企业管理水平和提高软件质量的突破口,追求真正的软件能力和水平的提高,而不是把单纯的CMM软件认证作为一个唯一的目标。

阿米巴经营之软件经营-写得不错留作记念

每次敏捷开发培训课上,最备受关注的问题可以说是团队管理和绩效管理。 “敏捷开发注重团队合作”“敏捷开发不考核个人”“敏捷开发放权”“敏捷开发对人的主动性要求高”……这些新话题可以说对一般程序员而...
  • carzyer
  • carzyer
  • 2013年02月19日 09:40
  • 1427

浅谈企业应用软件架构设计过程

本文是笔者根据自己所从事J2EE应用软件架构设计工作的经验,谈谈自己对软件架构设计过程的理解。为了更直观的展现出架构设计各环节的工作内容,文中以一个虚拟案例来介绍了架构设计过程中的一些主要工作内容和工...
  • ldh911
  • ldh911
  • 2015年01月27日 17:19
  • 6811

联想ERP项目实施案例分析(1):背景

联想ERP项目实施案例分析(1):背景一、需求触发1、业务触发决心上线ERP:1.1、曾经联想在信息系统不完善的情况下,出过上千万生产小料成本遗忘计算的事件。而更早一些的1996年,联想内部物料会议上...
  • david_lv
  • david_lv
  • 2014年04月16日 10:37
  • 22324

分析国内IT各领域软件企业的挣钱实力

http://wenku.baidu.com/view/932bc26fb84ae45c3b358c39.html 今天看到《程序员》杂志上的《软件中国2009年大势图》,有一点思考,写下来。思考的引...
  • samantha_sun
  • samantha_sun
  • 2011年01月14日 13:52
  • 1259

传统软件企业受云计算与互联网技术和市场形势的冲击

创业圈丨一个企业家心里话:在中国当老板太难太难 当年接触IT企业的契机是与几个志同道合的朋友共同创业,起初的我对这行业知之甚少,凭着一腔创业激情,怀抱着最朴实的心愿:多赚点钱,吃好、喝好、住...
  • selifecn
  • selifecn
  • 2015年02月08日 22:12
  • 196

如何在中小型软件企业推进PMO(项目管理办公室)建设

PMO,即项目管理办公室,是项目型企业中管理和协调项目的机构。我国目前的软件企业,以中小型企业居多,而这些企业中,又以项目型企业居多。这些企业,是最需要提高项目管理水平的,而往往这类型的企业,又是最缺...
  • guanhui1997
  • guanhui1997
  • 2016年06月29日 09:33
  • 7855

SaaS促进软件企业的二次转型

所谓企业二次转型,是指企业在现有的主流业务模式的基础上向另外一个主流业务模式的转变,包括产品的深层次开发、市场的多向扩展、受众群体的变更等,力图在未来的市场中保持稳定的定位、更多的营业收入和市场份额。...
  • chinaoccs
  • chinaoccs
  • 2014年07月21日 13:29
  • 445

东南融通之殇-网友点评篇(软件企业思考系列之二)

网址:http://www.itpub.net/thread-1474571-1-1.html 网友1评论:   不单是肤浅,而是根本就没有摸着门。   楼主的帖子里面,都是东南融通的自我介绍材...
  • billdai
  • billdai
  • 2011年09月07日 17:14
  • 4772

在美上市中国软件企业市值排名及点评

在美上市中国软件企业市值排名及点评 CNET科技资讯网 11月10日 评论文章 (文/张晓楠):作为“纽交所上市的国内第一家软件企业”,东南融通曾经的风光无人能及。5...
  • jader_liao
  • jader_liao
  • 2011年11月26日 11:20
  • 958

国家重点软件企业

1 北京用友政务软件有限公司2 北京赛迪时代信息产业股份有限公司3 高德软件有限公司 4 二六三网络通信股份有限公司 5 北京超图软件股份有限公司6 北京握奇数据系统有限公司7 建研科技股份有限公司 ...
  • easyjsf
  • easyjsf
  • 2011年06月13日 12:54
  • 5537
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:软件企业如何实施CMM
举报原因:
原因补充:

(最多只允许输入30个字)