企业软件配置管理实施策略.docx
《企业软件配置管理实施策略.docx》由会员分享,可在线阅读,更多相关《企业软件配置管理实施策略.docx(10页珍藏版)》请在三一办公上搜索。
1、企业软件配置管理实施策略毫无疑问,软件配置管理是软件开发的基石。一个缺少软件配置管理的企业,就等于“作坊式”的开发模式。虽然大多数企业在这一点的认识上已经达成共识,然而,在实际的实施时仍存在不少误区。正确地在企业实施软件配置管理,有赖于全面正确地认识软件配置管理,以及避免一些常见的误区,并选择正确的工具。由于配置管理涉及的领域既有广度,又有深度,因此,本演讲不打算面面俱到,而只是抽取其中的一部分,希望能起到抛砖引玉的效果。正确认识软件配置管理 要避免在软件配置管理实施时的误区,首先需要我们对软件配置管理的含义有一个正确全面的认识,在这一方面,基本上有两个权威的解释,一个是SEI,一个CMM方面
2、的。SEI的定义要点包括: 配置管理(CM)是软件过程的一个关键元素。它是一个规程,通过控制产品的进化过程,如持续的、变化的变更,为软件系统产品提供了稳定性。 作为一个管理规程,CM通过标识产品的组成部分和变更;通过控制变更的开始、评估、授权和控制;通过记录和报告产品及其变更的历史和状态,最终控制了产品的整个进化过程。 作为一项开发支持功能,CM用来维护产品的实际组成部分;记录产品的组成部分乃至整个产品的变化历史;为产品的变更提供了一个稳定的工作平台;支持从产品的组件“组装”成整个产品;并自动协调并发的修改。 CMM/CMMI的定义要点包括: 软件配置管理的目标是在软件的整个生命周期期间建立和
3、维护软件产品的一致性。软件配置管理包括:标识软件项目的配置项;控制配置项的修改;记录和报告配置项的状态和修改活动。 配置管理的核心是意图消除由于不同版本工件的存在而可能带来的混乱和错误。项目中工件的变化不可避免,原因可能包括纠正错误,功能增强以及产品的进化。配置管理就是要使得这些不可避免的变更处于控制之下。大家可以看到,无论是SEI的定义,还是CMM/CMMI的定义,二者之间并没有本质上的区别。归纳起来,从总体上来说,软件配置管理主要包括五个主要方面,即配置项的标识、对配置项修改的控制、向团队成员报告软件配置管理的状态、审计软件配置管理活动、实现自动化的构建与发布,其中第五点更是与时下流行的敏
4、捷趋势伴随而流行。 全面认识软件配置管理的含义,可以帮助我们认知在企业内实施配置管理时的先后步骤,以循序渐进的方式来实施。另外,也可以帮助我们全面管理企业实施时所涉及的活动。在软件配置管理的五个主要方面中,很明显,标识是基础,即首要的第一步是要确定哪些对象需要纳入到配置管理的控制之下, 候选的对象包括:源代码,设计文件,用户手册,数据库脚本,构建脚本,网站图形元素等等;接下来需要确定如何控制对这些配置项的修改,包括环境的搭建,用户授权,开发流程等等;随后,要及时向团队成员报告软件配置管理的状态,履行告知的义务,以及进行审计,确认相关的软件配置管理活动确实按照预定的计划高质量地完成了。认识到这五
5、个方面的软件配置管理活动的相互关系非常重要,它们之间互为前提。同时,认识到这一点也告诉我们在进行软件配置管理建设时不要好高骛远,而是要分阶段一点一点的稳步前进。这五个方面,软件配置管理工具都要进行强有力的支持,使得日常事务减至最少,这是一个成熟的软件配置管理工具应具备的基本特征,将在后面讲述。如果您到此还对上面的定义感到太学术的话,我们不妨换一个角度来理解软件配置管理。实际的软件开发活动中,常常会有以下的“课题”,请您想想该如何解决呢?v 如何跟踪供应商(Open Source)的代码?v 如何管理并行开发?v 如何进行分布式开发?v 如何实现自动化的发布?v 如何实现变更管理的流程自动化?v
6、 .如果一下子回答不上来的话,也没关系。这些问题都是软件配置管理研究的范畴,掌握软件管理方面的理论,选择合适的工具,以及采用合适的实施策略,将会使这些问题一一得以解决。由此可见,软件配置管理在软件开发(研发)活动中具有基础性的地位,无论是Borland的ALM理念,还是RUP的开发流程,以及敏捷开发,都对这一观念进行了充分的认可。CMM/CMMI对软件配置管理的活动进行了进一步的细分,如下图所示:从图中可见,CMM/CMMI将软件配置管理的活动分成了六个方面,每个方面又再进行了细分。除了上述的五个方面外,还加上了实施软件配置管理所需要的组织架构上的支持活动。全面认识软件配置管理的活动,可以防止
7、在实施的范围上有所偏差或遗漏。组织架构与实施级别前面提到,为了有效实施配置管理,还需要组织架构上的支持活动,这就需要具备一定的组织结构。视企业的规模以及实际应用开发时的情形,软件配置管理常常在三个级别上实施:项目级,应用级和组织级,不同级别的软件配置管理需要履行不同的职责内容,因而也具有相应的组织结构,如下表所示:软件配置管理实施级别具体内容履行角色涉众/受益者项目级l 将配置管理任务纳入到项目总体计划之中l 对代码打基线,作为新开发的稳定基础l 建立适当的分支策略与结构l 编译代码l 创建带交付物的发布包l 参加CCB会议项目中的兼职或专职配置管理员项目经理及项目组成员应用级(产品级)l 评
8、估应用(产品)级别的配置管理需求l 选择最适合该应用的配置管理技术l 定义应用级别的配置管理计划(独立地),如果在组织级别不存在的话l 为应用建立配置管理环境l 为应用建立配置管理流程(检出、检入、构建、发布、变更控制、问题管理等等)l 执行配置管理培训专职配置管理员、配置管理经理产品经理组织级l 确定配置管理知识域l 评估组织级别的配置管理风险l 评估配置管理的支持和赞助者l 定义SCM预算l 建立配置管理的针对性架构l 定义组织级别的配置管理计划l 定义通用配置管理术语配置管理组,包括组长,发布经理等等组织管理层认识到这一点非常重要,无论是组织还是个人,在实施软件配置管理时首先要清楚自己实
9、施软件配置管理时的范围是在项目级,还是应用级,或是组织级。不同级别的活动重心不一样,认识到这一点可以使得将有限的资源投入到关键的地方,从而确保成功。实施误区及对策 尽管国内在软件配置管理的应用上已经有着多年的历史,然而,失败的情况仍然比比皆是,原因很多,这里仅列出其中的一些情形,希望能起到警示的作用。我们在此不谈论由于缺少软件配置管理而带来的现象,大多数企业已经不再在是否实施软件配置管理方面犹豫不决。尽管如此,有了主观上的愿望还远远不够,企业在实施软件配置管理时还需要注意相应的策略以及防范可能会走入的误区。1没有专职的SCM人员;没有兼职的SCM人员;没有SCM人员 这是一个很常见的现象,由于
10、对配置管理的内容认识不清,组织常常不重视配置管理,项目组除了项目经理,常常是清一色的开发人员。缺乏配置管理人员或“凑合”的配置管理人员常常会造成项目的诸多问题,如版本丢失,问题的重复出现,并行开发力度不够等等。2SCM人员地位不高;团队整体SCM意识不够地位不高的SCM人员缺乏推行SCM制度的力度,团队的SCM意识不够更是造成实施的难度加倍。3对SCM缺乏正确全面的认识1).范围对SCM实施的范围缺乏全面的认识常常使得实施时一叶障目,将焦点集中在有限的几个点上,例如版本控制和Bug管理,而其他方面却成为了盲点,例如软件的构建与发布。 2).偏见在主观上对配置管理存在一些偏见,认为它过分强调过程
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 企业 软件 配置管理 实施 策略
链接地址:https://www.31ppt.com/p-1704148.html