Shu Ha Ri and Agile Development

A Virtuous Agile Circle

Shuhari (守破離) is a Japanese concept, a metaphorical equation, which describes the stages of learning and progress to mastery. While most frequently used the context of martial arts, its origin is actually Japanese Noh theater and the 13th century.

While the values and principles of Agile are minimalistic (See: Agile – What it means…) “rules” do abound – particularly in Scrum (“Generally Accepted Scrum Practices”). How we learn, follow, break, and eventually create new rules is a process much like the development of a martial artist. This concept is described by the Japanese word Shuhari – which I became acquainted with thru my Aikido practice.

A well-regarded Aikido teacher explained shu ha ri this way: “…when we learn or train in something, we pass through the stages of shu, ha, and ri… In shu, we repeat the forms and discipline ourselves so that our bodies absorb the forms that our forebears created. We remain faithful to these 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.”

Let’s explore these stages in greater detail, and see how they apply to agile practice and software development.

Shu – Follow the Rule

shu (守) “protect”, “obey” — traditional wisdom — learning fundamentals, techniques, heuristics, proverbs

While in the shu stage, one copies/follows the techniques as taught without modification and without yet attempting to understand the rationale.

Follow, protect, obey, again and again and again. “Shu stresses [the] basics in an uncompromising fashion so the student has a solid foundation for future learning.” In this way a lasting technical footing is built on which the deeper understanding of the art can be based. One way. The rules’ way.

Application to Agile/Scrum

Shu-level teams must implement all of the core prescriptions of Scrum:

  • Roles – Product Owner, ScrumMaster, and Development Team
  • Backlog – Product user stories, sprint development tasks
  • Sprints – Time-boxed iterations with agreed upon product increments
  • Meetings – Product Backlog Refinement, Sprint Planning, Daily Scrum or “Stand Up”, Sprint Demo, and Sprint Retrospective
  • Visible Progress Indicators – Burn down chart

Application to Programming

A programming book aimed at a shu-level audience would describe processes, techniques, and standards in detail. It would work to assure the reader that there really is a way of developing software that works, and that if the reader will just follow it, success will be “guaranteed.”` Examples of such books are The Science of Programming by Gries and The Discipline of Programming by Humphreys 1991.

Ha – Break the Rule

ha (破) “detach”, “digress” — breaking with tradition — detachment from the illusions of self

After shu comes ha. Having reached Ha, one has attained the basics and now spends time reflecting on the meaning and purpose of everything he/she has learned. In this way, the student comes “to a deeper understanding of the art than pure repetitive practice can allow.” At this stage, since each technique is thoroughly learned and absorbed into the muscle memory, students are prepared to reason about the background behind these techniques. They break free of the fundamentals and begin to apply the principles acquired from the practice of basics in new, freer, and more imaginative ways, all the while carefully upholding the principles underlying the practice.

Application to Agile/Scrum

Once a team reliably demonstrates their ability to do the daily stand-up well following the rules (time boxed, three questions: yesterday, today, in the way…) and they see the deeper principle of stand-up as a commitment meeting rather than a status meeting, they can choose to break the rules – because they understand the principles underlying them. And then after a couple of sprints trying that out, they let the inspect-and-adapt retro mechanism of agile tell them whether doing so was positive and useful.

Application to Programming

A programming book aimed at the ha-level audience is The Art of Computer Programming by Knuth. It shows the reader several techniques for working through tasks, with examples and notes about when each is more useful. The text also provides variations in the level difficulty of the exercises – ranging from “warm-up” exercises to unsolved research problems, providing a challenge for any ha-level reader.

Ri – Be the Rule

ri (離) “leave”, “separate” — transcendence — there are no techniques or proverbs, all moves are natural, becoming one with spirit alone without clinging to forms; transcending the physical

After ha comes ri. When in ri, the movements of the martial art become part of the student. Although the student still follows well-worn rules, including those broken and renewed, “There are no techniques… all moves are natural.” There is a freedom and a path of self-discovery. The ri-level practitioner thinks originally and develops new thoughts about the art from his/her background knowledge and tests them against the reality of that knowledge and conclusions as well as the demands of everyday life.

Application to Development

When in ri, an agile team may decide to replace the stand-up with something else entirely. The replacement practice still achieves the principle of the stand-up and takes it even deeper. The stand-up is not dropped thru lack of understanding.

Application to Programming

Books aimed at ri-level audiences are The Pragmatic Programmer by Hunt 2000 and Agile Software Development by Cockburn. The ri-level reader will find these texts a useful library of ideas to pick up, and put down as needed. An advanced ha-level reader will begin to see techniques that he/she might learn to apply. The shu-level beginner will find these down right frustrating. Discussions at the ri-level are very Zen: “When you are really doing it, you are unaware that you are doing it.” For those at a ri-level of behavior, this is all true. To someone still working thru ha, it might be confusing. To someone in shu, looking for a procedure to follow, it will be useless.

Not A Line

Individuals and teams can be in different stages for different rules. (Mike Cohn and Kenny Rubin offer a free “Comparative Agility Survey” that individuals and teams can take to see “where they are”)

And progress on the path to mastery is not exactly linear. It is more akin to concentric circles – “there is Shu within Ha and both Shu and Ha within Ri. The fundamentals remain constant; only the application of them and the subtleties of their execution change.”

Where ever you and your team happen to be at this moment, don’t be in a hurry. You will progress at the rate you progress. Don’t jump into “free practice” too quickly. Put the effort in, rigorously pursue excellence, and someday you will be unaware of any effort at all.

Through shuhari an art – any art – as well as its practitioners will always be changing, always improving. First learn, then detach, and finally transcend.

And that is kaizen.

Learn More

(Visited 377 times, 1 visits today)

Related Posts