In Defense of Scrum (Please Stop Pissing on It)
Here’s my take on the matter…
“Scrum
has no technical practices”
The lack of technical
practices in Scrum is a strength, not a flaw. It means
Scrum can be (and has been) applied successfully not only in software
development, but also in design, marketing, and several other creative
domains. As far as I know Scrum has always been presented as a framework,
meaning that it must be augmented with domain-specific
practices. True, some software teams forget about the technical
practices, and they are idiots! But is it a “flaw” of the script writer
when the director forgets to use stunt doubles when filming the
dangerous scenes? Or is that a failure of the craftsman who apparently
doesn’t know how to do his job? If you call it a “flaw” that Scrum has
no technical practices, then you can only conclude that Lean and Kanban
are seriously flawed as well! Obviously this is a bit silly. To me this
flawed reasoning seems like a bad case of tunnel vision. There’s more
happening in the world than TDD, Continuous Integration, and Pair
Programming. Really! (BTW, it is interesting to see praise on the
Lean side for Bob's criticism of Scrum, while Lean and Kanban have
no technical practices whatsoever! The few described in Lean books are
simply copied from XP…)
“The Scrum Master arrogates
project management powers”
Maybe, but it’s a risk worth
taking. A much bigger problem I see with teams without
a Scrum Master is that they are usually an undisciplined bunch of
mandrills. XP requires and assumes that teams consist of self-disciplined,
competent, and communicative people.
Unfortunately, many software developers don’t fit this
description. Scrum at least acknowledges that most teams need
some help and assistance in getting their processes and
communication in order. I find it particularly strange that people who
call for craftsmanship on the technical side should point out the
dangers of positioning a master on the process side! Honestly, I would
rather run the risk of a Scrum Master taking up PM powers than a dev
team completely ignoring their responsibilities. What is worse? (And
yes, the sooner a team can do without a Scrum Master, the better. I
don’t have one in my own team right now. For us there's no need.)
“Scrum
provides insufficient guidance regarding the backlog”
See
the first issue above. A backlog for graphic designers probably looks
quite different from a backlog for developers. And marketers print their
backlog horizontally and call it a road map. What’s wrong with keeping
all the options open? Scrum is a framework, not a by-the-minute recipe!
“Scrum carries an anti-management undercurrent”
I
don’t get it. How is that different from XP? Management has always been
underrated in the Agile world. True, management has done badly before
Agile. And we should be glad for the Agile movement and its
self-organizing teams. But self-organization without governance is
anarchy. This is not a flaw in Scrum, it is a flaw that began with the
Agile Manifesto itself, which completely disregarded the role of
management. And guess who
co-wrote that? :-)
“Scrum doesn’t say anything about
multiple teams”
True, and again: how is that different from
XP, or any other agile methods? Allow me to quote John Gall here:
A complex system that works is invariably found to have evolved from a simple system that worked. A complex system designed from scratch never works and cannot be patched up to make it work. You have to start over, beginning with a working simple system. – The Systems Bible, John Gall
Scrum is a small system. That’s why it works. It is specifically designed not to cover technical practices, complicated backlogs, multi-team projects, etc. They tried that with RUP, and they failed. Because a complex system designed from scratch won’t work. A big working system has to start as a small working system. This is not a flaw. It is common sense. And now that we know that (small) Scrum can work, we can learn how to make it grow...
And that's what I had to say in defense of Scrum. I really hope that people would stop pissing on it. No agile method is perfect. But I think there’s a world of difference between imperfect and "flawed".
Please note that I am not a CSM, and will never be one. I like XP and Kanban just as much as I like Scrum, because I believe no single model or framework is enough when managing complex systems. Anyone who favors one method and pisses on another is just showing off his ignorance of complexity thinking.
That's it. I hope to have entertained or annoyed you.
I will be speaking at the Scrum Gathering in Orlando. Hope to see you there!
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)





Comments
Sindy Loreal replied on Sat, 2012/02/25 - 9:54am
Good points. Those bashing Scrum do it for a reason, a very clear an undisguised jealousy for the success that scrum achieved.
True, the success that scrum achieved also leads people in that community to bash other methods (like certain famous people saying Kanban cannot work for "beginner teams").