1、软件版本管理目录1. 引言 .11.1. 目的 .11.2. 范围 .11.3. 术语定义 .11.4. 参考资料 .21.5. 版本控制记录 .21.6. 版本更新记录 .22. 版本管理 .42.1. 版本标示方法 .42.1.1. 正式版本 .42.2. 目录结构 .52.3. 文档的存放 .62.3.1. 开发文档的存放 .62.3.2. 源代码的存放 .62.3.3. SQL 的语句存放 .72.3.4. 发行文档的存放 .72.4. 配置管理流程 .72.5. 权限控制的管理 .83. 更新管理 .93.1. 源程序的修改 .93.2. 版本升级 .103.2.1. 版本升级原则
2、.103.2.2. 新版本发布 .113.3. 文档的变更 .114. 备份管理 .12第 1 页 共 14 页1.引言版本控制就是对软件开发过程中所创建的配置对象不同版本进行管理,保证任何时间都可以取到正确的版本以及版本的组合。版本控制的主要功能是记录开发过程中的每一次修改,让开发的工作可以随时检查过往历史记录和获得正确版本,是系统的成长记录。1.1.目的本文档的编制是为了规范产品部、研发部、测试部对软件产品版本的管理。1.2.范围本文档为产品部、研发部、测试部的管理员提供有关版本管理规范的相关内容,包括: 版本标识方法 软件系统数据的存放 文档的修改控制 文档的备份制度1.3.术语定义SC
3、M软件配置管理(Software Configuration Management)缩写SVM软件版本管理(Software Version Management)缩写SVN一个开源的版本控制系统 Subversion.文档第 2 页 共 14 页一种数据媒体和其上所记录的数据。配置管理标识和确定系统中配置项的过程,在系统整个生存周期内控制这些项的投放和更动,记录并报告配置的状态和更动要求,验证配置项的完整性和正确性。软件配置软件的具体形态在某时刻的瞬时影像。配置项软件配置管理的对象称为配置项,如:系统规格说明书,项目开发计划,用户手册,源码。基线软件生存周期中各开发阶段末尾的标记,它的作用是
4、把各阶段工作的划分更加明确化,使本来连续的工作在这些点上断开,使之便于检验和肯定阶段成果。1.4.参考资料软件版本管理规范 浪潮集团山东通用软件有限公司泰豪软件开发软件版本管理制度tortoise SVN 的使用手册1.5.版本控制记录版序状态 部门 拟稿 审核 批准 发布日期1.01.6.版本更新记录第 3 页 共 14 页*A - 增加 M - 修改 D - 删除版本/修订版 修改页码 修改记录 修改人 日期1.0 初始版本第 4 页 共 14 页2.版本管理2.1.版本标示方法为了使工作规范化、统一化,研发本部各部门实行的版本标识管理方法。2.1.1. 正式版本软件版本号由四部分组成,X
5、.Y.Z.DATA_ 希腊字母,X:主版本号,用来表示提供给客户的产品功能的主要增强。在一个极端的例子中,主版本号的上升用来说明产品现在已经拥有了一个全新的功能类。从市场和许可权的角度来看,主版本号的升级相当于购买一个完全独立的产品。从开发者角度来看,一个主版本号的迭代差不多总是反映了一个新的独立分支或是其主干还可以延续主版本的生命期。Y:特征版本号,用来表示产品新增了一些特征,或者是在原来文档中描述的特征上作了重要的修改。用来确定特征版本号什么时候需要修改的一个衡量标准就是产品功能说明书。产品的特征版本升级是在主版本之间保持产品竞争力的一种重要机制。Z:缺陷修复版本号,用来表示在该版本上所做
6、的缺陷维护行为的等级。版修复版本是稳定市场和最小化客户技术支持费用负担的一种重要机制。Alpha 版: 此版本表示该软件在此阶段主要是以实现软件功能为主,通常只在软件开发者内部交流,一般而言,该版本软件的 Bug 较多,需要继续修改。Beta 版 : 该版本相对于 版已有了很大的改进,消除了严重的错误,但还是存在着一些缺陷,需要经过多次测试来进一步消除,此版本主要的修改对像是软件的 UI。RC 版: 该版本已经相当成熟了,基本上不存在导致错误的 BUG,与即将发行的正式版相差无几。Release 版: 该版本意味 “最终版本”,在前面版本的一系列测试版之后,终归会有一个正式版本,是最终交付用户
7、使用的一个版本。该版本有时也称为标准版。一般情况下,Release 不会以单词形式出现在软件封面上,取而代之的是符号(R) 。第 5 页 共 14 页例如:1.1.1.051021_beta.第一个 1 为主版本号,第二个 1 为子版本号,第三个1 为阶段版本号,第四部分为日期版本号加希腊字母版本号,希腊字母版本号共有 5 种,分别为:base、alpha 、beta、RC、release。2.2.目录结构由于各部门的实际情况不同,目录结构很难统一,但为了能更好地管理各部门部文档,建议可将被管理的配置项分为三大类:文档类、源码类及安装盘类,这样存放比较清晰,有利于版本管理。具体目录如下表格所示
8、:根目录 一级目录 二级目录 三级目录集成代码 代码的合并第一个模块 代码第二个模块 代码数据库 SQL源代码(SRC)公共开发包 代码立项文档 立项计划书 立项申请书项目计划 项目开发计划需求文档 需求规格说明书设计文档 设计概要说明书 数据库设计说明书界面布局 原型界面 动态页面参考资料 项目一些参考资料验收文档 验收资料测试文档 测试计划 测试报告 测试用例试用信息文档(DOC)测试部署 部署材料SETUPRELEASE项目名称+版本号发布(RELEASE)发布文档第 6 页 共 14 页2.3.文档的存放2.3.1. 开发文档的存放文档归档流程:文 档 编 写 员编 写 文 档评 审
9、人 员文 档 评 审配 置 管 理 员修 改 文 档格 式 规 范 化 检 查评 审 版 本确 认 版 本不 通 过通 过2.3.2. 源代码的存放测 试 人 员 配 置 管 理 人 员从 S V N 提 取 代 码 编 译制 作 安 装 程 勋打 印 测 试 本入 库安 装 程 序源 代 码测 试 报 告评 审 报 告更 新 版 本系 统 测 试开 发 人 员源 代 码 入 库从 S V N 上 提 取 代 码修 改 源 代 码通 过不 通 过第 7 页 共 14 页2.3.3. SQL 的语句存放各子系统 SQL 文件放入.SQL 下,对于不同的数据库,分别建立不同的子目录,如 WAT、S
10、YB、MSS、ORC、DB2 等。公共 SQL 文件直接放入SQL 下即可,不同数据库的特殊 SQL 分别放入对应的子目录下。2.3.4. 发行文档的存放发行文档是指产品交付用户使用所必须的文件。包括:产品可执行文件,用户使用说明书,联机帮助(HLP) ;资源文件( BMP,ICO 等) ,环境配置文件等。2.4.配置管理流程提 交 测 试 任 务完 成 开 发 任 务提 交 发 布 请 求处 理 B U G 测 试 执 行测 试 计 划测 试 用 例提 交 测 试 报 告更 新 测 试 环 境回 归 测 试新 版 本 发 布 入 库提 交 测 试 部发 布 文 档 更 新额 定 版 本 信
11、息制 作 安 装 程 序研 发 人 员 项 目 管 理 人 员 测 试 人 员 配 置 管 理 人 员流程说明:1.开发人员完成所负责代码模块的编写任务后,提交到项目经理处;2.项目经理向测试部提交测试任务;3.配置管理员准备测试所需环境;4.测试员开始测试并提供实时测试 BUG;5.开发人员处理测试人员提供的 BUG,并提交测试员进行回归测试,直至 BUG关闭;第 8 页 共 14 页6.测试完成后,测试人员提供测试报告;7.根据项目情况决定是否发布新版本;8.配置管理员与各成员确定好新版本的各项信息;9.配置管理员发布新版本。2.5.权限控制的管理为保障文档的安全性,一致性,以及防止意外修改,必须对不同的文档设置不同的访问权限。文档权限类别:只读权限,读写权限。文档类别:DOC,SRD,RELEASE。用户类别:开发人员、测试人员、分析设计人员、部门经理、配置管理员、安装盘制作人员、问题及需求管理人员、用户文档编写人员等。为了控制不同的使用权限,根据要求在服务器上分别建立不同的用户,针对不同的配置项所在目录分配不同的权限。为了便于各部门的管理,应以表格的形式列出人员与管理对象的访问关系(用户权限清单) 。