在极限编程讨论组的一个激烈讨论中, Michael James 引出了关于 Scrum 是否在离间极限编程阵营的议题。他一直认为 XP 和 Scrum 是同一联盟的,但有一些成员却持不同观点。
Simon Jones 认为尽管他不反对 Scrum,但对其还是有些疑问:
- 我真想知道,除了更有效的市场开拓以外,还有什么东西是可以从 Scrum 中得到,而 XP 却无法提供的呢?
- Scrum 感觉就是一个与项目管理相关的、XP 的子集。
- 我根本不知道 Scrum 为什么“故意”不引入工程实践方面的细节推荐内容。(译注:此处是否指 Scrum 中没有引入诸如 TDD 这样的详细编程实践?)
- “一瓶子不满,半瓶子晃”可能是非常危险的。Scrum 好象即没有给团队足够的指导使其更敏捷,……也没有给出足够的安全补救措施保证团队的安全。
讨论组中支持 Scrum 的成员则认为,由于 Scrum 早于 XP,很多 XP 的想法都来源来 Scrum。 Seyit Caglar Abbasoglu 在讨论组中说出的想法让大家眼前一亮,他提到:
我认为那些 XP 的主要工程实践令老的管理者感到害怕。好象那些支持 Scrum 的人一直都把这些实践藏了起来,除非他们有机会来展示为什么需要这些实践以及它们是多么有用。当这些实践的一部分成为业界的标准后,如果被加入到了 Scrum 中,这也很正常。
Alistair Cockburn 说类似的说法也正使 Scrum 阵营分裂。他补充说到:对于一个项目的成功而言,尽管 XP 的这些实践非常“有用”,但却不是“必须”的。其他成员反驳道,他们做过一些项目,在这些项目开始时使用了 Scrum,却没有使用 XP,但最终还是不得不引入 XP 实践,从而使项目获得成功。作为对于这一点的反驳,Alistair 引证了某个公司的实例,这家公司没用 XP,但项目仍取得了成功,客户也非常满意。他还提到了另一个使用“Crystal 方法”的项目,也没有用 XP,结果也还不错。 Alistair 进一步重申XP 实践是有用的,却不是必须的。
于是,这个问题就变成了“TDD,结对编程,尽可能的持续集成,尽可能的‘on-site’客户等这些实践到底是“很好”、“很有用”呢,还是“必须这样做呢”?
我仍坚持认为,它们是有用的,却不是必须的。
然而, J. B. Rainsberger 认为,那些未使用 XP 实践的团队能够取得成功,是因为在这些团队由有天份、有思想和博学的团队成员组成。按照他的说法,那些认为 XP 实践没有什么用处的 Scrum 从业者是没兴趣跟那些水平一般,离开适当的工程实践就无法获得成功的团队一起工作的。关于 Scrum 是否可以脱离 XP 起作用,以及它是否需要 XP 来填补工程实践上的空白这两点,讨论组并没有达成一致意见。然而,有些人也提到他们在项目中结合使用 Scrum 和 XP,并取得了很好的成功。
评论