When trying to get waterfall teams and organizations to move to a more Agile development methodology there are two training strategies – philosophy and practice.
The philosophical approach relies on teaching the history of software development and the philosophy behind Agile – the manifesto and principles. This approach assumes that as long as one is equipped with the proper overriding principles then one will be able to make the correct decisions as challenges occur.
The practice strategy relies heavily on training the ceremonies, especially scrum ceremonies like standups, retrospectives, reviews, etc. This approach assumes that if you do the rights things that overtime the reasons for the practices will become apparent.
Lately I have seen more of the later. And there is some evidence that this approach can be successful. In psychology there is the concept of “fake it until you make it,” which acknowledges that if you, for example, pretend to love your spouse (when you might not feel love) and do those things that signify love that overtime you can actually fall back in love.
I think it is obvious that an Agile transition should include both approaches but my preference is that should I error one way that I should error in stressing the philosophy behind the Agile movement. A philosophy is one’s view of the world and can, in this respect, be compared with religion. To extend this analogy, is it preferable for one to adhere to the basic tenets of a religion or merely follow the ceremonies around it? My Christian upbringing taught me that understanding the philosophy behind the religion is more important than hollow adherence to ceremonies. I believe the same to be true of Agile.