软件配置对敏捷开发中迭代模式的支撑
作者:网络转载 发布时间:[ 2016/3/29 11:35:44 ] 推荐标签:敏捷测试 配置管理
迭代开发:
在软件开发生命周期中,迭代开发模式是基于把一个大的开发周期分解为合理的小的开发周期,小的开发周期的划分可分为:
1,按照功能的需求划分为不通 的小的开发周期
2,按照交付的需求先后顺序 划分为不通的小的开发周期。
前者 笔者认为适合产品的研发划分,比如开发一个产品。
后者适合为客户开发项目来划分,比如为某银行开发一套系统。
在这样的开发模式下,配置管理的合理规划可以很方便的让开发人员,配置人员,项目经理,测试人员有序的组织工作。
怎样合理的规划配置项呢?
笔者在这里假设一个工作场景。
公司的配置管理基于svn,为某银行开发一套内部系统。该系统大致有30个需求。
按照这30个需求的功能已经交付的优先级,拆分为5个小项目,定义为
FFR_1.
FFR_2
FFR_3
FFR_4
FFR_5
其中,交付序列为 1,2,3,4,5 来划分。
准备 测试环境,UAT环境,以及客户的生产环境。
SVN的规划,我们可以定义为:
FFR
Branches
BR_FFR_2
BR_FFR_3
BR_FFR_4
BR_FFR_5
Tags
Trunk
看到这里,大家觉得奇怪,FFR_1的代码呢? 因为 FFR_1的代码 我们是需要先交付的,所以 FFR_1的代码, 我们 存放到 trunk 下面。
在开发活动中, 我们的开发人员按照开发计划,首先完成FFR_1阶段的开发,所有的提交都在 trunk 下面进行,当 FFR_1 的代码开发完成以后,配置管理员可以对trunk define tag 到 Tags 目录,假定为Rel_FFR_1_1.0.0b1
Branches
BR_FFR_2
BR_FFR_3
BR_FFR_4
BR_FFR_5
Tags
Rel_FFR_1_1.0.0b1
Trunk
Define Rel_FFR_1_1.0.0b1 后,再把Rel_FFR_1_1.0.0b1 部署到测试环境,测试人员开始在上面测试。
同时,配置管理员 基于Rel_FFR_1_1.0.0b1 把代码 copy 到 BR_FFR_2 的目录下面,开发人员开始在这段时间,进行 FFR_2 的需求的开发工作,相关的FFR_2的代码提交到 branches 的BR_FFR_2下。
在这个过程中, 测试人员在测试环境上发现了Rel_FFR_1_1.0.0b1 版本的 bug, 开发人员回到 trunk上基于Rel_FFR_1_1.0.0b1 发现的bug进行修复。这个过程结束后,配置管理员再基于新的修改 对trunk define tag 到tags 目录 ,假定为Rel_FFR_1_1.0.0b2
Branches
BR_FFR_2
BR_FFR_3
BR_FFR_4
BR_FFR_5
Tags
Rel_FFR_1_1.0.0b1
Rel_FFR_1_1.0.0b2
Trunk
Define Rel_FFR_1_1.0.0b2 后,再把Rel_FFR_1_1.0.0b2 部署到测试环境,测试人员开始在上面进行新一轮测试。 开发人员这个时候继续回到branches下的BR_FFR_2目录进行开发工作。
假定经过新一轮测试后,测试人员没有在测试环境上发现bug,这个时候,按照计划,我们可以把Rel_FFR_1_1.0.0b2 部署到 UAT环境 进行验收测试。
在这个时候,开发人员需要对branches 中BR_FFR_2 代码 merge 到 trunk,然后回到 trunk 上,继续基于FFR_2的需求进行开发。 同时,配置管理人员将 BR_FFR_2 分支 关闭。
Branches
BR_FFR_3
BR_FFR_4
BR_FFR_5
Tags
Rel_FFR_1_1.0.0b1
Rel_FFR_1_1.0.0b2
Trunk
当 FFR_2的需求开发完成以后,配置管理人员再对 trunk define tag 到 tags 目录,假定为
REL_FFR_2_1.0.0b1
Branches
BR_FFR_3
BR_FFR_4
BR_FFR_5
Tags
Rel_FFR_1_1.0.0b1
Rel_FFR_1_1.0.0b2
Rel_FFR_2_1.0.0b1
Trunk
Define Rel_FFR_2_1.0.0b1 后,再把Rel_FFR_2_1.0.0b1 部署到测试环境,测试人员开始在上面测试。
同时,配置管理员 基于Rel_FFR_2_1.0.0b1 把代码 copy 到 BR_FFR_3 的目录下面,开发人员开始在这段时间,进行 FFR_3 的需求的开发工作,相关的FFR_3的代码提交到 branches 的BR_FFR_3下。
假定在这个过程中, 客户在UAT 环境发现了基于Rel_FFR_1_1.0.0b2 的bug, 这个时候,配置管理员需要对 tags的Rel_FFR_1_1.0.0b2 建立 braches,来维护Rel_FFR_1_1.0.0b2 的bug 修复
Branches
BR_FFR_3
BR_FFR_4
BR_FFR_5
BR_ Rel_FFR_1_1.0.0b2
Tags
Rel_FFR_1_1.0.0b1
Rel_FFR_1_1.0.0b2
Rel_FFR_2_1.0.0b1
Trunk
所有的基于Rel_FFR_1_1.0.0b2 的开发将提交到 branches 下的BR_ Rel_FFR_1_1.0.0b2。 当修改完成后,对BR_ Rel_FFR_1_1.0.0b2 define tag 到 tags 目录,假定为 Rel_FFR_1_1.0.0b3
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11