您的位置:首页 > 其它

基于配置管理的Scrum开发流程

2012-03-05 15:36 204 查看
基于Scrum的开发流程
实际操作中,分为以下三条线:

1.基于Redmine的开发流程控制(计划,bug,开发,测试)。

2.基于svn的代码管理流程。

3.基于Jenkins的自动生产发布流程。

三线的相关联系参看下图



Redmine的使用:
计划会的时候利用Redmine对story进行分析、拆分成具体的task,根据优先级对task进行时间估算,评估。

Redmine上的问题状态分为“待确认”,“已确认”,“进行中”,“待审查”,“待测试”,“待回归”,“已关闭”几个状态。

一般在计划会的时候对所有task进行确认,task命名的一些技巧:【S055】【企业版】【3d】【5h】,“【S055】”优先级的权值,通过这个对同类优先级的task进行详细划分,“【企业版】”特殊版本表示,“【3d】【5h】”代表开发和测试分别估算的时间。

正式进入迭代后,开发人员站会领取task后把redmine状态改为“进行中”状态,当开发完成自测通过后,可以修改状态为“待审查”,开发人员找另外一个人进行审查通过后,进行svn代码提交,Redmine状态修改为待测试,测试人员测试未通过通知开发人员,把redmine状态改回“进行中”,如果由于特别原因一直未能通过,需要产品经理确定从本期迭代中砍掉这个功能,测试会记录Rework次数,作为迭代完成后反思会的一个指标,测试通过后进入待回归状态。产品发布,产品经理确认所有问题状态,已完成的task改为“已关闭”。

Svn的运用
Svn的管理主要有以下几个原则:

1.尽量不要存放二进制文件,会造成服务器负担,svn是差量保存的,保存二进制文件会给服务器带来严重负担;

2.不要保存编译器生成的一些动态配置文件,例如vs会生成.ncb、.suo,系统文件夹生成的配置文件等数据,可能会导致其他用户checkout代码出来后会产生差异文件,对svn服务器造成污染。

3. 每次提交必须要带上本次提交代码所添加或修改的内容,方便以后查询对应svn版本号所做的修改。

4. 项目svn服务器的部署。通常在一个Project下会建立三个路径,trunk,branch,tag,正常开发在trunk下进行,在测试通过后进行branch操作到branch下,branch的包进行回归测试后,进行tag操作到tag下。

Jenkins实现自动化生产发布流程:
Jenkins是基于Java开发的一种持续集成工具,用于监控秩序重复的工作。

一个项目对应设置trunk和branch下的构建,一个完成的构建包含三部分,第一是编译,可能还包含了单元测试,cppcheck检测等操作;第二是安装包制作;第三是自动升级。

开发过程中,开发人员在Redmine状态到待测试,提交代码到svn后,可以执行构建,生成安装包后通知测试可以测试。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐