We have discussed in detail what Scrum and Extreme Programming (or XP) are and how they work. Though, they might look similar in nature, they have some subtle differences. Let us look at these differences below –
- Scrum teams work in slightly longer iterations. The iteration or a Sprint in a Scrum can last from two weeks to one month. The iterations or cycles in extreme programming usually last between 1-2 weeks.
- One of the major difference that makes extreme programming stand out is that it allows changes into their sprint cycles. This is not allowed in a Scrum. In a Scrum, once sprint planning is done and sprint begins, no changes can be done to it. No change requests are entertained. While in XP, if the work has not started on a particular task, it can be replaced with a change request of the same weight (or size).
- Extreme Programming focusses on engineering practices to be included. It focusses on unit testing, integration testing, system testing, pair programming to name a few.
- The features to be developed are prioritized by the customer and the team following extreme programming have to work in that priority order. While in Scrum, a product backlog is maintained and the items listed are not in any priority order.
- Extreme Programming supports Pair Programming. It is a technique where two software developers/programmers work together at one station. One is called as the Driver, who writes the code and the other is called as the Observer/Navigator who reviews each line of code as it is typed. The two programmers switch roles after minute to hour periods. With this technique, everyone is familiar with the work that’s being done and it also reduces the chances of error or a bug.
These are some small differences between the two practices. Scrum is more popular and more widely used. But, extreme programming is also quite common these days. The decision to use wither solely depends on the nature of the project.
Which practice do you follow in your project? Have you worked on both these practices? Share your experiences in the comments below. We would love to hear them!