极限编程 VS Scrum
最佳答案
该文由提问者精选推荐PMP考试培训
2024-04-18 15:21 回答
极限编程(XP)是一个敏捷软件开发框架,旨在帮助开发团队达成更高质量的开发节奏,开发更高质量的软件。XP是描述软件开发工程具体实践的敏捷框架。
Scrum是一个能够解决复杂适应性问题的敏捷开发框架,同时以富有创造力的方式交付最高价值的产品,帮助团队在复杂产品上进行有效协作。 作为敏捷方法论,Scrum和XP共享迭代式开发、发布和迭代计划、每日会议、回顾会议及其他敏捷过程涉及到的元素。在很大程度上,这两种方法是一致的,甚至有时很难将采用XP的团队和采用Scrum的团队区分。
(极限编程)
(Sprint周期)
不过两种敏捷方法并非完全一致,它们之间也有一些细微的差异,主要在以下4个方面:
1.迭代长度
Scrum:- 通常为两周到一个月。
- 通常是一到两周。
2.是否允许在迭代中修改需求
Scrum:- 不允许更改sprint;
- 一旦sprint计划会议完成,并做出了交付一组产品待办事项的承诺,那么在这一Sprint结束之前,这组待办事项将不会再变。
- 更容易在迭代中进行更改;
- 只要团队尚未开始研究某个特定功能,就可以将同等大小的新功能交换到XP团队的迭代中。
3.是否严格按照迭代的优先级实现用户故事
Scrum:
- Scrum产品负责人为产品待办事项安排优先级,但团队决定他们开发待办事项的顺序。
- Scrum团队很可能会选择从事第二重要的工作。
XP:
- 严格按照优先顺序工作。
- 要开发的特性由客户(或Scrum的产品负责人)确定优先级,团队需要按照这个顺序对其进行处理。
4.是否采用严格的工程方法来保证软件实施过程中的进度或质量
Scrum:
- 没有规定任何工程实践。
XP:
- 极限编程有十二个工程实践:现场客户、代码规范、每周40小时工作制、计划游戏、系统隐喻、简单设计、测试驱动开发、重构、代码集体所有、持续集成、小型发布、结对编程。
方面 | 实践 | XP | Scrum |
迭代长度 | 是否允许修改需求 | 1 - 2周 | 2 - 4周 |
通过迭代处理更改 | 是否严格按照需求优先 | 当需求没有实现时,它可以被其他需求替代,但实现时间长度要求相同。 | Scrum是不允许这样做的,一旦迭代完成,不允许任何更改。 |
优先级 | 是否严格按照需求优先 | 是 | 否 |
工程实践 | 是否采用严格的工程方法确保进度或质量 | 非常严格 | 要求开发人员保持自主意识 |