Scrum And XP - Face 2 Face

Extreme Programming (XP) is an agile software development framework that aims to produce higher quality software, and higher quality of life for the development team. XP is the most specific of the agile frameworks regarding appropriate engineering practices for software development.

Scrum is a framework within which people can address complex adaptive problems, while productively and creatively delivering products of the highest possible value. Scrum itself is a simple framework for effective team collaboration on complex products.

Scrum and XP are both Agile approaches that share the common concepts of iterative development, working software, release and iteration planning, daily meetings, retrospective, all elements of an Agile process. Both approach are aligned each other that sometimes is difficult to distinguish between a team who is adopting XP while another team who is doing Scrum.


No alt text provided for this image
No alt text provided for this image


Extreme Programming Sprint Cycle


Best Scrum Software Every Project Needs

A powerful scrum software that supports scrum project management. It features scrum tools like user story map, product backlog management, sprint backlog management, task management, daily scrum meeting, sprint planning tool, sprint review tool, sprint retrospective tool, burndown, impediment, stakeholder and team management.

There are however some differences, some of them very subtle, and particularly in the following 4 aspects:

1. Iteration length

Scrum

  • Typically from two weeks to one month long.

XP

  • Typically one or two weeks long.

2. Whether requirements are allowed to be modified in an iteration

Scrum

XP

  • Much more amenable to change within their iterations.
  • As long as the team hasn’t started work on a particular feature, a new feature of equivalent size can be swapped into the XP team’s iteration in exchange for the un-started feature.

3. Whether User Story is implemented strictly according to priority in iterations.

XP

  • Work in a strict priority order.
  • Features to be developed are prioritized by the customer (Scrum’s Product Owner) and the team is required to work on them in that order.

Scrum

  • Scrum product owner prioritizes the product backlog but the team determines the sequence in which they will develop the backlog items.
  • Scrum team will very likely choose to work on the second most important.

4. Whether to adopt strict engineering methods to ensure progress or quality in the process of software implementation

Scrum

  • Doesn’t prescribe any engineering practices;

XP

  • XP does.
  • For example: TDD, pair programming, simple design, refactoring…

 We can summarize the differences between XP and Scrum as follows:

Aspects

Practices

XP

Scrum

Iteration Length

Whether to allow modification of requirements

1-2 weeks

2-4 weeks

Handle Changes with an Iteration

Whether the demand is strictly in accordance with the priority

It can be replaced with other requirements when a need is not implemented, but the implementation time is equal.

Scrum is not allowed to do this. Once the iteration is completed, no changes are allowed, and Scrum Master is strictly checked.

Priority of Features

Whether the demand is strictly in accordance with the priority

Yes

No need to

 

Engineering Practices

Whether to adopt strict engineering methods to ensure progress or quality

Very strict

Require developers to be conscious

Therefore, we believes that XP’s approach is acceptable, but it brings Agile into a confusing paradox, because the idea of XP, combined with agile mode, conveys to the team the message that “you are a fully self-managed organization, but you have to implement TDD, pair programming, etc.”

It is not difficult to find that the four distinctions are quite obvious:

  • In Scrum, it emphasizes self-organization
  • In XP, it emphasizes strong engineering practice constraints.

Conclusion

Scrum is a framework for product development, which is a container where you can add other practices. XP is one of those practices that you can do within Scrum framework. There are no reasons why a team should choose between Scrum and XP. XP rules and practices are not easy and the majority of XP rules are non-negotiable. Adding XP into Scrum could be a natural path for teams starting out with Scrum and striving to be a professional Scrum Team.




要查看或添加评论,请登录

社区洞察

其他会员也浏览了