论文部分内容阅读
在软件开发的历程中,软件专家尝试了各种方法来改进软件过程,提高软件开发的质量和速度。其中卡内基梅隆大学软件工程研究所提出的软件过程能力成熟度模型(CMM),基于过程的角度来提高组织的软件过程能力,在世界范围内得到了广泛的应用,并得到了良好的反映。2000年我国出台的一系列政策明确鼓励软件出口型企业通过CMM认证,并可以得到一定的认证费用的支持。政策出台后国内的软件组织不论其大小,纷纷掀起了CMM认证的热潮。 CMM是一个庞大而复杂的软件过程改进框架,卡内基梅隆大学软件工程研究提出该框架的用途主要是企业软件过程改进,软件过程评估和软件能力评价,该模型的提出是建立在欧美几十年软件开发经验及软件规模化生产的基础之上,他使用的对象主要是大型的软件组织,而我国的大多数软件组织都是中小型的,其中50人以下的软件企业就占了90%以上。因此CMM的适用对象与我国软件业的现状有些相悖。在国内实际上能按照CMM框架进行改进并通过CMM认证的组织却不多。许多中小型软件组织由于达不到规模化的生产要求,在CMM实施的中途不得不停止组织内部CMM的实施。 文章首先介绍了CMM产生的历史背景,CMM的结构,并对CMM的各等级,KP(Key Practice,关键实践),KPA(Key Process Area关键过程域)及CommonFeature(共同特征)进行了简要的说明,接着文章分析了我国软件业的现状,并将其与美国,印度等软件业进行了对比分析。最后笔者将CMM结合我国软件业的实际情况,提出了一套针对我国中小型软件组织的软件过程改进方法。 针对如何将CMM与我国中小软件组织相融合这一问题,笔者对CMM各关键实践进行裁减,重定位,结合软件开发的瀑布模型将软件开发过程分为需求开发,系统设计,编码和单元测试实现,系统测试,用户验收等几个阶段,并将需求管理,项目规划管理,项目监控等管理活动与软件开发过程相结合,基于CMM提出了一种软件过程改进方法。笔者希望该方法能对国内的中小软件组织提高组织软件过程能力,帮企业练好内功有一定帮助。