Tuesday, May 02, 2006

Feedback, Flow and Friction

I think those three words may just possibly distill the essence of Agile, Lean, and Theory of Constraints: Feedback, Flow and Friction!
  • Feedback is, to a large-extent, what Agile is all about. It is about getting continuous feedback quickly and frequently as possible (at all levels of scale) to promote collaboration and synergy and synthesis of the knowledge we gain thru learning and discovery so we can validate it early and often.

  • Flow is what "Lean" is all about. It is about ensuring smooth continuous flow of the value stream, from creation thru delivery, and eliminating redundancy and waste wherever possible.

  • Friction is what "TOC" is all about: identifying and removing the constraints that impose friction on the flow of value and the feedback cycle of discovery and learning.

What do you think? How far off the mark is this? How badly am I oversimplifying?


Anonymous said...

Generally, I like articles like this that boil down concepts. They're great for newcomers who don't want to start with a 3 page article.

However, IMHO, Agile is about reducing the cost of change in software development. Continuous feedback is one way that Agile acheives this.

Anonymous said...

Neat distillation of these three approaches! I believe agile and lean are actually aimed at reducing cycle time whereas TOC, in its simplest form, is about eliminating the muda of over-production. But you have characterised them very well nonetheless. (Trackback link to http://silkandspinach.net/blog/2006/05/feedback_flow_a.html)

Brad Appleton said...

Responding to kouretasgoat ... I agree agile is about reducing cost of change and increasing responsiveness and adaptability. I think it does this by using feedback to minimize the "learning latency" between making a decision and seeing the consequences of executing that decision (along with all the intermediate knowledge transfer that takes place in order to do so).

Can you give an example of a way that agile methods do this that you would not consider to be forms of feedback between either people and people, or people and the software? All the ones that come to my mind seem to boil down to this?

Anonymous said...

I've gotta agree with you here, Brad. I've been working on some articles that are more or less frustrated by a team that is getting the agile (ala scrum), but not the lean, and is getting into problems. This is an excellent way to distinguish these issue.

Anonymous said...

IMHO, the key value of applying TOC is not that it helps to remove ('elevate') constraints - but rather that it takes away complexity by focusing the planning and management effort on the critical constraint ('subordinate').

In other words: TOC is about focus, not about friction.

Honestly, I don't see the importance of the concept of 'friction' for TOC. Could you explain your understanding?

Markus Koerner

Brad Appleton said...

Hi Markus!

In this context, I see the word "friction" as more or less a synonym for the word "constraint", except it begins with the same letter as the words "feedback" and "flow."

So like you said, the focus is on the critical constraint, or put another way, on the thing that is causing the most "friction" against throughput.