Optimizing the flow on agile projects
Whiskey, Sushi and Flow
abstract:
Come participate in a conversation that challenges you to think about everyday implicit flow parameters. Let's chat about my bar, and my frustration while waiting for a temaki on a Japanese restaurant.. These examples will help us understand and talk about flow parameters and queues.
Work item effort and priority; single or dual Queue
The other day I went to a Japanese restaurant for a
snack.
Small order - Temaki |
Large order - Combinado |
I was very hungry and wanted something simple and fast. I ordered one temaki. Unfortunately, it took me more than 30 minutes to get my temaki. Needless to day, I left the restaurant very frustrated and unhappy with the service.
After a few months, I went back to the restaurant and took a look at their kanban system. I noticed that all orders follow a single queue.
Let me explain the restaurant simple workflow: The waiter collects the order, and then he places it on the suchiman queue. Once the suchiman finishes working on the current order, he picks up the next one from the queue. The drawing below replicates the scenario that happened when I ordered a temaki.
Single Queue |
My temaki order is the last one on the queue. It has a small line, representing a small snack. The orders in front of it have more lines, representing larger orders.
Consider that each large order takes approximately 10 minutes, and that a small order (my temaki) takes one minute.
Following the single queue workflow my order did take
more than 30 minutes.
Let's now use the same workflow (with the same style of visual management and order control), but with a small change: two queues instead of a single one. Temaki and simple appetizer goes through the small order queue; everything else goes through the large order queue.
Dual Queue |
Consider that the restaurant changes from a single order queue to the model
represented above. Also, the suchiman gives priority to small order instead of
starting on a large one.
By following this model, my temaki wait time would
have reduced substantially. It would be
at most 11 minutes, instead of at most 41 minutes.
This illustrates the dual queue concept. I am sure you
can relate to it and can name quite a few places you have seen it (or missed it) before.
Optimizing the flow workshop at São Paulo – September 2013
We have had another edition of the Optimizing the flow workshop at São Paulo. It was superb! The participants were just fantastic.
Please find below the photos from this workshop
edition:
Stable System, WIP limit and Pull System
On myprevious blog post, I wrote that WIP limit and Pull system are the guiding rules
that make a system stable.
I decided
to make a visual representation for Stable System, and explore the what-if
conditions for WIP limit and Pull System.
Please
note that only WIP limit or only Pull System do not guarantee system stability.
The combination of both ensures the rate of work items entering the system is the
rate of items exiting the system.
What if the WIP is not limited?
Not limiting
WIP allows new work items to enter the system, despite of work items leaving the
system. In my bar example, new bottles would be added to the bar. This makes the
rate at which work item enters the system different than the rate they exit. The
system is not stable.
What if Pull System is not being applied?
Not applying Pull System means that a work item exiting the system is not triggering a new
one to start. In my bar example, an empty whiskey bottle is removed from it, and
a new bottle is not added. This makes the rate at which work item enters the
system different than the rate they exit. The system is not stable.
Little’s law and stable systems
Little’s law is defined in terms of stable systems. On my previous post, I have described my bar as a stable system: “Whenever a bottle finishes, I remove it from the bar. Then I open a new one, and add it to the bar. My bar is a stable system: the rate at which whiskey bottles enter the bar is the rate at which they exit.”
This describes the mechanics for inbound and outbound work items (whiskey bottles); but what is guiding these decisions?
Basically two guiding rules make my bar a stable system: (1) WIP limit and (2) Pull System.
WIP limit
WIP, or work in progress, is the number of work items in my system. In my bar example it is the number of whiskey bottles on the bar. Bottles that have been opened, but are not finished yet. The WIP limit on my bar is 12 bottles because that's all I have space for.
Pull System
Pull System describes the movement of work items driven by actual demand. In my bar example, a bottle that is finished opens a spot on my bar. Therefore creating a demand for a new bottle to be opened and placed at the bar. Essentially, the movement of work items (whiskey bottles) is driven by actual demand: a finished bottle is removed from the bar, opening space for a new one that is promptly added to the bar, occupying the vacant space..
Lead time: Applying Little's Law to track it
“The average number of work items in a stable system is equal to their average completion rate, multiplied by their average time in the system.” ~ John Little, 1961
The text above is from "A Proof for the Queuing Formula" by Little,
J. D. C. (1961). It is knows as the Little’s law.
By solving this simple first equation you are able to find out the
average time for work items in your system. My whiskey bar provides us a great stable system example to illustrate how
you can apply Little’s law to track the average lead time.
My whiskey bar
my bar |
Whenever a bottle finishes, I remove it from the bar. Then I open a new
one, and add it to the bar. My bar is a stable system: the rate at which whiskey bottles enter the bar
is the rate at which they exit.
Let's apply Little's law
Little’s law: “The average number of work items in a stable
system is equal to their average completion rate, multiplied by their average
time in the system.”
Or
The average number of
work items in a stable system
=
average completion
rate
X
average time in the
system
Using my bar terms:
12 bottles (number of whiskey
bottles in my bar)
=
6 bottles / year (average
completion rate)
X
average time in my bar
Therefore,
the average time a whiskey bottle stays in my bar is 2 years.
Give it a
try! Go ahead and apply the Little’s Law formula to your stable system. Similarly to
my bar example, given the average work items in the system (WIP) and the completion
rate (throughput), you can derive the average time in the system (lead-time).
Subscribe to:
Posts (Atom)