试议航天型号软件配置管理系统

更新时间:2024-01-22 作者:用户投稿原创标记本站原创
摘 要:对CMM(能力成熟度模型,Capability Maturity Model)中软件配置管理的研究,结合航天型号软件实时性、高可靠性和重用性的特点,提出使用B/S软件架构实现基于Web技术的航天型号软件配置管理系统。传统的配置管理系统对航天软件生产实践缺少性,航天型号软件配置管理系统根据航天软件工程的实际需求,细化了软件配置项,提高了软件质量,实现了成熟软件模块的高重用性。介绍了CMM中配置管理的基本概念,完成了航天配置管理系统的概要设计,并对系统中配置项管理模块的实现思路进行了具体说明,最后对航天软件配置管理系统的应用前景进行了展望。
关键词关键词:CMM;软件配置管理;B/S;软件工程
16727800(2013)008002003
0 引言
软件配置管理(SCM,Software Configuration Management)为软件开发提供了一套管理策略和原则[1]。它制约着整个软件系统的演变过程,其目标是对从软件项目启动开始到软件报废为止的全生命周期进行管理的学科。根据IEEE标准中软件配置管理的定义,配置管理系统以版本管理、变更管理、状态统计和配置审核这4种基本功能的具体实现,对软件开发进行标识、制约与管理[2]。
基线和软件配置项是软件配置管理的核心对象。基线(Baseline)即软件存活期中各开发阶段节点,只有变更制约过程才能修改它们;软件配置项(Software Configuration Item)即软件配置管理的对象,是软件工程过程中产生的信息项,如需求、测试计划和源代码等。SCM活动的目标就是为了实现对基线和配置项的变更进行标识、制约,确保变更正确实现,并向其他有关人员报告变更。在软件全存活周期内,软件变更是不可避开的,而变更加剧了项目中软件开发者之间的混乱。SCM能协调软件开发过程,使得混乱减少到最小,能够有效地提高软件的生产效率。
航天软件一般是嵌入航天制约系统的数据处理机和制约处理机的核心软件。由于航天软件在航天系统中的性,要求其具有较高的实时性、可靠性和可修改性。航天制约软件是整个航天系统的制约核心,如果实时性不能满足,将导致各个分系统的运转混乱,无法完成预期任务。航天系统的可靠性要求更高,航天系统原则上不允许出错,然而航天对软件需求处于不断变更过程中。因此,在航天软件的开发过程中,实施软件配置管理十分必要,这样才能使整个软件生命周期处于可控状态。
航天软件系统庞大而复杂,成本高,开发周期长,因此,航天软件产品具有较好的重用性和可维护性。细化软件配置项、规范化基线和软件配置项标识,实现软件产品横向、纵向可追溯性,是提高软件可重用性的有效方式。为了提高航天软件质量,开发库、受控库和产品库三库独立,应严格制约三库的访问权限,明确三库的备份方式。
1 概述
考虑到航天软件的特点和航天软件研制的目前状况,航天型号软件研制的基本阶段包括:系统需求、软件需求分析、概要设计、详细设计、软件实现、软件组装测试、软件确认测试、系统联试[3]。考虑到航天型号软件在其生命周期中的变更、重用性和验收交付工作,航天软件研制过程还应包括:软件更新与更改、软件重用和软件验收交付3个阶段。航天软件配置管理系统,对航天软件全生命周期各个阶段产生的文档、实现的代码、参考的标准、产生的数据等软件产品识别成独立的配置项。为了实现航天不同型号的分系统软件配置项的重用性,本系统对各个航天型号软件分系统有的模块、结构、设计和规格说明等独立标识成配置项,独立管理,跟踪的配置项和它们的版本、记录、评审、批注等,跟踪全部更改申请和理由报告。
2 软件设计
航天软件配置管理系统较为流行的B/S软件架构体系,包括数据库层、数据访问层、业务逻辑层和表现层4个,如图1所示。4个层次之间相对独立,使数据显示、逻辑处理、数据处理和数据存储相对独立,对前台的更改不会直接影响到后台。4个层次又相互联系共同完成从客户端请求到服务应答显示的整个交互过程。
图1 航天型号软件配置管理系统架构
表现层是和用户直接交互的,显示在客户端的浏览器上。它将用户的操作转化成可执行的命令,传递给业务逻辑层,经过后台处理后的数据经过表现层转变成用户期望看到的表现形式。航天配置管理系统的主界面下分成库管理、配置项管理、基线管理、配置审计、配置状态报表和权限管理几个功能模块。
业务逻辑层是系统的中枢神经,负责各种业务逻辑转换和流程的传递、制约。它接收客户端的命令对数据库进行操作,将获取的数据传递给表现层。由于航天软件管理的严格性,对配置项和基线的出入库、变更、状态报告以及库和配置的权限设置有严格的制约逻辑。
数据访问层负责读取数据库中的各种实体数据,将数据按照业务逻辑的要求呈现出来。同时,响应业务逻辑层对数据库中各种实体数据的更改。
数据库层是用来存储各种实体数据的数据库。按照航天配置管理系统的要求,定期对数据库进行备份。
3 数据库设计
航天配置管理系统的数据库,存放着配置信息和数据。数据库设计直接关系到软件的实现和系统性能,是系统整体设计的关键环节。库、项目、配置项和基线的ER模型如图2所示。由于篇幅限制,本文只给出简图。
图2 库、项目、配置项和基线的ER模型
航天软件配置管理系统在库管理方面存储、分类管理、透明访问的策略,直观体现CMM中对开发库、受控库和产品库三库分离的软件配置管理需求[4]。从ER模型简图中可以看出,在一个配置库中存储着多个项目,每个项目中存储着软件生命周期中各个阶段的配置项。同时,在软件生命周期中有若干条基线,每条基线中有若干个配置项,一个配置项也包含于多条基线中。

点赞:20749 浏览:93557