UML软件工程组织 |
在中国开展CMM评估的几点建议 |
周伯生
(本文转载自软件工程专家网http://www.21cmm.com/) |
从美国的软件产业发展可以看到,软件产业有结构化生产方式(1975年-1995年)、以过程为中心的生产方式(1985年-2005年)和工业化生产方式(1995-今)等三个发展阶段。
软件过程改进是一种含有大量管理成分的工作技术,它主要包括以下三个关键步骤:对比目前的状态和期望达到的状态,找出存在的差距;确定要改变哪一些差距,要改变到什么程度;制定相应的具体实施计划,其中的“具体”是指:要有明确的,可以检验的目标;要定出检验成功与否的标准;要有具体的实施办法;指定具体执行计划的人,并明确具体的职责与任务;要明确执行计划的主要领导或协调者,以负责解决在计划执行中出现的问题;要列出“实施计划”所应用的新技术与新工具以及如何获得这些新技术与新工具。 我国软件产业方兴未艾,实施CMM可以在起跑线上改变我国的软件工程文化,改善软件人员的素质,不仅对我国的经济具有重要意义,也是提高软件企业素质,增强软件企业的国际竞争力的必要前提,而且还为软件的出口创汇创造了条件。CMM是一个较好的软件改善框架,但CMM只给出做什么,并没有给出如何做。因此要认真研究如何遵循CMM模型进行具体操作的问题。 为了更好地理解CMM,提高软件组织的过程管理能力,顺利通过CMM评估,基于我们对 CMM的研究与评估实践,给出如下建议:高层管理应该把更多的注意力放在过程改善上,设立过程改善的专职队伍。这一方面是因为过程改善是思想观念和工作方式的改变,是企业文化的转变,它涉及到企业中绝大部分工作人员。另一方面是因为以过程为中心是软件工业化生产的三大支柱之一,只有高度重视,加强研究,学习和实践,才能真正使软件生产向产业化方向迈进。 在软件过程改善上应配备必要的资源,要建立一支有相当规模的改进队伍,在投资上应达到足够的力度。在组织内部,首先要建立软件工程过程组(称为SEPG),负责软件过程改进任务,并挑选合格的人员担任全职的SEPG组长。根据国外经验,一般需要占该软件组织中开发资源的5%~10%,根据世界上近1800个组织的评估实践证明,进行CMM评估的效益是投入的4倍~8倍。 建立合适的组织结构,研究软件工程理论和软件过程改进方法,负责制定和实施过程改进计划,他们是实现企业评估活动的具体组织者。在执行计划的过程中,注意检查它的遵从性,如遇偏离,应研究原因,并采取相应的纠正行动,他们是企业进行定期过程诊断的内部评估师和企业过程改进活动的监控者。 要加强培训工作,开展能力成熟度评估既要有高素质的主任评估师,也要有相当的过程评估队伍,更要有庞大的过程改善队伍。要认识到只有高素质的人员,执行成熟的良好过程,才能生产出好的产品,应普遍开展CMM及软件工程基础的培训,使每个岗位的人员都具备过程改进的意识,并掌握所必要的过程改进知识和技能。 测量数据是进行过程改进的基础,要重视过程与产品的测量过程。在项目的整个开发过程中,特别是在里程碑处,要收集过程的执行数据,记录活动状态,既为当前项目的测量和分析提供数据,又可作为历史数据保留下来为今后的项目参考。这些数据主要包括:软件规模、工作量、成本和进度的估计数据和实际数据,产品质量测量数据,需求变化情况以及风险分析数据等。 应重视软件配置管理及配置管理工具的开发。配置管理最主要的目的是在项目的整个软件生命周期中建立和维护软件项目产品的完整性,系统地控制对配置项的改变,并管理组织的软件工程资产。配置管理的内容繁多,权限管理复杂,开发或采购合适的配置管理工具是非常必要的。 在我国开发CMM评估,既要注意智力引进,聘请国外的主任评估师为我国进行过程评估,更要着力培养我国自己称职的主任评估师。这不仅还是因为中国是一个潜在的IT 大国,而且还因为CMM实施与一个国家的文化密切相关。此外,改善软件过程本身也是一个过程,需要长期地得到有资格的主任评估师的帮助。各行各业的主管部门都要扶持和支持培养我国自己的主任评估师,把培养主任评估师看作是转变观念和创新知识的新产品。要充分认识到过程改善工作的长期性与艰巨性。过程成熟度升级本身就是一个过程,而且有一个生命周期。因此,过程改善工作必然具有一切过程所具有的固有特征,不能急功近利。 在CMM评估工作中,要提倡将能力成熟度模型CMM与个体软件过程PSP以及群组软件过程ISP有机地结合起来,同时密切注意过程改进的新动向。各地应在软件产业主管部门的支持和协调下,统筹社会各界的力量,加大软件过程改进的研究、评估和实施的力度,把我国的软件产业推向前进。首先要在企业内部建立庞大的过程改进队伍,积极研究、实践和推动过程改进工作。认真建立CMM主任评估师队伍,认真建立各门有关课程的合格的教员队伍。还要通过市场竞争机制,扶植和建立过程改进的咨询机构和中介机构。
|
版权所有:UML软件工程组织 |