There’s no right way to do Agile but there are plenty of wrong ones. Chet Rong, the world’s worst Agile Coach (via Atlassian) offers some examples of the wrong way to do Agile that never cease to give me some chuckles (follow him on Twitter) .
The main focus in adopting Agile for an organization is to adhere to practices which encourage a learning and improving organization. Keep the Agile practices you try out that bring value, and discard the ones that do not.
Ken Schwaber, in speaking to the Path to Agility in 2012 said that the Agile founders never intended there to be only a few flavors or variations of the Agile Framework. Instead, Schwaber said they envisioned Agile in practice would be as individual as a company or organization. No two implementations would be the same. In my experience, this is true. Each organization has their own challenges and unique needs that mean their implementation of Agile must account for them.
Differences in your organization or your implementation should not be used as an excuse to ignore core principles. If Agile isn’t working for your team, it’s essential to ask yourself why:
- Did we start with the right practices and derive through experience which are valuable and which are not as valuable, or did we eliminate some core practices before trying them? Eliminating core practices, or the conditions necessary to make these core practices working is a common misstep.
- Are we putting the proper value on the Agile principles? The Agile tenets?
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
(That is while there is value on the items on the right, we value the items on the left more)
- Are we skipping things because they are inconvenient, difficult, confusing or otherwise HARD?
- Just because Agile is simple, doesn’t mean it’s easy.
- Just because Agile is adaptive, doesn’t mean core principles are optional.
- Just because Agile is collaborative, doesn’t mean your implementation of Agile is.
- Are we making proper use of LEARNING? Are we looking at what’s working, what’s not and what we can do about it?
- Are taking time to improve every sprint?
- Are we asking ourselves the hard questions on how we can do and be better?
- Are we utilizing the fastest feedback we have at our disposal? Could we have faster feedback? How?
This is just a start. A truly Agile organization is always seeking to improve and ever evolving. In order to do this you use retrospectives and introspection to understand what is working and what is not. You make incremental improvements and you continue to observe how things are going every day.
This makes Agile a moving target, and truly, it is. Agile is not your end destination, it’s your journey.
If you are looking for a more concrete way to find out if you are doing it right… well, Henrik Kniberg, in the Scrum Checklist offers a concentrated list to determine this – do these and you are essentially doing it right:
- Releasable, working and tested software every sprint.
- Delivering the highest business value.
- Ever improving process.