“What are the Best Practices for Agile?” If I had a dollar for every time I have been asked this question, I could buy a weekend on Maui. This industry term has taken on a “silver bullet” quality. In our endless search for perfection, we lazily think that going through the motions of the best practitioners will get us the best results for ourselves.That is why successful Agile coaches teach the principles along with the practices – so people will understand why Agile works, not just how to do it. As Bob Hartman likes to say, there is a difference being doing Agile and being agile.
Knowing the principles helps us to choose or even invent what is “best” for ourselves in the next cycle. What is best for a web project may not be best for a backend project. What is best for a software project may not be best for a hardware project. The best for the team today may not be the best tomorrow. In the spirit of Lean and its core principle of continuous improvement, a Best Practice is the one we have not found yet – so keep looking. The best for you is not necessarily the best for someone else. And it is only Best for a while.
We do know that there are Agile practices that work really well. Extreme Programming enumerated several long ago and they are still really good. That is what the “extreme” part means – always do the things that work extremely well. In a recent class, after failing to disabuse some participants from asking for the “Agile Best Practices”, I challenged the class to tell me. But I insisted in reducing them to a lesser superlative (is that an oxymoron?) of “Really Good” Practices. For flexibility, I offered two levels of “Good” and “Gooder”. Here is a digitized version of what they originally produced in less legible sticky notes.