SCRUM has been made an everyday term by Jeff Sutherland and you are often confronted with it. Certain elements from SCRUM, such as the Kanban Board and the daily standup meetings, were very well received – even outside of IT. But like SCRUM, Extreme Programming (XP) is also very popular with agile projects. However, it is needed more by pure software development teams because it is the Agile Framework with the most non-negotiable specifications. For example, regarding engineering practices for software development. It has clear quality requirements and sets its focus there.
SCRUM and XP share basic concepts such as iterative development, delivering functional software as quickly as possible, release and iteration planning in sprints, daily standups, reclectation and improvement. Many consider both to be the same framework and admittedly, it is also difficult to distinguish them. Especially when one software team makes SCRUM and the other in the same department XP.
But as mentioned at the beginning, there are also significant differences:
1. Length of iterations
- SCRUM – Usually from 2 weeks to one month
- XP – One to two weeks
2. Adjustments to requirements during the sprint
- SCRUM – No changes possible during the sprint. Once the item is added to a current sprint, no changes can be made.
- XP – Last minute changes are possible, even during the sprint. For example, if the team on a specific feature has not yet started to work, it can also be replaced during the sprint with a similarly long feature from the backlog
3. User stories are implemented strictly according to the priorities and predetermined iterations
- SCRUM – No, the product manager decides the sequence of features from the backlog. Usually according to the priorities. However, the SCRUM team can assign itself to items for capacity.
- XP – Yes, a fixed priority of features is defined and the project team works according to this predetermined sequence. Exceptions in case of adjustments to requirements (see above)
4. Engineering practices that determine the quality of implementation
- SCRUM – There are no engineering practices
- XP – There are clear engineering practices, such as TDD (test-driven development), refactoring, pair programming, simple design. The reference to quality and continuous improvement including testing is a priority.
In summary, when it is decided whether companies want to focus more on self-organization and give developers leeway (SCRUM) or clear engineering practices, companies need to decide whether to focus more on self-organization (SCRUM), but also want to have more reviews but also predetermined sequences of priorities (XP).
However, XP has clear guidelines and most rules are non-negotiable. So it may make sense for project teams that have only recently been working together and tend to be more inexperienced to start with XP. Once the team has gained enough experience and takes the engineering practices for granted, you can switch to a professional SCRUM team.