当前位置:文档之家› 软件开发配置管理规程

软件开发配置管理规程

目录1前言 (1)1.1目的 (1)1.2读者对象 (1)1.3版本信息 (1)1.4术语与缩略词 (1)1.5参考文献 (2)1.6修改历史 (2)2配置管理的理论基础 (3)2.1配置管理对象 (3)2.2配置管理任务 (3)2.2.1标识配置对象 (3)2.2.2版本控制 (3)2.2.3修改控制 (4)2.2.4报告配置状况 (4)2.3软件配置的方式 (4)3配置管理的措施 (4)3.1软件配置的工作目标 (4)3.2岗位职责 (5)3.3软件项标识的原则 (5)3.4软件项标识的分类 (5)3.4.1文档 (6)3.4.2代码 (7)3.4.3数据 (7)3.5软件项配置的状态 (7)3.6标识编码规则 (8)3.6.1文档标识 (8)3.6.2代码标识 (10)3.6.3数据标识 (11)3.6.4软件项状态的标识 (11)3.7配置管理 (12)3.7.1配置管理的基本流程 (12)3.7.2配置管理的阶段划分 (12)3.7.3立项计划阶段的配置管理 (13)3.7.4原型开发阶段的配置管理 (13)3.7.5需求分析阶段的配置管理 (13)3.7.6概要设计阶段的配置管理 (13)3.7.7详细设计阶段的配置管理 (14)3.7.8编码调试阶段的配置管理 (14)3.7.9系统测试阶段的配置管理 (14)3.7.10内部验收阶段的配置管理 (15)3.7.11工程实施阶段的配置管理 (15)3.7.12初验阶段的配置管理 (16)3.7.13试运行阶段的配置管理 (16)3.7.14终验阶段的配置管理 (16)3.7.15运行维护阶段的配置管理 (16)3.8变更管理 (16)4配置管理工具 (16)1前言1.1目的编写本管理规程的目的是为创智软件园软件配置测试中心的配置测试管理组对日常的软件项目开发进行配置工作时提供指导,为软件开发体系的项目组在日常的项目管理、设计、开发和测试中制定统一的软件项及其状态标识提供依据,以便于项目管理、开发、配置和测试工作有序、统一和规范化。

在本管理规程中明确了软件配置在软件开发中的意义、阶段划分、配置的内容、软件配置的基础、目标、正常流程、质量评价方法,以及进行软件配置工作时需要使用的相关表格和记录格式,为软件开发和维护中的可追溯性提供保障。

本操作规程是指导创智软件园软件开发体系进行软件配置工作的唯一指南,可以作为创智软件园有限公司ISO9001质量体系程序文件的支持文件。

1.2读者对象本管理规程的可能合法读者是创智软件园软件开发体系的项目管理人员、设计人员、配置测试人员、机要室的机要员和经软件配置测试中心部门经理授权的人员。

任何无关人员不得以任何方式私阅、借阅、复制和传递本规程,创智软件园的员工一旦发现本管理规程在外面流失,有责任维护公司利益,及时向公司汇报,以挽回可能带来的直接和间接的损失。

1.3版本信息本管理规程1.0.0版是在综合公司自1995年以来软件开发中软件配置的经验和借鉴国内外软件配置技术最新研究成果的基础上,由创智软件园软件配置测试中心规范研究与制定组于1998年10月开始起草,并于1998年11月初稿完成的。

本管理规程2.0.0版是由软件配置测试中心规范研究与制定组按照ISO9001质量体系程序文件要求于1999年05月进行修订并完成的。

1.4术语与缩略词1)软件:包括能够使应用系统正常运行和维护所必须的文档、程序和数据。

2)软件项:构成整个应用系统的子系统、功能模块的独立的或以操作系统文件形式存在的软件元素,通常以操作系统文件或功能模块及其组合的形式存在。

3)准基线库:由软件开发项目组提交的等待评审或测试的软件项数据仓库。

4)基线库:由软件项目/产品开发组提交的完全通过评审或测试的合格软件项数据仓库。

5)配置管理:将软件项目的组成部分(文档、代码和数据)存放入准基线库和基线库进行配置管理和版本控制。

6)软构件库:可以供公司各个项目组重复使用或共享的经过构件化过程的合格软件项数据仓库。

7)软件配置:一个软件产品在软件生存周期各个阶段所产生的各种形式(机器可读或人工可读)的各种版本的文档、程序及其数据的集合。

该集合中的每一元素称为该软件产品配置中的一个软件配置项(SCI)。

8)单元测试:测试软件项(诸如构件、模块、函数等),具体设计到控制流和数据流。

9)组装测试:对软件项(诸如构件、模块、函数等)或子系统等进行组合测试,测试其接口的正确性、稳定性。

10)系统测试:将整个软件项目作为一个整体,包括网络、服务器和工作站的软硬件以及应用软件的配置到位的情况下,进行测试。

是公司内部的验收测试,为公司内部软件项目/产品的验收评审提供测试依据。

11)验收测试:是将整个软件项目作为一个整体,包括网络、服务器和工作站的软硬件以及应用软件的配置到位的情况下,由客户单位为主体进行的测试,包括初验测试和终验测试,初验可以在模拟环境下,终验则必须是在实际运行环境下进行。

12)软件配置工具:可以辅助人工进行软件配置和管理工作的软件工具。

1.5参考文献1)GB/T11457软件工程2)GB/T8566计算机软件开发规范3)Gb/T8567计算机软件产品开发文件编制指南4)《软件工程》齐治昌等。

北京:高等教育出版社,19975)《创智软件园软件开发项目管理手册》6)《创智软件园软件开发安全管理制度》7)《软件工程》齐治昌等。

北京:高等教育出版社,19978)创智软件园ISO9001质量体系《产品标识和可追溯性控制程序》版本B/09)创智软件园ISO9001质量体系《创智软件园产品标识和可追溯性控制程序》版本B/01.6修改历史序号时间地点责任人修改内容记录11998/12/08创智软件园孙继纲修改、初稿21999/3/15创智软件园陈皓修改31999/3/19创智软件园陈皓根据会议意见修改41999/5/25创智软件园刘立军参考程序文件进行修改51999/05/26创智软件园孙继纲最终定版2配置管理的理论基础软件配置管理(Software Configuration Management简称SCM)是对软件修改进行标识、组织和控制的技术,用来协调和控制整个系统过程,保证资料的完整性与一致性,应用于整个软件工程过程。

它是一组追踪和控制活动。

通过严格的软件配置管理,可以使接受软件测试的源代码、可执行代码和数据首先处于准基线库这种可以控制的状态中,从而可以为软件测试提供稳定的、可靠的、可重复的被测素材;同时,通过软件配置管理,可以保证开发和测试的对象的一致性,不会造成被测对象的内容和版本存在差异,从而为可能存在的测试后的缺陷跟踪和修改提供了极大的方便。

本管理规程将从配置管理对象、配置管理任务以及配置管理流程几个方面详细说明。

2.1配置管理对象软件开发过程的最终结果包括三类信息:(1)程序:包括源程序和目标程序;(2)文档:包括技术文档和用户文档两类;(3)数据结构:包括程序内部和外部定义两部分。

在软件工程过程中产生的所有信息项就构成了软件配置项(SCI),它是软件的具体形态在某一时刻的瞬时影像。

这样的具体形态取两种形式:(1)文档:如书写的文档、程序清单、测试数据、测试结果等。

(2)代码:如源代码、目标代码、数据库信息等。

2.2配置管理任务软件开发配置管理的主要任务是控制软件的修改,主要包括:(1)标识配置对象(2)版本控制(3)修改控制(4)报告配置状况2.2.1标识配置对象为了控制和管理的方便,所有的配置对象都应命名并组织起来,根据软件开发和项目管理的特点,结合软件项目的功能组成,对其进行逐级标识,从而可以区分不同的功能模块和软件结构。

2.2.2版本控制理想情况下,每个配置项只需保存一个版本。

实际上为了纠错和满足不同用户的需求,往往一个项目保存多个版本,并且随着系统开发的展开,版本数目将明显增加。

配置管理的版本控制主要解决下列问题:(1)根据不同用户的需要配置不同的系统;(2)保存系统老版本,为以后调查问题使用;(3)建立一个系统新版本,使它包含某些决策而抛弃另一些;(4)支持两位以上工程师同时在一个项目中工作;(5)高效存储项目的多个版本。

2.2.3修改控制在一个大型软件开发过程中,无控制地修改会迅速导致混乱。

如果把人的管理与自动工具结合起来,建立一套机制,有意识的控制软件修改,就可在最大程度上减小混乱的威胁。

2.2.4报告配置状况配置状况报告(Configuration Status Reporting,简称CSR)作为软件配置管理的一项任务,主要概述下列问题:(1)发生了什么事情;(2)发生的原因;(3)谁做的;(4)何时发生的;(5)有什么影响。

CSR的时机是当某个SCI被赋予新标记或更新标记时,或进行一项修改申请时。

CSR 的输出可放在项目数据库中,供开发人员和维护人员随时按关键字查询,这样可以减少大型软件开发项目中由于人员缺乏通信而造成的盲目行为。

2.3软件配置的方式软件配置的方式有人工和自动(软件工具)两种。

在现阶段,由于开发方式及软件工具不完善等原因,只能以人工为主,配置工具为辅的方法进行配置工作。

当各方面的条件都具备后,则应以自动化配置工具为主,人工干预为辅的配置方式。

3配置管理的措施3.1软件配置的工作目标整体工作目标:1)为公司软件项目/产品的质量提供保证。

2)为软件项目/产品测试及供服务。

3)建立公司的软件库,为公司软件项目/产品保存及查询提供服务。

4)建立软构件库,为公司的项目/产品提高开发速度及提供质量保证。

具体工作目标:1)对软件项目开发的可行性研究、质量策划、需求分析、概要设计、详细设计评审,及时预防和尽早发现缺陷,反馈给项目组,尽早修改完善。

2)执行软件配置管理建立基线库,为项目测试提供基础。

3)控制配置对象的修改,保证项目/产品质量。

3.2岗位职责在软件开发过程中,直接和间接参与配置管理的岗位职责包括:1)开发部项目组成员:●制定项目开发计划书●在概要设计和详细设计中标识软件项。

●按期将各个阶段的软件项提交配置测试中心配置测试组2)开发部验证组成员:●制定验证计划●对项目组产生的阶段成果进行提交配置测试组之前的验证,提交验证报告●根据总监办的评审结果或配置测试组的测试结果,对项目组的修改情况进行验证,提交验证报告3)配置测试中心配置测试组:●制定配置测试评审计划和配置管理计划●对各个阶段产生的软件项进行收集和进行配置管理和版本控制。

●对各个阶段产生的变更情况进行控制●定期提交配置管理和版本控制状态报告4)配置测试中心系统管理组:●针对不同的项目建立配置管理系统●针对不同的项目进行软件项在配置管理系统中的生成、复制、备份和清除5)机要室机要员:●对成型产品的软件项进行基线库和构件库的管理。

相关主题