首页 > 范文大全 > 正文

基于FireFly的舰载软件配置管理系统设计

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于FireFly的舰载软件配置管理系统设计范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘 要:本文首先对FireFly的基本架构进行了介绍,然后基于firefly的架构建立了一套舰载软件配置管理实施系统,有效地提高了软件配置管理工作的有效性和时间性,避免了人工管理的不足和局限。通过实际运行和应用该配置管理系统,实践表明了该方案的有效性。

关键词:GJB5000A;软件产品;FireFly;配置管理系统

中图分类号:TN820

配置管理的目的是利用配置标识、配置控制、配置状态记实和配置审核建立和维护工作产品的完整性[1]。GJB5000A对软件配置管理的要求是在整个项目的软件生命周期中建立、维护软件产品的完整性和可追踪性。在缺少有效管理工具时候,软件配置管理处于原始状态,存在很多缺点。引入软件配置管理工具FireFly后,如何利用好FireFly实施有效的软件配置管理是个值得研究的课题。

1 配置管理系统架构

Hansky公司的FireFly是一个软件配置管理工具。它可以提供版本控制、工作空间管理、构建管理、过程控制等功能,本配置管理系统是建立在FireFly基础上。其中,服务器安装在信息中心机房,运行所有系统管理进程,并且创建用来存储海量数据的数据库。系统配置管理员和开发人员在客户端完成各软件配置管理工作,也可以通过网页、命令行等形式进行一些基本操作。

2 三库建立与配置项目录构建

2.1 三库建立。在软件生命周期中,一般需要建立下述三个软件库:开发库、受控库和产品库。开发库:软件开发库是在软件生命周期之中,存放与该阶段软件开发工作有关的软件代码、软件文档、开发工具等相关项的库。受控库:受控库是在软件生命周期的某一阶段结束后,存放的阶段产品或与开发工作有关的计算机/人工可读信息的库。该库中存放的各种信息必须是经过审查、评审并履行过更改确认手续,在正式后处于“冻结”状态的阶段工作产品。产品库:产品库用以存放最终产品,包括交付给用户的和存档的文档和程序代码,产品库管理项目相关的配置项入(产品)库申请单、配置项出(产品)库申请单、软件产品申请单、软件产品交付清单,以及其他有关的表单。在本系统中,产品库的来源为受控库,并且内容在单位的档案室以光盘的形式备份。三库之间的关系如图1所示。

图1 三库关系图

需要说明的是,FireFly在物理上不区分开发库、受控库与产品库,而是软件配置管理员从逻辑上加以区分。受控库的版本必须打上配置标识,并且被锁定,不能随意更改。

2.2 配置项目录结构构建

配置项的内容很多,包括研制任务书、需求规格说明、软件设计文档、代码、测试产品以及GJB5000A要求的众多管理文档等,有的根据项目需要,还会放入开发工具、第三方产品等。配置管理员为每个项目分别创建工程,方便项目之间的权限控制,工程的命名以各单位实际要求为准。基本按照瀑布开发的模型来划分目录,分别代表软件生命周期内的需求、开发、合格性测试阶段,在受控库中建立功能基线、分配基线、产品基线的目录。配置项目的目录结构关系到配置管理员使用该系统的方便性,所有目录结构必须符合单位本地化特点以及标准的合理要求。

3 确立配置标识

配置标识唯一指向各软件配置项。目的是提供软件与软件相关产品的双向追踪能力。本系统中,配置标识包括基线标识、文档标识和代码标识。基线标识按照功能基线、分配基线、产品基线的基线类型和版本号进行标识,如表1所示:

4 配置变更控制

配置管理的变更控制主要针对受控库,变更控制的主要任务就是控制配置项的变更,保持对工作产品基线配置的控制,包括对每个配置项的状态的跟踪、批准新的配置项,必要时对基线进行更新。开发人员首先在配置项所有文件按照规定格式打好标签,经过配置项的评审的10个工作日内必须完成受控库入库手续,填写初始入库申请单。申请单经过项目SCCB批准后,经过配置管理员确认,配置项正式入受控库。当配置项需要修改时,变更申请人填写申请变更内容及其理由、变更优先级、变更可能的影响,填写完整后提交项目SCCB审批,项目SCCB对变更进行影响域分析,以确定变更对该工作产品、有关的工作产品和进度等的影响。审批通过后才能将改动过的配置项入库,形成配置项的新版本。受控库内的配置项,需要提取出库用于不同的用途,如合格性测试等。无论何种用途的出库,都要填写出库申请单,经SCCB审批后通过配置管理员出受控库[3]。

5 配置状态报告

配置状态报告提供了软件开发过程的历史记录,内容应该包括配置项的当前状态以及历史状态。为了便于管理和让利益相关方及时了解配置项状态,配置管理员应该定期或不定期地提供软件配置管理状态报告。

6 配置审核

配置审核主要是为了验证待审核产品是否符合规定的性能指标、设计约束和使用需求,且操作和支持文档是否完备并符合要求。可以通过验证软件或软件单元是否达到规定的功能和性能需求,从技术上保证其正确性;通过客户试用或客观证据审核研制产品是否已满足规定的功能、性能要求。在软件生命周期中,软件配置管理员每当基线建立、基线变更或其他规定的事件已经发生时候,都要进行配置审核,软件配置管理员也要对配置项进行定期审核。配置审核主要分为三种类型:(1)物理配置审核。物理配置审核的目的是验证配置管理计划中的所有配置项是否已经按照规范要求产生;所构造的配置项是否符合定义它的技术文档。基线建立或纳入基线管理的配置项状态发生变化时,配置管理员实施物理配置审核。(2)功能配置审核。功能审核的目的是验证配置项的所有功能特性是否已达到其功能基线文档中所规定的需求,且操作和支持文档是否完备和满意。软件项目产品基线建立或变更时,或纳入产品库管理的软件产品状态发生变化时,软件主管设计师、软件质量保证人员和项目配置管理员组成审核组,对软件产品进行功能配置审核。(3)配置管理审核。配置管理组长选择基线审核的适当时机,会同项目的QA人员等组成审核组,进行配置管理审核。审核工作根据软件配置管理计划评估软件基线的完整性,评估配置管理库系统的结构和设施,同时验证软件基线内容的完备性和正确性。

7 总结

有效地实施软件配置管理将使软件开发过程更成熟、更可控。本文在软件配置管理工具FireFly的基础上从系统建立、配置标识、配置变更控制、配置状态报告、配置审核几方面探讨了软件配置管理的实现,解决了目前舰载软件配置管理中存在的问题,且覆盖了GJB5000A配置管理过程域的主要活动,使整个软件组织的能力成熟度得到提升。

参考文献:

[1]GJB5000A-2008,军用软件研制能力成熟度模型[S].

[2]FireFly Administration Help[M].Hansky Inc.

[3]石柱.军用软件能力成熟度模型可重复级实施指南[M].北京:中国标准出版社,2006.

作者单位:船舶重工集团公司第723研究所,江苏扬州 225001