Scrum和极限编程有什么区别?

26
几年前,我曾参与一项绿地项目,我们采用了极限编程(XP)的方法。我也看到很多人提到Scrum方法论。 请问有人能告诉我Scrum和XP之间的主要区别吗?

那么,答案是什么?当我在招聘信息中看到SCRUM时,我应该理解它是指定期短会议的敏捷开发方法还是其他什么? - Gennady Vanin Геннадий Ванин
1
此问题不在本站的讨论范围之内,因此被视为不符合 What topics can I ask about here? 中所定义的规则。另请参阅:What types of questions should I avoid asking? 您可以尝试在 其他 Stack Exchange 网站 上提问,例如 [pm.se] 或 [softwareengineering.se]。但是,请务必在发布问题之前阅读帮助中心的有关页面以了解该网站上的讨论主题。 - Makyen
5个回答

29

Scrum是一种软件开发方法学,XP则是一种编程实践。两者都是"敏捷"技术,通常一起使用。

Scrum概述了一个识别和分类需要完成的工作、通过与客户或客户代表沟通来确定优先级、并使用迭代发布实现这些工作的过程。

当我们的团队开始尝试Scrum时,我发现Implementing Scrum网站很有帮助。


4
Scrum是一个轻量级的框架,用于构建高度复杂和不确定性的产品。它并不是一种方法论,因为可以选择并结合使用各种方法和实践。它不仅针对软件开发,也可用于其他类型的项目。
在软件工程方面,Scrum并不定义要遵循哪些实践或方法,因为它不想预先规定适用于特定产品和环境的最佳做法。
许多Scrum团队使用多种XP实践,例如测试、反馈、配对编程和简洁性。
核心区别如下:
- Scrum计划迭代周期,并且不鼓励变更。XP更加开放于变化。 - XP立即征求反馈意见,而Scrum至少在Sprint Review时征求反馈意见,但如果可能,Scrum也不会拒绝早期反馈意见。 - XP专注于编程,而Scrum可用于非软件产品。 - Scrum并不定义如何进行开发,但许多Scrum团队实现了许多XP实践。

2

我曾经从事过这两种方法。它们的主要区别在于SCRUM注重时间较短、结构化的迭代周期,并优先处理待办事项。而XP更注重成对编程、任务优先级和测试驱动开发等方面。它们都采用迭代开发方式,并且足够灵活以应对项目中的变化。


1

Scrum是敏捷开发方法论中的一个组成部分,涉及到每天召开的会议以讨论进展情况,而XP是另一种强调配对编程和测试优先开发的方法论。


0

Scrum的主要目标是获取开发需要多长时间的估计。XP更注重帮助开发人员尽可能快地完成任务并保持可维护性。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接