Don’t read this post as a criticism of Scrum per se, I’m just concerned that the popularity of Scrum is somewhat watering down the Agile movement.
The last couple years I’ve noticed a huge uptick in interest in Scrum and far less mention of Extreme Programming. When Roy Osherove did his Hot/Not Hot list, Scott Hanselman even commented that Scrum was HOT while XP was NOT HOT. It’s not hard to understand why Scrum is more successful now than Extreme Programming and XP’s somewhat scary (or goofy) terminology and undeserved reputation for being hackery. Scrum has always been more conscious (or conciliatory) of its image in corporate settings and benefits from the strong focus on project management and now portfolio management. All the same, I think it’s somewhat unfortunate because there’s still so much good stuff in XP that’s lacking in out of the box Scrum*. Specifically, XP has its roots very firmly on the software engineering side of things while Scrum is primarily a project management practice. You’ll see this evidenced in practices like simple design, TDD/BDD, Continuous Integration, and the strong emphasis on testing. While Scrum might have a better, or at least more palatable, story for project management, don’t leave the engineering practices from XP behind. Scrum does provide a nice framework for iterative project management, but all those engineering disciplines from XP are built specifically to enable rapid iterations. In a way I think Scrum is dessert and XP is the broccoli in your diet of software practices.
Of course, in another way the interest in Scrum is very healthy because it’s bringing project managers and non-developers into the Agile fold. The effectiveness of my XP engineering practices is magnified when the rest of the team is working iteratively to support my development and testing practices. The common practice of developers working iteratively and adaptively within a team of waterfall-ish project management and testing is always an unsatisfying compromise.
Unsurprisingly, Scott Bellware had something to say on the subject as well.
* Most Scrum teams I’ve run across adopt XP engineering practices anyway. Maybe not as rigorously as the early XP teams, but they do eat their broccoli too.