agile adoption · dictionary · process theory


Shu-Ha-Ri is a way of thinking about how you learn a technique. The name comes from Japanese martial arts (particularly Aikido), and Alistair Cockburn introduced it as a way of thinking about learning techniques and methodologies for software development.

The idea is that a person passes through three stages of gaining knowledge:

The fundamental idea here is that when teaching a concept, you have to tailor the style of teaching to where the learner is in their understanding and that progression follows a common pattern. Early stages of learning focus on concrete steps to imitate, the focus then shifts to understanding principles and finally into self-directed innovation.

There are other expressions of this style of learning. A more nuanced approach is the Dreyfus model. I rather like Clark Terry's formulation of this model: Imitate, Assimilate, Innovate.

Further Reading

You can find Alistair's (better) description of this in his book: Agile Software Development.


Originally posted 30 Sep 2006, updated to include the generalization and mention of similar models on 22 Aug 2014