代码改变世界

我们的故事墙--一切为了可视化

2011-04-08 22:54  横刀天笑  阅读(5526)  评论(4编辑  收藏  举报

几乎所有讲敏捷的书或者说使用了敏捷软件开发的团队都会拿出一个用户故事墙来说事。我们也有一面墙,如下所示:

20110408021

用手机拍的,不是很清晰。不过能大致看出分栏。

可能有人要说,现在都二十几世纪了,还用这么落后的手段管理,累不累啊。Project干啥吃的,Excel,Word和PowerPoint都哪儿去了,比这好用多了吧。

其实不然,且听我细细道来。

墙的可见性

这么一面墙就放到团队低头不见抬头见的地儿,所以可见性非常高。你早晨来上班的时候从墙面前经过,可能会引起你驻足一会儿,你编写代码的时候抬起头,你又看到了这面墙,或许你会发现什么问题。下班了,猛一回头,还是那面墙默默的注视着你。

比起传统的计划管理工具,墙的可视化程度要高得多了。使用PPT制作出精美的项目计划,使用Project做出精确到小时的资源安排,但那又怎样,几乎是在项目开始的时候项目经理将这些文件发给大家的时候大家才会看看,或者项目中开会的时候项目经理将这些文件往投影仪上一投感觉倍儿有气派,最后看这些文件的人聊聊无几,真的我没有欺骗你。而且大家都喜欢将自己的硬盘填得满满的,到最后要找到这几个文件甚至要动用全盘搜索,那么谁还去看这些文件?只留下项目经理在那儿意淫而已。

我们要的就是不断地在你面前晃,晃到你都记得下来为止。

更好操作

有人说软件更好用,我可真的不信。现在Office套件一个个大得惊人,打开一个大文档慢的有点受不了(可能是我的电脑不好吧),然后操作也是麻烦的要死,经常找不着自己要的东东在哪儿。

对于这面墙呢,我们只需要把卡片从左移到右,就这么简单,下至三岁小孩,上至80岁的老太太都可以完成。轻松而快捷,就像过家家一样。

分栏里可有小窍门

别看这个分栏,里面可隐藏着一些小窍门的。看看上面那张图,第二行分为7栏:

准备开发->正在开发->准备测试->正在测试->测试人员已确认->已经秀给客户看->客户已接受

这七个分栏表示一个用户故事的生命周期,从左到右。

每一栏的大小也不是随便画画的,每个故事卡片都占有一定的空间,当一个分栏里卡片过满或者很不满的时候都是一些有用的信号。比如,这里如果准备开发的卡片太少了,那就表示业务分析人员要加把劲了,我们可以做的东西不多了,你再慢了我们可要去玩了啊。

而准备测试的那一栏很满的时候责表示:测试人员受不了了,你们开发的能不能慢点啊,或者派两个人过来帮我测试吧。等等这些都是非常有用的信息,而且一看就明了的事儿。

准备开发栏卡片在墙上从上到下的排列也不是瞎来的,每个卡片都有一个优先级。优先级高的表示客户最希望赶紧完成的,所以开发人员从这一栏拿卡去做的时候可不是随便拿的哦,你得按从上往下的顺序拿卡(要是想拿下面那张容易点的,你就等等吧,呵呵)。

看到墙的最上端没?一个大红的Blocked标记在右侧。有的卡片因为某些事儿,比如正在开发的时候发现有的地方需求不明白,需要用户确认啊;或者正在测试的时候发现了居然有地方没完成呢,这个就像线程被某些东西阻塞了一样,我们就把卡从对应的栏移动到它对应的上方。项目经理这个时候的作用就出现了,他将重点关注这些被阻塞的卡,为嘛被阻塞了,他都要过来“管管闲事儿”。而且用这种方式还能很好的发现我这个卡是在哪个环节被拦住的,这也有利于跟踪。

卡片上也暗藏玄机

别看那一张小小的故事卡片,上面包含的信息可多了。

左上角是一个故事编号,一般项目应该有一个项目管理系统,里面记录着故事的详细信息,用什么到系统里去索引?就靠这个小编号。而且在向版本控制系统里提交代码时写注释也可以加上这个小编号,对日后查找有用的信息那可比文字搜索派用场多了。

右上角是一个故事点数,参见前一篇文章。

中间是用一句简单的话描述这个故事。为啥用一句话呢,还用那么大的笔写。嗯,用大字写就是为了写的内容少。一句话很容易记住,所以交流的时候也能更好的沟通。

左下角画了很多正字,那是干啥的?那个表明这个卡片从准备开发移动到正在开发栏的时刻到现在已经过去了多少天了,一直记录到该卡片从正在开发栏移动到准备测试栏。这个数据对于用来发现开发中的时间浪费是很有用的。比如估计的一个点的故事,咋现在开发了四天了呢?别人一看就会产生这么一个疑问,这样你就要跳起来解释一下:靠,那个地方,部署太麻烦了,太消耗时间了。这样就有可能有人自告奋勇的来改善这个部署流程(我们就是在这么一步一步的改善中成长起来的)。

注意到没有,有的卡片右下角也有正字呢。呵呵,那是测试人员画的,作用同上。

唔,有的卡片上面还贴了小纸条,那是干啥的?小纸条上一般记录着这个故事划分了多少个任务(参见前一篇文章),在完成一个任务后开发人员会在任务后面画勾勾。

哎呀,我们的大头贴都上墙了。对,那个卡片上贴的照片就是正在这个故事上工作的开发人员,这样别人一走过去就知道某某某在干啥事儿,如果有啥问题可以找他去。而且这大头贴还能生出很多很多有意思的事情,对团队的融洽也很有帮助~~

一切为了可视化

好了,小小的一面墙,甚至是小小的一个卡片记录的东西是不是真的很多?唔,还有很多东西这篇文章里还没记录呢。因为墙上画画很容易修改,你可以按照你的团队需要来改进这面墙。总之就是要做到更好的可视化,反映出团队中的问题,能用一些明确的信号来表示出来,这真的比项目经理做的那个精美的PPT要高兴得多,不信你也试试。