I got a lot out of Nathan Gloyn’s talk at DDDEA 2015 on “Agile: I do not think it means what you think it means”.
The slides of the talk are here.
The talk is about where it all went wrong - the mainstream adoption of agile, the brand-name of it, the descent into a cargo cult and the conflict between the principles and the rules.
One thing on slide #29 struck me as odd at the time: Don’t be bound by “the rules”.
Break the rules? But … one of the earlier symptoms of agile failing was the “Scrumbut”, e.g. “we do scrum, but the standup takes an hour so we do it sitting down” to which the answer was obviously “you’re doing it wrong! Don’t break the rules!”.
So it took me a while to work though this contradiction - when must you follow the rules, when must you not?
It’s about following the principles. Why is that change to the process in place? Try following the statement with “so that..” and you might get “we do scrum, but the standup takes an hour so that we don’t upset the head manager who is overseeing the meeting and wants to know everything”.
And “we do scrum, but we release as soon as the feature is ready instead of at the end of the iteration, so that we can deliver valuable working software sooner”. Spot the difference? It’s in the values. You can refer back to the agile manifesto.
Agile that’s working has a feel to it which you can sense after a while. Something involving the confidence of growing software with regular releases, while being on top of the errors and working at a sustainable pace.
But no, it’s not easy to make it come about where it’s not already understood and in place, even if lip service is given to the name of “agile”. There are times when the training wheels of “just follow the rules for now” are part of the practice. It’s a contextual decision - if it was easy to do it wouldn’t be a well-paid professional job.