软件研发版本管理制度

软件版本管理制度

1.引言.................................................................................................................................................2

1.1目的.........................................................................................................................................2 1.2范围.........................................................................................................................................2

1.3术语定义..................................................................................................................................2 1.4版序控制记录...........................................................................................................................3 1.5版本更新记录...........................................................................................................................3 2.版本管理..........................................................................................................................................3

2.1版本标识方法 .........................................................................................................................3 2.1.1正式版本....................................................................................................................4 2.2目录结构 ................................................................................................................................4 2.3文档的存放 ............................................................................................................................6

2.3.1 当前版本和历史版本的存放 ..........................................................................................6

2.3.2 开发文档的存放 ............................................................................................................6 2.3.3 源代码的存放 ...............................................................................................................6 2.3.4 SQL语句的存放.............................................................................................................6 2.3.5发行文档的存放.............................................................................................................6 2.4权限控制管理 .........................................................................................................................6 3.更新管理(版本升级).....................................................................................................................7

3.1版本升级原则....................................................................................................................7 3.2 新版本的发布 ...................................................................................................................7

4.备份管理..........................................................................................................................................8 5.用户版本管理...................................................................................................................................9 6.研发部统一管理阶段性版本..............................................................................................................9

6.1阶段性版本的提交到研发部......................................................................................................9 6.2阶段性版本的发布到公司网站上...............................................................................................9 6.3各项目组新版本内部及时备份。............................................................................................. 10 7.版本工具的使用 ............................................................................................................................. 10

7.1研发部采用svn配置管理工具 ................................................................................................ 10 8.各项目组提交文档及源码以及规则 ................................................................................................. 11

8.1 各项目组需要提交的文档 ...................................................................................................... 11 8.2目前所管理的产品列表...............................................................................错误!未定义书签。 9.周报管理制度................................................................................................................................. 12 10.风险管理制度 ............................................................................................................................... 13

1.引言 1.1目的

本文档是为规范软件研发版本管理而制定的。 1.2范围

本文档为各产品部、事业部版本管理员提供有关版本管理规范的相关内容,包括:

● 版本标识方法 ● 软件系统数据的存放 ● 文档的修改控制 ● 文档的备份制度

1.3术语定义 SVN

Svn是一个开源的版本控制系统Subversion的简称 文档

一种数据媒体和其上所记录的数据。

配置管理

标识和确定系统中配置项的过程,在系统整个生存周期内控制这些项的投放和更动,记录并报告配置的状态和更动要求,验证配置项的完整性和正确性。 软件配置

软件的具体形态在某时刻的瞬时影像。 配置项

软件配置管理的对象称为配置项,如:系统规格说明书,项目开发计划,用户手册,源码。 基线

软件生存周期中各开发阶段末尾的标记,它的作用是把各阶段工作的划分更加明确化,使本来连续的工作在这些点上断开,使之便于检验和肯定阶段成果。

1.4版序控制记录

1.5版本更新记录

2.版本管理 2.1版本标识方法

为了使工作规范化、统一化,各项目组实行的版本标识管理方法分为:正式版本和特殊版本。

2.1.1正式版本

公司在市场上发行的正规版本。

以“V”开头,版本号放后。V前面增加项目名称,版本号分3节:主版本号,次版本号和内部版本号,每节之间以小数点(.)间隔。如V2.0.1表示主版本号为2,次版本号为0,内部版本号为1。研发部控制主版本号和次版本号,各项目组控制内部版本号。例如:一体化平台-平阴版v1.1.1 , 一体化平台为产品名称,平阴版为版本名称(平阴为具体项目名称),v1.1.1为主版本号+次版本号+内部版本号。 2.2目录结构

由于各项目组的实际情况不同,目录结构很难统一,但为了能更好地管理各项目组的文档,建议可将被管理的配置项分为三大类:文档类、源码类及安装盘类,这样存放比较清晰,有利于版本管理。至于二级目录是以版本划分,并根据制定的目录结构给出文件级目录清单(先给出源程序及文档的文件级目录清单,安装盘的可以后再执行):。

现以农电平台1.0的目录结构举例如下:

表示正式版本及特殊版本的目录按以下原则定义:

(1) 正始版本:以“V”开头,版本号放后,主版本号和次主版本号之间的“.”去掉,

明细版本号之前加“-”。举例如下: 版本号 目录名 V1.0 V1.0 V1.1 V1.1 V1.0.1 V1.0.1 V1.1.2 V1.1.2

2.3文档的存放

2.3.1 当前版本和历史版本的存放

对于源码文件,特别增加了一个Current目录,存放当前正在开发与维护的源码文件,当前未发布版本的所有数据都存放在.....\CURRENT\下。一旦当前版本正式发行,则当前目录被修改为相应的历史目录。

历史版本是指已经发行的版本,存放在相应的版本目录之下,一般不允许改动。 2.3.2 开发文档的存放

根据各项目部自己的情况,将系统用户需求记录、总体设计文档、详细设计及数据结构文件、测试记录、用户手册等放入相应的目录下。 2.3.3 源代码的存放

源代码包括如:java,jsp,BMP,ICO等相关文件,是未经编译处理的、不能直接交付使用的产品文件以及编译产品所需的文件;联机帮助文件HLP在未生成HLP文件之前的DOC,RTF等格式的文档也视为源代码。

各子系统当前的程序源文件放入相应的目录下。对于一个子系统又分多个分子系统的情况,应在该目录下分别建立几个相应的目录。 2.3.4 SQL语句的存放

各子系统SQL文件放入…..\.......\SQL下,对于不同的数据库,分别建立不同的子目录,如oracle、sysbase、db2等。公共SQL文件直接放入…\SQL下即可,不同数据库的特殊SQL分别放入对应的子目录下。

2.3.5发行文档的存放

发行文档是指产品交付用户使用所必须的文件。包括:产品可执行文件,用户使用说明书,联机帮助(HLP);资源文件(BMP,ICO等),环境配置文件等。 以上文档作为制作发行盘的素材,放在RELEASE的REL_SRC目录之下,制作好的发行盘放在RELEASE的SETUP目录。 2.4权限控制管理

为保障文档的安全性,一致性,以及防止意外修改,必须对不同的文档设置不同的访问权限。

文档权限类别:只读权限,读写权限。 文档类别:设计文档,源码,发行文档。

用户类别:开发人员、测试人员、分析设计人员、项目经理、配置管理员、安装盘制作人员、问题及需求管理人员、用户文档编写人员等。

为了控制不同的使用权限,根据要求在服务器上分别建立不同的用户,针对不同的配置项所在目录分配不同的权限。

为了便于管理,应以表格的形式列出人员与管理对象的访问关系(用户权限清单)。

3.更新管理(版本升级)

3.1版本升级原则

版本升级应严格纳入版本管理的控制之下。应当谨慎地控制版本的升级,保障高版本的向下兼容性,或提供严格定义的升级方法。

在下面几种情况下,进行版本演化和升级:

1、当产品发生重大修改和改进时,主版本号加1。重大修改和改进包括: 1)平台迁移; 2)开发工具的迁移; 3)体系结构的变迁。

2、当产品发生较小的改进或修改时,次版本号可以加1。

3、对于改动量比较少的,如修改产品的错误,可增加内部版本号。内部版本号对用户来说是不可见的,只对项目部内部版本控制有用。

4、记录版本升级过程。每次版本升级,都要填写版本升级记录表,记录表样例如下:

版本升级记录表

说明:

版本号: 记录当前发布的版本。 发布日期:该版本批准发布的日期。

修改文件:版本修改记录文件,一般为版本修改日志。 3.2 新版本的发布

新版本的发布包括主版本号和次版本号的升级,一般不包括内部版本号的升级。流程如下:

1、根据项目进展情况,或者根据用户需要进行发布准备。

2、在指定目录中,根据本次发布的版本号建立相应的子目录,将current下的所有内

容拷贝至新建目录下。

3、可在新建目录下建立readme.txt,并加入相应的内容。

readme.txt文件是记录该版本与上一版本的不同,作过哪些改动。格式样例如下:

4.备份管理

为了保证文档的最大可恢复性,要随时及定期地进行备份工作。 1、随时备份:

(1) 开发人员每天都要将自已当日修改的源文件在本地机器上进行备份。 (2) 开发负责人每天要将所有源文件在本地机备份。 (3) 建议备份采用循环备份。 2、定期备份

(1) 备份形式为硬盘备份和光盘备份。硬盘备份时,要备份在独立的硬盘上;光

盘备份时,要将光盘存放在可靠的地方。

(2) 备份周期视各产品部、事业部的具体情况而定。如果处于开发阶段,每周应

对所有的源程序项进行备份,一般为每周周五;如果处于其它阶段,根据具

体情况而定,但周期不能超过两周。

(3) 备份要由版本管理员负责,备份原则应是保证文档的最大可恢复性。 (4) 对于历史版本或某用户的特殊版本,如果无特殊原因不再进行修改的话,建

议用光盘进行备份,而且应有备份盘说明文件BACKUP.TXT。该文件应该记录以下内容:本次备份时间,备份内容,执行人。

5.用户版本管理

目前主要以做项目为主,是根据客户要求开发的程序。为了更好地管理源程序,应为每一用户建立一个用户版本文件,该文件应包含以下内容:

用户编号: 用户名称: 软件版本号: 开始使用时间: 联系人: 联系电话:

用户程序更改日志样例如下:

说明:

1) 用户购买软件时要为该用户建立一个包含上述内容的一个用户版本文件,并填写有

关数据。

2) 用户进行版本更新时要求填写该文件的版本变更记录,用以反映用户版本的变更情

况。

6.研发部统一管理阶段性版本

6.1阶段性版本的提交到研发部

当各项目组更新了新版本以后,如果次版本号发生改变,各项目组配置管理员经项目经理批准后要把次版本修改的内容(提交的内容分为修改的源码、新的文档和安装盘)提交给研发部版本管理人员。

6.2阶段性版本的发布到公司网站上

产品新版本发布以后,及时在软件演示环境中进行更新。并且新版本的特色和特点要在公司网站上进行发布,描述新版本特色的文档要由各项目组进行提供给项目部,经项目部保存后,文档提交给公司网站管理人员进行发布,以便供其他项目组和公司营销人员进行了解。

6.3各项目组新版本内部及时备份。

研发部负责进行所有产品版本的管理,但各个项目组也要自己进行备份。

7.版本工具的使用

7.1研发部采用svn配置管理工具

研发部采用专门的配置管理服务器,此服务器只是专门用于版本的管理,一般不用于其他的应用,配置管理软件采用svn1.5进行配置管理。

8.各项目组提交文档及源码以及规则

8.1 各项目组需要提交的文档

9.周报管理制度

各项目组每周向研发部提交周报。周报具体的格式如下:

任务分配人,资源情况。

10.风险管理制度

风险严重性:指风险对项目造成的危害程度,例如可以划分为5个等级:5-很严重,

4-比较严重,3-中等,2-轻度,1-低微。

风险可能性:指风险发生的几率,可以用百分比表示。


© 2024 实用范文网 | 联系我们: webmaster# 6400.net.cn