You are here

Is Scrum Naked Without XP?

This was the title of a session hosted by Jeffrey Palermo at the Agile Austin Open Space Conference that I attended recently.

It got me thinking a bit about the relationships between the various agile methodologies. I've always stressed the use of Agile over a particular methodology (such as Scrum) because I wanted to ensure that we felt free to use the best of each. In the end, I've generally found myself using Scrum with some concepts from XP.

When you think about it, the two have fairly different focuses. Scrum is more management focused. It could be used on anything (not just software). For example, you could use it when starting a business. The backlog would be the list of things you need to do for your business to be successful. You then work through the backlog in iterations (incrementally).

XP on the other hand, is more developer focused. It tells you best practices for developing software. Things like constantly integrating, peer review (through pair programming), collaboration (through pair programming, co-location and co-ownership of code) and thorough testing (through test driven development and automated acceptance tests).

The two have a lot in common as well. Both are incremental. Both have iteration planning and daily stand ups.

The idea of the talk was that without the strong engineering basis that XP provides, Scrum is insufficient. I'd agree with that to a point. Scrum's a great starting point. The retrospectives at the end of each iteration will highlight problem areas. XP's approaches are potential solutions to some of those problems. The two complement each other well.

A lot of it will depend on your team's culture (i.e., the people who make it up). Pair programming isn't for every group. Neither is test driven development. Both have many advantages, but you have to figure out what is right for you.

BTW, see this page on the Control Chaos website for more on this topic.

Theme by Danetsoft and Danang Probo Sayekti inspired by Maksimer