APP下载

软件配置管理简化实施方法

2016-05-14周艳会刘海丁皓

电子技术与软件工程 2016年6期
关键词:配置管理

周艳会 刘海 丁皓

摘 要软件配置管理是通过技术或行政手段,对软件产品及其开发过程和生命周期进行控制、规范的一系列措施。配置管理的目标是记录软件产品的演化过程,确保软件开发者在软件生命周期中各个阶段都能得到精确的产品配置。配置管理的主要工作一般包括:建立配置管理机构和软件三库、制定配置管理计划、基线控制、出入库控制、更改控制、配置状态记实、配置审核。根据项目的具体情况,配置管理的实际工作内容不同。

【关键词】软件配置管理 配置管理 软件三库 配置管理简化实施

1 实施软件配置管理的必要性

随着科技的不断发展,软件项目的复杂性与集成度越来越高,项目的成败在很大程度上取决于对其开发过程的控制,包括对质量、源代码、进度、资金、人员等的控制,有效的过程必须有科学的管理方法,“软件配置管理”是通过技术或行政手段,对软件产品及其开发过程和生命周期进行控制、规范的一系列措施。实践证明,软件配置管理是一套规范、高效的软件开发管理方法,同时也是提高软件质量的重要手段。

1.1 实施软件配置管理,是提高效率和质量的必要手段

软件研发中出现的每一个问题,必须及时定位、修改、更新和记录,配置管理过程中的记录、报告和版本控制,通过问题跟踪和追溯,能加快问题的定位和修复,并最大限度减少缺陷和错误的发生以及再次发生;同时,在软件编码过程中,使用配置管理工具,能够较好的避免因并行开发、多重维护带来的版本混乱、重复编码等问题,清晰的配置管理过程,在节约人力的同时,提高了产品质量。

1.2 实施软件配置管理,有利于单位建立知识库

软件代码是软件开发人员脑力劳动的结晶,也是软件开发单位的宝贵财富,长期开发过程中形成的各种代码对象就像一个个零件坯一样,是快速生成系统的组成部分。实施配置管理,能够对各人的有用对象进行管理,把其使用范围扩大到单位级,进行规范化并加以说明和普及,建立单位级的代码对象库;在配置管理中,形成完整的开发日志及问题集合,以文字方式伴随开发的整个过程,不依某个人的转移而消失,有利于单位积累业务经验,无论对版本整改或版本升级,都具有重要的指导作用。

1.3 实施软件配置管理,能够降低成本,节约费用

通过软件配置管理,可以对不同阶段软件代码版本进行管理和跟踪,建立代码知识库,提高代码的重用率,同时最大限度地共享代码,便于进行新版本或类似功能的开发,减少再开发的成本,提高开发效率,缩短开发周期;通过配置管理,建立开发管理计划和规范,共享最新文件和代码,当项目成员跨地域分布时,能够实现协同有序,互不干扰而又不失去控的异地工作,从而节约大量的旅差费用。

1.4 实施软件配置管理,是规范管理的要求

通过建立科学的配置管理流程,将大量的文档和代码等知识财富统一标识,按阶段进行规范化管理,避免随意保存在项目经理和软件工程师各自的机器里,因硬盘故障或人员离职造成数字财富因缺乏必要的配置管理而白白流失。能够应对人员离职、版本混乱、加快问题的定位和修复;通过配置管理规范软件研发各阶段的文档,进行有效的质量记录和文档管理,保证每个使用者都能得到正确的版本,在提高项目研发效率的同时,也为企业积累了组织级财富,便于今后的项目共享;软件项目的研制过程是随项目的规模以指数上升,只有在项目研制之初,制定项目开发和管理计划,并在研制过程中,依照计划实施,才能避免项目研制过程中的盲目性;代码回溯是软件编制过程中经常发生的,使用工具进行规范化的配置管理,每天记录当天代码修改情况,规范文档和代码每天的版本,使工作或代码回溯成为轻松便捷的事。

2 简化实施软件配置管理的策略

软件配置的主要工作包括:建立配置管理机构和配置库(即软件开发库、受控库、产品库,又称软件三库)、制定配置管理计划、基线控制、出入库控制、更改控制、配置状态记实、配置审核。本文重点介绍综合性科研单位的软件配置管理工作的简化实施。

2.1 建立配置管理机构和配置库

在项目设计开发期间,应建立相应的配置管理组织(配置管理委员会或配置管理小组),专门负责配置管理工作。项目组应指定专人(配置管理员)处理配置管理事务。

配置库也称为软件“三库”,是软件配置管理机构的组成部分,包括:开发库、受控库、产品库。开发库存放各开发阶段产生的尚未通过评审的程序、文档等电子版本或纸制资料,一般由项目组建立并维护;受控库存放已通过测试或评审且作为阶段性产品的软件配置项集合,包括程序和文档,一般由研制管理部门(或质量管理部门)建立和维护,受控使用;产品库存放已定型(鉴定)且供交付、生产、检验验收的软件配置项集合,包括源代码、可执行程序、数据和文档的电子版或纸制资料,一般由组织的技术档案管理部门建立和管理。

三库可以借助专门的配置管理软件建立,也可以以电子或物理形式建立。例如:受控库可以是一系列电子文件夹,产品库可以是一组文件柜。如表1所示。

2.2 制定配置管理计划

配置管理计划的目的在于对所开发的软件规定各种必要的配置管理条款,从而保障产品质量。内容包括:说明配置管理角色和职责、计划纳入配置管理的配置项、计划的基线时间和内容、配置库的建立方式和授权、配置状态记录和统计计划、更改和版本控制,并确定项目标识、文档标识、程序和产品标识、版本标识等。

对基线的管理是配置管理的重点内容。基线是软件文档或软件代码的一个稳定版本。是被正式确认并作为今后研制生产、使用保障活动的基准。已形成基线的关键文档,虽然可以修改,但必须以一个特殊的、正式的过程进行评估,确认每一处修改。软件开发项目的配置管理基线包括:功能基线、分配基线、设计基线、开发基线和产品基线。在实际应用中,根据项目的规模和实际研发情况,可以只划分功能基线、分配基线和产品基线。基线对应的标志性文档如表2,每一种基线以通过一定级别的评审后建立。

2.3 配置控制

开发库出入库较频繁,主要由项目组控制。通常配置控制主要是对受控库和产品库的控制。为了简化实施,只能涉及基线的配置项目进行控制。

2.3.1 基线控制

在确立基线的标志性评审通过后,及时将基线文件入库,此后,若有对基线文件的使用和修改,应及时记录并向有关人员发布最新版本。

2.3.2 出入库控制

一般在基线建立后、变更前后和重要事件前后,要记录配置项出入库。配置项出入受控库或产品库应当填写《出库单》和《入库单》。

2.3.3 更改控制

被更改的源代码和相关文档必须正式取自配置管理的受控库或产品库,更改后重新入库并填写《配置变更报告单》,版本的变更,也应进行记录。

2.3.4 配置状态记实

记录并报告受控软件配置管理项的现行状态和历史。在实施配置变更处理的过程中,配置项的状态分为:变更中、有效、无效。配置管理者应在一个重要阶段结束时,及时汇总《配置状态记录单》。

2.3.5 配置审核

在项目研发完成一个阶段或在产品交付前,应进行功能配置审核和物理配置审核,功能配置审核以确定和保证配置项的完整性;物理配置审计以检查程序与文档的—致性、文档与文档的—致性、交付的产品与任务书要求的—致性以及与标准规范的—致性。完成审核后,应填写《配置审核单》。

2.3.6 配置总结

根据配置管理情况,一般在项目完成时,编写配置管理报告,也可以在研制总结中进行配置管理总结,内容包括:配置管理情况综述、用户组划分及权限分配、配置项记录、基线记录、入库记录、出库记录、变更记录、审核记录、备份记录等。

3 结束语

专业软件开发单位的软件配置管理工作,一般应达到软件研制能力成熟度模型(CMM)3级或以上标准,故一般采用专业的配置管理软件实现;对于实施质量管理体系的综合性科研单位的配置管理,一般达到软件研制能力成熟度模型二级标准即可,重点记录基线形成和变更、大阶段的配置管理状态和审核,以及相应的出入库,可以采用一些版本管理软件辅助实施,同时制定一系列规则,以人工辅助部门级配置管理工作。

注:文中提到的配置表单和文档表单,可参考相关标准中的格式。

参考文献

[1]陈焱,李勇,韩铁军.配置管理在软件系统开发中的作用[J].自动化指挥与计算机,2012(04).

[2]冯济舟.软件配置管理典型问题的研究与思考[J].航天标准化,2013(03).

[3]刘旭奕.基于GJB5235的软件配置管理方法初探[J].标准介绍,2011(02).

[4]高贤志,戴恒毅.导航装备软件配置管理方法研究与实践[J].装备质量管理,2012(08).

[5]周智力,原月,薛洁.航天企业中软件配置管理模式实施与应用[J].数字军工, 2012(02).

作者简介

周艳会(1972-),女,河北省人。硕士学位。现供职于中央军委后勤保障部科学研究所。主要研究方向为计算机及应用。

刘海(1982-),男,湖南省人。博士学位。现供职于中央军委后勤保障部科学研究所。主要研究方向为计算机及应用。

丁皓(1989-),男,山东省人。硕士学位。现供职于中央军委后勤保障部科学研究所。主要研究方向为计算机及应用。

作者单位

中央军委后勤保障部科学研究所 北京市 100166

猜你喜欢

配置管理
汽车委托外加工零件自动化配置管理
浅析核电厂移交接产过程中的配置管理
事业单位人力资源合理配置与管理研究
浅谈公路工程施工机械的配置与优化管理
高速公路施工机械化合理配置及方法
航天型号软件配置管理工作浅析
论ISO20000体系量化指标梳理
建设CMDB任重道远
基于PLM 的IRIS 配置管理的实施和应用