Wikispeed——用敏捷带来惊喜

  • Shane Hastie
  • 郑柯

2012 年 8 月 20 日

话题:Scrum精益文化 & 方法

Joe Justice 是Wikispeed的创始人兼业务流程顾问,他最近在新西兰惠灵顿的AgileWelly聚会上有一个演讲。他的演讲主要是 WikiSpeed 如何使用敏捷技术来完成工作,他们用这些技术来构建国际化的志愿者网络,解决社会上的难题,他们的口号是:“为了社会利益,快速解决问题”。

他们首先要解决的问题,就是要生产用 1 加仑汽油能够行驶 100 英里的汽车。他们构建了一个“安全的、买得起的、燃料超级有效的汽车”,在项目启动三个月后,第一辆符合行驶要求的原型汽车就已经上路了。

他对比了 Team Wikispeed 的方式与传统的制造业方式,Team Wikispeed 采纳了很多敏捷软件开发的实践。他举了一个例子:传统工厂中的模压汽车门模具,成本会高达 1000 万美元,“如果有工程师发现了更便宜、更安全的方式,能够制作这个门,公司也不会马上实施,除非他们已经将原来的模具成本摊销完毕。”

他解释了 Team Wikispeed 完成快速开发周期的方法,他们让整个汽车都模块化,并使用敏捷流程降低变更成本。

Wikispeed 网站这样解释他们的流程:

  • 从精益软件开发中,我们拿来了这样的理念:在合理范围内,只用尽量少的必要材料。这是基于一个常识原则:少用材料。当代软件开发团队后来为该原则提供了清晰、可用的定义。
  • 从极限编程中,我们拿来了结对和蜂巢式(swarming)编程的实践。这些实践可以回溯到很久以前的工匠学徒模式,但是一直以来,人们一直在重新定义它们,以替代大多数培训和流程文档的需要。
  • 从敏捷软件开发中,我们拿来了降低变更成本的理念——包括团队、材料、机械、甚至目标的变更。
  • 从 Scrum 软件开发中,我们知道了要明确定义团队中的角色和责任,这让我们能把更多时间放在快速开发产品上,而且没有无实际产出的工作角色(只做管理的角色),也只开两次会。
  • 从测试驱动开发中,我们学到先从失败的测试开始,然后研发解决方案。这然给我们可以快速了解当前的工作是否以通过某个测试为目标,还是会在系统中某个地方导致问题;从而避免浪费。
  • 从面向对象编程中,我们拿来了合同优先的开发方法(Contract-First Development),这让我们 Wikispeed 的汽车和所有的解决方案都实现了模块化。

他展示了一些图片,其中有这款汽车的演变过程。该车型参加了 Progressive Insurance Automotive X 大奖,这是一个奖金为 1000 万美元的挑战赛,目的就是要造出用 1 加仑汽油能够行驶 100 英里的汽车。在来自世界各地的 146 名参赛者中,他们获得了第 10 名,而其他大部分参赛者得到的资金要远远超过 Team Wikispeed。

那次竞赛结束后,他们一直在继续研发该车型。目前这个版本的车型可以从这里了解更多细节,其售价为 2.5 万美元,并且可做商业销售

Justice 继续谈到:研发一辆汽车并不是他们的终极目标,他们想开发出一套全新的汽车生产方式,使用开源和众包方法,并基于敏捷价值观和原则。

他们的研发中心在世界各地建立起来。他们使用一个排定好优先级的开发活动任务列表,每个中心都有自己的列表项,这些项目会与整体的产品任务列表协调。团队成员根据自己的技能、知识和能承受的工作量来作出贡献,本地团队以自组织方式来处理他们任务列表中的各项任务。这个列表可以在这里看到。任务列表中的项目不仅仅是研发汽车,还包括其他对社会有益的领域,比如分发疫苗等等。 

演讲结束时,他展示了一张图片,内容是“一只大猩猩和一只鲨鱼在一场爆炸前击掌庆祝”;他鼓励观众给自己的生命带来一些惊喜,可以每周贡献 2 到 4 个小时,参与到“为了社会利益快速解决问题”的活动中来,他们可以加入 Wikispeed 团队,或是找到其他为社会做贡献的方式。

Wikispeed 模式让敏捷不再囿于 IT 领域,意欲以这些方法提供可持续的社会价值。

他这次在惠灵顿的演讲可以在这里看到。Justice 会在八月的Agile 2012大会上提供主题演讲。

查看英文原文:Wikispeed - Doing Awesome with Agile

Scrum精益文化 & 方法