搜档网
当前位置:搜档网 › 简述软件配置管理

简述软件配置管理

简述软件配置管理
简述软件配置管理

简述软件配置管理

一、简述软件配置管理

随着软件团队人员的增加,软件版本不断变化,开发时间的紧迫以及多平台开发环境的采用,使得软件开发面临越来越多的问题,其中包括对当前多种产品的开发和维护、保证产品版本的精确、重建先前发布的产品、加强开发政策的统一和对特殊版本需求的处理等等,这些问题在实际开发中表现为,项目组成员沟通困难,软件重用率低下,开发人员各自为政,代码冗余度高,文档不健全等;造成的结果是:数据丢失,开发周期漫长,产品可靠性差,质量低劣,软件维护困难,用户抱怨使用不便,项目风险增加等。解决这些问题的唯一途径是加强软件开发的管理,而软件开发管理的核心是软件配置管理。

什么是软件配置管理?软件配置管理是一套规范、高效的软件开发基础结构。作为管理软件开发过程有效的方法,早已被发达国家软件产业的发展和实践所证明。可以系统地管理软件系统中的多重版本;全面记载系统开发的历史过程,包括为什么修改,谁作了修改,修改了什么;管理和追踪开发过程中危害软件质量以及影响开发周期的缺陷和变化。对开发过程进行有效地管理和控制,完整、明确地记载开发过程中的历史变更,形成规范化的文档,不仅使日后的维护和升级得到保证,而且更重要的是,这还会保护宝贵的代码资源,积累软件财富,提高软件重用率,加快投资回报。从某种角度讲,是一种标识、组织和控制修改的技术,目的是使错误降为最小并最有效地提高生产效率。是通往和标准的一块基石。

二、软件配置管理的主要活动

任何一个活动的执行首先是明确谁做,再明确怎么做,配置管理活动也一样,一般来说配置管理中的角色主要包括:

项目经理:项目经理在配置管理方面的职责是依靠配置管理员、系统管理员和系统体系结构设计人员的帮助,制定项目的组织结构和配置管理策略。这些工作包括:定制开发子系统,定制访问控制,制定常用策略,制定集成里程碑,以及进行系统集成

配置管理员:配置管理员的职责是根据项目经理制定的开发组织结构和策略,实施、维护配置管理的环境。其主要职责如下:创建配置管理库,对存储库进行日常备份和恢复,维护配置管理环境,及管理配置管理相关的用户

软件开发人员:软件开发人员依据项目的开发和配置管理策略,创建、修改和测试开发工件

集成人员:对软件进行归并,形成相应的基线或发布版本

人员:需要对软件配置管理有较深的认识,其主要工作是跟踪当前项目的状态,测试,报告错误,并验证其修复结果

软件配置管理人员应该完成以下几个主要任务:

任务一配置标识

要配置标识,首先必须明确项目生命周期内所要产生的工作产品,然后确定工作产品的名称和标识规则。总体原则是,保证配置管理工具检索便利,让项目组成员容易记住标识规则,同时要确保组织一级的标识规则的一致性。

任务二版本管理

版本管理一般是使用工具来完成的,如、、等。使用这些工具时,容易被忽视的一点是制定所使用工具的版本规则。如果直接采用工具的内部版本号,会给产品发布带来一些困难。通常采用“”方式进行版本标识,明确、和各位数字递增的规则,然后结合工具标签()功能,便可实现高效的版本管理。

任务三变更管理

变更管理是项目管理的一个重点和难点,涉及的范围很广。实施高效的变更管理至少应该包括两个部分:“定义合理的变更管理流程”、“采用自动化工具作为支持”。在具体的实践中,应该对变更进行分类和分层,建立起处理不同变更的“变更控制委员会”(),既保证项目组成员有一定的自主权,又不会耽误高层经理对关键问题的把握。

任务四配置审核

配置审核包括两方面的内容:“配置管理活动审核”、“基线审核”。“配置管理活动审核”用于确保项目组成员的所有配置管理活动,遵循已批准的软件配置管理方针和规程,如检入()检出()的频度、工作产品成熟度提升原则等。实施“基线审核”,要保证基线化软件工作产品的完整性和一致性,并且满足其功能要求。基线的完整性可从以下几个方面考虑:基线库是否包括所有计划纳入的配置项?基线库中配置项自身的内容是否完整?(如,文档中所提到的参考或引用是否存在?)此外,对于代码,要根据代码清单检查是否所有源文件都已存在于基线库。同时,还要编译所有的源文件,检查是否可产生最终产品。一致性主要考察需求与设计以及设计与代码的一致关系,尤其在有变更发生时,要检查所有受影响的部分是否都做了相应的变更。审核发现的不符合项要进行记录,并跟踪直到解决。

任务五报告配置状态

报告配置状态的目的,是向项目所有成员提供基线内容和状态、基线变更信息(如表所示),这也是实现资源共享的前提。此外,在项目生命周期中进行对配置项的变更数据统计分析,有利于评估项目风险,有效控制项目的执行。在变更请求被批准、基线版本发生变化及项目组提出任何需要时,可以采用等方式进行报告。

任务六发布管理

实施了规范的配置管理,发布就显得很从容了。但是必须要注意的是:发布的产品应该是从软件基线库中提取出来的;在软件发布给最终用户之前,要准备发布记录,为软件产品分配发布版本号,同时要对它进行发布评审并确认其得到批准。一般来说,高层经理、项目经理、软件质量保证人员和测试组都应该参加发布评审。

相关主题