• 2009-02-12

    敏捷,面面俱到?

    版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
    http://www.blogbus.com/dreamhead-logs/35109416.html

    在ThoughtWorks工作一段时间之后,我便很少关注那些关于敏捷的讨论,因为这些讨论并不能给我带来太多的东西。出来做咨询之后,我又重新开始关注一些讨论,因为我想更多的了解别人是怎么想的。最近一段时间InfoQ上又掀起了一个关于如何实施敏捷的讨论:

    采用敏捷需要面面俱到
    敏捷专家的衰落——实施敏捷必须面面俱到?

    挺有意思的讨论,也很无聊!Jurgen Appelo很能抬杠。

    又要重复我在《圣诞聊敏捷》中提到的观点,敏捷是一种好的工作方法。工作方法和做事情是两个独立的概念。用不同的工作方法都可以把事情做好,只不过,付出的代价不同。软件业有很多孤胆英雄的故事,而且很多故事发生在不敏捷的年代,他们肯定是不敏捷的。但是,你如果以此为例就说敏捷没有用,那就是典型的糊涂逻辑。就像博尔特可以跑到9.69,但我们跑不了那么快。我们努力探寻的是提高普通程序员和普通的团队工作效率的方法。

    回到前面的话题上,实施敏捷是不是需要面面俱到?随你。

    我们给别人介绍敏捷的时侯,从来也不会说敏捷所有的敏捷实践都是必需的,但是任何一环的缺失都可会对实施的效果有影响:

    • 不做重构,没问题,代码积累的问题通常需要一段时间才会暴露出来,项目活到那个时侯再去解决也不迟,如果运气好的话,有生之年还是能解决完的;
    • 不结对编程,没问题,大不了多钻一些牛角尖,大不了一段时间之后,才发现有人写出无法想像的诡异代码;
    • 不持续集成,没问题,希望市场给你只要有足够的时间合并与调试代码;
    • 不写测试,没问题,反正有专门负责测试的人,而且我一点都不怕他们给我找bug
    • ……

    还有一个不实施的好办法,请牛人,他们解决问题的能力超强。我承认,敏捷的普通程序员实际生产力可能不如不敏捷的牛人,但是,那种以一当百的牛人不那么容易找,且不说是不是容易伺候。

    从我了解到的情况来看,领导们偏爱Scrum,因为它侧重管理,而真正实施起来,倒是那些实践更受欢迎,因为这才是对程序员立竿见影的部份,而真正产出代码的肯定不是那些领导。我是程序员,所以,我很清楚,程序员出身的人容易鄙视Scrum之类侧重管理的方法,鄙视的原因无非是觉得那些东西很虚。但是真正想做好的话,管理也是不可或缺的,因为程序员们往往是缺乏对项目进展的关注,容易陷入自娱自乐的境地,这就是管理起作用的地方。

    又信口开河了,因为这个话题刚好切合最近遇到的一些情况。

    分享到:

    历史上的今天:

    引用地址:

    评论

  • 还在出差吗?本周的open-party去不?
    回复zdonking说:
    出差中……
    2009-02-16 17:46:34
  • 断断续续看了几篇文章,我对敏捷的看法是

    之所以敏捷,因为无法偷懒

    好处在于彼此分享,互补

    其他不知道了,还请指教