In theory there is no difference between theory and practice. But, in practice, there is.
-Jan L. A. van de Snepscheut
So you decided you want to be Agile, what now? First ask why? Do you really believe in the principles or has something else convinced you to become buzzword compliant? Have you read Fowler, Martin, Cockburn or Beck? Do you know the difference between XP and Scrum? Have you heard of Crystal? Do you know the pitfalls? Have you read the critiques? the rants? Do you know all the personalities involved and their biases?
How could you? Who has time for that? Oh, and the software project that the life your company depends upon can wait for you to sort it all out? Not likely. . .
While we deliberate about beginning it is all ready too late to begin
A reoccurring theme for teams adopting Agile practices is what may seem like an overwhelming sense of chaos as the old habits and sensibilities collide with the new. The chaos can be real or perceived, but is most prevalent in teams where Agile is being adopted without a lot of experience, often without buy-in or organizational support and on top of a legacy code base. Furthermore, the fledgling Agile champions, while enthusiastic, are trying to balance the notion that the methods only work if they follow all the disciplines and the fact that there is no possible way a team can adopt all the practices instantaneously.
Let me be clear, I personally think Agile, as embodied by the values of the manifesto, is about as good a way to approach the problem as one can get, but transitioning a team can often be a source of pain. In fact, let’s remind ourselves what those values actually are, because in practice, I think people often lose sight of them.
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
No river can return to its source, yet all rivers must have a beginning
-Native American Proverb
How to proceed? Well, that depends, where are you at now? and where do you want to go?
There are plenty of blogs and books and consultants, which offer appropriate advice, and depending on whether you have more time or money these can be great resources.
Here is my free unsolicited 2 cents of self referencing advice for teams who really want to deliver, take it for what it is. . .
- Create trust
- Embrace conflict
- Drive for commitment
- Don’t compromise accountability
- Be honest about the results
Focusing on Trust and Results, a lot of problems will just melt away. Standups, sprints and software will just become byproducts of commitment and accountability. Honest conflict in retrospectives optimize the process.
I’ve got no science for you, just faith. (Unless someone can give me a way to measure ‘trust’)
Like I said, take it for what it is. . .
So where do you start?
Create trust, problem solved.