Monday, July 25, 2011
Scrum: Helpful or Harmful?
I've noticed an interesting side effect of agile "mainstreaming". I spend less time convincing folks that certain processes and practices aren't crazy. The downside of this is that often times only the processes and practices are in place.
I've recently written a couple of blogs with regard to "commitment" and "estimates". Both are two words I hear quite frequently at places that have "adopted" the Scrum framework, and are also frequently abused. Many of these places haven't taken the time to read the original scrum book, or usually any scrum book, or sometimes any book at all, or blogs, or even just the Agile Manifesto!
This leads to problems such as "sprint commitments" being in conflict with "sustainable pace" for a development team and many other general contradictions of the underlying values and principles of agile that were originally behind Scrum.
The basic problem I see with Scrum is also its benefit: it's very easy to adopt. Change some titles around, rename some meetings and *poof* we're an agile organization now! And some places operate under this assumption for a long time. Because of this, some members of the organization get a bad taste for agile, while others see some initial benefit but then are surprised when things slow down or relapse.
There are two reasons for this slowdown or relapse:
One is the missing technical practices. For the most part XP has taken care of this, but how well understood or implemented the XP practices are in places such as these is questionable.
The second, more insidious problem, is that no underlying culture change ever took place. No spirit of inspect and adapt or continuous learning was ever instilled. The 'why' behind the 'what' was never explored and understood.
So in the end, has Scrum helped or harmed? I find this still a tough question to answer. I do feel that Scrum did a great job of getting many of the ideas spread around. On the other hand, I find a lot of need to un-Scrum, or rather work to instill the missing values and practices now, with the added baggage of over coming the fact folks thought they already made a big change.
Wednesday, July 6, 2011
Learn, Reflect, Adapt
The point isn't to do Scrum or Lean or Kanban or XP or Crystal or Pair Programming or Continuous Integration or Test First or any other specific practice or methodology.
I'm not advocating Scrumbut, Kanbanbut or any other but.
I'm not encouraging "that wont work here".
I'm certainly not promoting "if it ain't broke don't fix it".
I'm also not in to change for change sake.
(though sometimes I encourage change to learn, but never just to be different for no reason)
What I do advocate, encourage and promote is folks figuring out what the next best improvement to their environment is and then making it happen…and doing it thoughtfully and intentionally. There are lots of good reasons to not do things. There are also lots of good reasons to do things. Your goal is to understand the difference then take action to make things better given your context. Why? Because one thing is certain; nothing is perfect, everything can be made better and in this day and age complacency is not an option for continuance.
So first you must know what all (or at least some) of the various options for "better" are.
There are technical practices, management methodologies, and organizational techniques and lots of other stuff. There is a veritable buffet of information out there, all one has to do is start to consume it. But consumption isn't enough, one must also reflect about what they are taking in and how it fits in to their context. But reflection isn't enough either! One must adapt. On top of all this, I will next ask you to do all these things continuously…and sometimes simultaneously :)
If this sounds familiar, good…it's really just a different spin on Plan -> Do -> Check -> Act and other such ideas that have been around for about 3 decades.
One small difference though. I said do them all continuously. Not linearly, not in a cycle, not in phases. Each of these things is a thread that can be started separately from the others and continue on until its own natural end or transition. For example, if you are learning about something, it might just make you think about something else you previously learned. And just because you are learning a thing does not mean you can't be adapting your environment simultaneously. And you will almost certainly be both reflecting and learning while you are adapting a change to your set of circumstances.
So…
Learn stuff; read books, blogs, go to classes, attend workshops.
Reflect on stuff; think about what you've learned.
Adapt stuff; trying things out, learn more by doing, take some action.
These things may come in ebbs and flows. You can't be dialed to 11s 100% of the time. Remember, continuously also implies sustainably ;) So it's also important to know your capacity for these things. Also, working in a pair or group can help tremendously for learning, reflecting or facilitating change.
In the end, even if you are not able to adapt your environment, you will have adapted yourself…and at least you will be improved for it. Hopefully you can improve things around you as well. And you never know what lives you might unknowingly touch in the process. So no matter what, you win!
Subscribe to:
Posts (Atom)

