Shu Ha Ri: An Agile Adoption Pattern
There are times that you can adjust your Agile process in order to make it function better. Adopting Shu Ha Ri, a Japanese martial art concept, could be the adjustment that your Agile process needs to succeed.
Join the DZone community and get the full member experience.Join For Free
Shu Ha Ri is something I was introduced to a few years ago. At first, it seemed like a bit of a stretch for me to apply it as an agile adoption pattern, or even just the idea of learning something new. Fast forward to today and I find that the distinctions of the levels are useful guides (not black and white rules) to help influence how to approach learning any new skill, including agile. This is certainly not a new topic and also not one without some controversy either.
What Is Shu Ha Ri?
Shu Ha Ri is used to describe the progression of training or learning. It is a Japanese martial art concept that is used to describe the stages of learning to mastery. In recent years, it has been abstracted and applied to the cycle of learning in general. Since there tends to be a lot of learning that happens in agile, it’s very useful here as well. People like Martin Fowler, Alistair Cockburn, and many others have written about the use and application of Shu Ha Ri in agile environments.
Akido master teacher Endo Seishiro summarizes as follows:
“It is known that, when we learn or train in something, we pass through the stages of shu, ha, and ri. These stages are explained as follows. In shu, we repeat the forms and discipline ourselves so that our bodies absorb the forms that our forbearers created. We remain faithful to the forms with no deviation. Next, in the stage of ha, once we have disciplined ourselves to acquire the forms and movements, we make innovations. In this process, the forms may be broken and discarded. Finally, in ri, we completely depart from the forms, open the door to creative technique, and arrive in a place where we act in accordance with what our heart/mind desires, unhindered while not overstepping laws.”
(Wikipedia. 17 Sept 2012.)
In a context relevant to agile adoption patterns, Martin Fowler defines Shu Ha Ri as follows:
Shu – In this beginning stage the student follows the teachings of one master precisely. He concentrates on how to do the task, without worrying too much about the underlying theory. If there are multiple variations on how to do the task, he concentrates on just the one way his master teaches him.
Ha – At this point the student begins to branch out. With the basic practices working he now starts to learn the underlying principles and theory behind the technique. He also starts learning from other masters and integrates that learning into his practice.
Ri – Now the student isn’t learning from other people, but from his own practice. He creates his own approaches and adapts what he’s learned to his own particular circumstances.
How Can I Use It As an Agile Adoption Pattern?
Instead of thinking right off the bat that your situation is unique and different and that you must find some custom solution, first, ensure you have mastered the basics of the thing you are trying to do. Essentially, start simple with the basics and do those well first.
A simple, but useful example: A co-located team has a daily standup that usually runs 35+ minutes and they are convinced that they need to have standups less frequently so that members of the team can just “do their work.” Here’s how the Shu Ha Ri progression can help.
Shu: The team would change their standup to follow the 3 question rule, where each person provides updates only on what they did yesterday, what they plan to do today, and if there are any blocking issues. Once the team has deliberately followed this practice and exhibited a level of proficiency with it, they are highly likely to have seen marked improvements in the duration of the standup as well as the quality of it.
Ha: The team is now very happy with the improvements they have made and are encouraged to make it better. So, they start to loosen the language around answering the 3 questions and add a 4th statement of “I could use help with x today” where it is appropriate. This change starts to yield improvements in how the team collaborates on their stories which helps them have fewer spillover stories. This continues for some time and the team continues experiments with various questions to augment or illuminate their current challenges.
Ri: The team has moved away from the mechanistic structure of any deliberate questions to answer and their standup is more like a flow of information that everyone finds useful. It is quick, concise, impactful, and adapts easily to the situation the team is facing.
Why the Progression?
There’s a pattern and flow to the standup that “Shu” established. That pattern became an unspoken cadence or muscle memory that continues to drive how the team does their standups. That rhythm established for them the behaviors of being brief, concise, and to have follow-up conversations after the standup. The questions and discussion changed over time, but the cadence and flow remain.
In the example of the team with the troubled standups, if they only ever focus on the mechanics (the 3 questions), they would never move beyond Shu and would therefore not continue improving. If they had just started experimenting with different questions and borrowing from other ideas, practices, or disciplines (Ri), they would have never established their cadence. Without the cadence, their standups likely would not have become shorter in duration and they probably would have moved to having them less frequently.
Why Are These Distinctions Useful?
I think one of the key tricks to this is figuring out the intersection of this line of thinking with real world situations. I don’t see the application of this as black and white at all. In fact, it is extremely gray, as it isn’t universally applicable, but I do believe it can be a great place to start your thinking. I know when I am coaching and starting to work with a new agile team, I usually start with the looking at the basics to see how well represented they are in the teams process. I worked with an agile team that excelled at delivery and everyone was happy with the pace they were moving at. Upon further inspection, their two-week iterations were really a single 6-week iteration because all their stories would start in the first iteration then cascade across the remaining two. Needless to say, we began a “Back to Basics” approach to work to get that and other things functioning better.
To me, the idea of Shu Ha Ri provides thinking tools, a language and a frame of reference to understand how to approach learning a new skill. When you are first learning something, variety of ideas isn’t usually the most helpful place to start. Once you get the basics down move on to experimenting and looking to integrate new thoughts or ideas. Your experiments will lead you to new paths and eventually you’ll move beyond the specific practices and evolve your own way of doing things.
Where do you think Shu Ha Ri could be useful in your organization or your team?
Read the original article.
This blog post is brought to you by SolutionsIQ, the largest pure-play Agile consultancy in the industry. We have the people, passion and expertise to make Agile at any scale a reality. If you're looking for more of the latest, greatest Agile content, check out our resource library chock full of webinars, case studies, white papers, podcasts and more!
Published at DZone with permission of Jason Novack. See the original article here.
Opinions expressed by DZone contributors are their own.
Turbocharge Ab Initio ETL Pipelines: Simple Tweaks for Maximum Performance Boost
Auditing Tools for Kubernetes
Software Development: Best Practices and Methods
TDD vs. BDD: Choosing The Suitable Framework