主流敏捷这一想法的时代似乎已经到来。大型咨询服务商现在以“敏捷性”招徕顾客,诸如 IBM Global Business Services 和 Cap Gemini 之类的公司都在大肆推销其敏捷相关的服务产品。Cognizant 和 ITC Infotech 这样的离岸服务商也在敏捷软件和服务领域十分活跃。
主流的趋势
对在线招聘网站的一项快速扫描显示,工作描述中对“敏捷”这一术语的使用量显著增长。这里有招聘网站 Dice.com 和 Monster.com 上大约一年中数据变化的样本:
招聘广告中出现的术语 Dice, 2009 年 7 月 Dice, 2010 年 4 月 增长率 敏捷 2084 4088 96% Scrum 755 1222 61% 招聘广告中出现的术语 Monster, 2009 年 7 月 Monster, 2010 年 4 月 增长率 敏捷 1756 3031 72% Scrum 379 755 99% 这种在主流层面突然出现的受欢迎程度,对于敏捷总体上意味着什么呢?“主流”敏捷貌似如何呢?主流敏捷里又包含什么呢?Scrum 是最流行的敏捷框架。因此,它也是讨论主流敏捷时一个好的关注点。那么,主流 Scrum 是什么样子?
根据 ThoughtWorks 的 Martin Fowler 所言,松软 Scrum 是新的流行病。其模式有三个步骤,模样如下:
- 他们想使用一种敏捷过程,于是选择了 Scrum
- 他们采用了 Scrum 的实践,甚或是原则
- 过了一阵子,由于代码基底乱七八糟,进展十分缓慢
据 Fowler 说:
…由于一直以来糟糕的内部质量,项目陷入困境。在 Scrum 的旗帜下出现的大量问题,可能更多是由于 Scrum 现时的流行,而不是 Scrum 自身的任何特性。
接下来就变得更有趣了,Fowler 说:
我总是喜欢指出,成败不在于方法论,而在于团队。采纳一种流程可能帮助团队提升,但最终团队才是关键因素,他们负责去做对其有效的事。我确信很多正在进行的松软 Scrum 项目不仅会令 Scrum、也会令更更广泛的敏捷蒙羞。
主流的含义
敏捷的“主流化”究竟意味着什么? 它意味着,Scrum 作为一个术语,可能逐渐变得毫无意义,因为声称从事“Scrum”的组织实际上做的是另外一套,而将其称做“Scrum”。 Jeff Sutherland 和 Ken Schwaber 对其有个命名:叫做Scrum-butt 。
Fowler 对于这种将已有的完善定义“注水搀假”的做法也有个名词——他将其称为语义扩散:
语义扩散发生在这样的时候:当你有了对应一个人或者一个团体的词汇,该词汇经常也已定义完善,但是它在更广泛的群体中传播的方式造成该定义的弱化。这种弱化的风险是:其定义完全丧失——该术语的用处也随之丧失。
因应这一趋势,Scrum 的共同创造者 Ken Schwaber 和 Jeff Sutherland 建立了一个决定性、权威性的 Scrum 定义,称为 Scrum 指南。这份可免费下载的资源描述了 Scrum。该文档意欲强化和保持 Scrum 的定义。据 Ken Schwaber 说:
Scrum 自上世纪 90 年代早期开始应用于复杂产品的开发。 本文件描述了如何使用 Scrum 来构建产品。
对 Scrum 定义的一个极佳探讨,可以在 Dominique Stender 针对 Ken Schwaber“关于 Scrum 的迷惑”一文所写的博客上找到。在那篇博文中,他附和了 Martin Fowler 对语义扩散的立场:
我也同意 Ken,有一份 (!) Scrum 是什么的正规描述很有必要。像 [Ken] 指出的那样,Scrum 与诸如看版、XP 和其他敏捷方法是混在一起应用的。这就让一份 (!) 关于什么是 Scrum 什么不是 Scrum 的“原版”文件的存在变得非常重要。需要有一个基准。
主流敏捷之于产品和产品负责人
敏捷的“主流化”可能意味着,Ken Schwaber 和 Jeff Sutherland 定义的 Scrum 比任何时候都更极端。尽管敏捷步入主流领域,Scrum 的共同创造者们实际上正在固化 Scrum 的定义。这是怎么了?
明证之一:现有的 Scrum 指南申明:产品负责人“永远是一个单独的人,而不是一个委员会。”而博客界的其他人现在对 Scrum 实施中的产品负责人问题也言之凿凿。比如,InformIT 的 Roman Pichler 在关于产品负责人相关问题的文章中写道:
产品负责人委员会就是一帮产品负责人,而无人对整体产品负责。没有一个单独的个人来引导团体、帮助设置共同目标和促进决策。产品负责人委员会的危险是,陷入无穷无尽的会议和利益冲突、政治争斗——又被称做“委员会死刑宣判”。不能达成任何真正的进展,人们停止协作,开始互斗。 永远保证有一个人对产品负责,一个总 / 主产品负责人来引导其他产品负责人并促进决策,包括产品待办事项优先级排序和发布计划。
“敏捷的主流化”好像对非常清晰的术语定义提出了要求。术语‘Scrum’正在由 Scrum 的创立者们通过决定性的 Scrum 指南积极地加以定义和维护。在敏捷步入主流并更易受到语义扩散影响的同时,术语“敏捷”的实际含义正变得越来越重要。
评论