博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
敏捷开发一千零一问系列之三十六:如何做小版本迭代的代码管理
阅读量:2397 次
发布时间:2019-05-10

本文共 748 字,大约阅读时间需要 2 分钟。

本文是敏捷开发一千零一问的第三十五篇。(

问题

若要实现敏捷式的开发,对产品进行迭代式的小版本的发布,在代码管理方面应该怎么样管理呢?

我们目前的管理是在一个大的版本上不断的递增新的需求……但是要是有个需求做到一半,领导又要求做更重要的需求的情况,就很难将开发一半的代码剥离开。

答案

1. 每个版本选择相对内聚的故事群

所谓故事群,就是互相关联性大的用户故事。

比如假设有下面这些关于用户-团队-角色-权限……的用户故事:

比较合理的做法,不是东一榔头西一棒槌地做,而是一块一块地做。

比如先做用户中灰色的部分,如果领导不变更,再做团队(图中只有灰色的部分);如果领导又没有变更,再做团队成员(图中只有灰色的部分)……总之留着角色和权限(都是粉色)的部分不做;而用户中与角色权限相关的几个操作(粉色)也不做。

这样的好处是,每次发版,发出的功能都是一块一块的能独立运行。

比如图中,灰色的部分都完成了,粉色的部分一点也没有动,可以独立发一个“只有用户-团队概念,没有角色和额外权限设置”的版本。

如果变化很快,下一个版本,要么做角色,要么做权限,肯定只做其中一个。

2. 缩短迭代周期

如果一个产品变化很快(要么很模糊,要么很创新,要么……),另外一个好方法是缩短迭代周期,这样也能避免中途变化,毕竟来不及变化,就已经完成了。

但这样也要主要保持上一条中的原则,每个迭代都独立成章。

3. 制定产品路线图

变更多,看似是客户或外界市场的原因,但仔细分析,很可能是因为我们自己心里没有谱造成的。

如果能提前制定一个产品路线图,约束一下接近3~6个月(实际上应该更长)的整体规划,那么就会有一个相对固定的方向,不会想到哪里做哪里。

这个问题的相关内容,请参考:敏捷开发产品管理系列中的前三篇文章。

转载地址:http://nubob.baihongyu.com/

你可能感兴趣的文章
Struts2--非表单标签
查看>>
Lambda函数式接口
查看>>
Lambda表达式使用场景及实例
查看>>
数据结构--循环双链表实现、详解
查看>>
数据结构--优先队列实现、模拟线程调度
查看>>
Java并发--Java中的13个原子操作类详解
查看>>
数据结构--稀疏矩阵常用的三种压缩存储(顺序、行单链表、十字链表)
查看>>
Java并发--监视器(monitor)、等待/通知机制
查看>>
Zookeeper--数据初始化过程
查看>>
Zookeeper--数据同步
查看>>
Zookeeper--配置详解
查看>>
Swagger2注解详细说明
查看>>
使用Turbine聚合监控
查看>>
构建高可用的Config Server、使用Spring Cloud Bus刷新配置
查看>>
Nginx——重写与重定向
查看>>
Nginx——防盗链的配置
查看>>
TCP——粘包/拆包
查看>>
ChannelHandler和ChannelPipeline
查看>>
Netty——传输API
查看>>
Netty——ByteBuf的API
查看>>