1、(word完整版)软件版本控制流程软件版本控制流程文件编号:XXXX-XX-XX版本状态:A/3编制 XXX 日期 2009年9月15日审核 XXX 日期 2009年9月20日批准 XXX 日期 2009年10月1日修订 XX 日期 2010年1月1日 北京WANDU网络科技有限公司XXXX年XX月XX日生效修订历史记录日期版本说明作者审批人2009/09/01A/0第一版XXXX2009/12/03A/1增加了修改记录;调整了部署包、评审报告、测试报告的项目;测试报告变成必须项;业务策划由需求部门提供;XXXX2010/01/01A/2公司组织机构调整;应用开发部与产品研发部合并为“软件研发
2、部,进行相关修改;比如编制部门、发放范围XXXX2011/02/23A/3调整了流程;修改了版本号定义、入库流程;增加了版本号变更流程、适用范围、三个附录表单(程序源码版本号列表、部署版本号列表、新产品升级立项审批表);XXXX编制部门:研发中心发放范围:项目管理部、研发中心、产品中心、系统网络部、质量保证部、运营维护部、商务部软件版本控制流程1. 目的主要针对软件版本的控制,以确保公司资产得到保护。2. 流程流程共分为版本号定义、版本号变更、入库流程、出库流程、产品列表流程五个部分。2.1. 版本号定义2.1.1文档版本文件版本规范提供文件撰写时的版本变更规则.文件版本号并无特别的要求,不过
3、考虑到不断变更的要求,一般考虑无限制进阶式,如下面是典型的文件版本规范:采用【主版本号】_【从版本号】_【功能版本号】_【项目号】的四位格式,【主版本号】_【从版本号】_【功能版本号】_【项目号】均为数字。初始版本为1。0。0.0。【主版本号】:产品大功能/整体架构/用途产生变更时增加。【从版本号】:产品模块级功能有一定的增强.【功能版本号】:产品有一些小的变动,一般是缺陷修复或通用性修改。【项目号】:应用在项目中个性化需求。2.1。2。代码/部署包版本2.1.2。1正式发布版本 采用“【应用名】_【版本号】_【日期】_【SVN号】.tar/jar。”的形式这是大部分产品代码/部署包版本号的基
4、础标识形式,其中每个版本号是阿拉伯数字,同以上文档版本号规范。以这种方式来标识版本之后,当前版本的状态,以及版本发布的轨迹,都可以看得比较清楚。如SSO_3.2.0。0_20110923_38683.tar。【应用名】的含义:标识应用的名称.一般指产品名称、项目名称、中间件等应用名称.如统一认证平台(SSO).【版本号】的含义:标志部署包及代码的版本。同上文档版本的规则,如1。0。0。0。【日期】的含义:标志部署包及代码的封板日期。如20110222。【SVN号】的含义:标识部署包及代码的版本,系统是自动递增的.如38683.【tar/jar。】的含义:标识打包的名称。2.1。2。2。非正式发
5、布版对于非正式发布(如内部测试)的产品/代码,一般使用附加日期、附加流水号或者Build号的方法记录,如V1。1.4。20110112。2.2. 版本号变更2.2。1版本号变更流程图参与角色:项目经理、产品开发经理、产品经理、测试经理、配置管理员、质量保证部经理、研发中心总监版本变更发起方:项目经理、产品开发经理、产品经理;使用工具:版本控制工具CVS、SVN、VSS;2.2.2。主要活动2。2.2。1发起产品版本变更:a) 项目经理:根据项目需求提出产品升级,要求给产品开发经理.b) 产品开发经理:修复产品原有版本的缺陷或满足项目需求,填写新产品研发立项审批表给产品经理.c) 产品经理:产品
6、经理根据市场需求或其他部门反馈意见,提出产品升级要求,填写新产品研发立项审批表,提交产品中心总监审批。2.2。2。2。产品版本变更审批:d) 产品经理:填写新产品研发立项审批表,提交产品中心总监审批.经审批通过后,定义产品升级版本号给产品开发经理和配置管理员。产品新版本研发完成经质量保证部批准发布后,申请入产品库,填写产品入库申请单给配置管理员。e) 产品中心总监:批准产品升级申请。2。2。2。3。产品新版本研发测试:f) 产品开发经理:经审批通过后,研发产品新版本,完成研发后提交测试经理测试.g) 测试经理:完成产品新版本测试后提交质量保证部经理审批发布产品新版本。h) 质量保证部经理:批准
7、产品新版本发布。2。2.2.4.产品新版本入库:i) 配置管理员:收到产品入库申请单及入库产品文档和部署包后提交研发中心总监审批后将产品文档和部署包入产品库。j) 研发中心总监:批准产品新版本入库。2.3. 入库流程1) 项目立项后两天内,a) 开发经理向配置管理员申请版本号,由配置管理员根据“版本号定义规范审核版本号是否可用;b) 开发经理提交开发计划.开发计划内必须包括入库时间(项目上线一周内)、版本号;2) 配置管理员根据开发计划整理产品入库跟踪表.列:产品名称、版本号、入库时间、开发经理、项目/产品经理、预计入库时间、实际入库时间、是否按时入库; 产品入库跟踪表每月发送给总监一次;每季
8、度需审核一次;3) 当到达入库时间后,a) 开发经理应该主动申请入库,产品经理填写版本入库申请表;b) 配置管理员根据产品入库跟踪表及时跟踪产品经理入库;4) 产品经理将版本入库申请表的“文档清单”内容 提交到配置管理员、部门经理。配置管理员先负责审核文档是否完整;然后部门经理负责审核内容是否正确;5) 审核通过后,发送至总监复审;6) 复审通过后,配置管理员将入库文档及代码,上传至VSS,并刻盘两份。一份由部门中心保存,一份由总经办保存. 2.4. 出库流程1) 申请人填写版本出库申请表,分为两类:a) 文档设计和源代码使用申请:由开发经理填写版本出库申请表,并提交给发起人所属部门经理及部门
9、总监签字;b) 部署包使用申请:由发起人(项目经理/产品,维护人员),填写版本出库申请表,并提交给发起人所属部门经理签字;2) 配置管理员根据版本出库申请表,负责从VSS下载申请的内容,并发给申请人.2.5. 产品列表流程产品入库更新时,产品列表需要实时更新,研发中心的配置管理员,在更新的同时需发送对方,以确保产品列表的统一性。3. 适用范围本制度适用于公司产品、项目、公用组件等公司财产。4. 附录请见下页。附录版本入库申请单编号: 产品编号需求名称版本变更系统名称旧版本号新版本号监控修改说明配置修改说明入库申请人:日期: 年 月 日部门/总监:日期: 年 月 日配置管理员:日期: 年 月 日
10、系统审核结 果对表操作SQL语句 表结构及索引修改说明 日 期: 年 月 日文档清单产品资料(产品策略书、 word版本、PPT)*需求部门部署包(执行代码、部署文档、初始化SQL、初始化文件、BMS菜单列表、割接方案、运行系统配置)研发中心/质量保证部需求文档(需求规格说明书、功能列表)*需求部门业务策划需求部门评审报告(需求评审、策划评审、原型评审、概要设计评审、数据库设计评审、测试大纲评审报告)*需求/策划/测试部门升级包(执行代码、部署文档、初始化SQL、初始化文件、BMS菜单列表、割接方案)*研发中心设计文档(概要设计、详细设计、数据库设计)*研发中心操作手册*质量保证部源代码研发中
11、心测试报告(原型测试报告、开发测试报告、压力测试报告)*质量保证部项目管理文档(会议纪要、立项审批、项目周报)项目部门参考资料其他备注:*表示为必需文档。其中割接方案为项目入库时必需项;升级文件为产品升级时必需项; 项目变更记录表日期变更类型文档,文件名称版本说明作者附录版本出库申请单编号:YHXX-ZLJL-171 编号: 项目编号需求名称出库产品名称版本号出库原因(申请原因)入库时间或说明版本说明对表操作SQL语句 表结构及索引说明 出库申请人: 日期: 年 月 日部门/总监:日期: 年 月 日配置管理员:日期: 年 月 日文档清单产品资料(产品策略书、word版本、PPT)部署包(执行代
12、码、部署文档、初始化SQL、初始化文件、BMS菜单列表、割接方案)需求文档(需求规格说明书、功能列表)业务策划评审报告(页面评审、需求评审、策划评审、原型评审、概要设计评审、数据库设计评审、测试大纲评审报告)升级包(执行代码、部署文档、初始化SQL、初始化文件、BMS菜单列表、割接方案)设计文档(概要设计、详细设计、数据库设计)操作手册源代码测试报告项目管理文档(会议纪要、立项审批、项目周报)参考资料其他说明:如果需要需求规格说明书、概要设计书、详细设计、数据库设计、源代码等之一需要总监签字。附录III程序源码版本号列表:序号子系统名称产品版本号SVN版本号SVN存放路径作者部署版本号列表:序号子系统名称版本号部署总包名称二级子包名称部署包大小(K)打包日期VSS存放路径作者附录IV产品升级版本审批表申请人申请时间项目编号产品名称原产品版本CN:X.X。X.X升级产品版本CN:X。X。X。X申请原因性能改良 BUG修改 客户需求 功能完善 创新 其他产 品升 级背 景描 述升级计划时间完成内容备注预计成本人/月本次升级内容本次升级可能存在风险升级方案评审意见研发经理研发小 组成 员产品经理意见产品总监意见研发总监意见质检中心总监意见