Workflow example – Coffee at Starbucks



Let’s take a look at another simple, yet effective, workflow example: ordering coffee at the Starbucks coffee shop. Ordering coffee and building software are fairly different processes. However, the simplicity of the coffee shop example provides us an effective way for explaining key concepts, relating it to the card wall, and exploring Agile thoughts. A few sections of this book will refer to this example.

I have selected the Starbucks coffee shop example for a few reasons. First, most programmers drink coffee daily, and many of us have spent plenty of time at Starbucks. Second, the process of getting your cappuccino at Starbucks has far fewer variances than software development, which provides us with a simplistic example. Finally, the coffee shop example has been successfully used in other books on similar subjects. This either means that the book authors spend too much time in coffee shops, or that this example is a good way to introduce workflow concepts. We believe both are the case.

 

Workflow stages

Below are the typical stages for ordering coffee at Starbucks. We will describe the stages based on Paulo’s extensive experience of ordering cappuccino.

 

The Registry queue

When Paulo arrives at a Starbucks, he comes across a queue of people at the register. 


Because of his previous experience with this workflow, he has a pretty good idea of how long it should take to receive his order. He will infer this time based on the number of people ahead of him at the register.

 

The register

Once Paulo reaches the register, he places his order. The cashier collects his money, and makes some marks on the empty cup. Then he places the empty cup at the area between the register and the barista.

 

Waiting for the Barista

The marked empty cup remains in the area between the register and the barista until the barista is done preparing the orders prior to Paulo’s. At times, there is more than one cup in this area, and they form a queue of waiting orders. If the queue is piling up, the cashier will slow down the rate of which he takes new orders.

 

The Barista

Once the barista is done working on the previous orders, he takes Paulo’s cup, reads the marks on it, and starts preparing the cappuccino. When it is ready, he places it in another area next to the espresso machine. Typically the barista will call the name written in the cup.

 

Order is ready

Once Paulo hears his name, or notices his marked cup on the counter, he collects his cappuccino. Sometimes Paulo’s cappuccino is mistakenly prepared with whole milk instead of soy milk. If that happens, the barista takes it back, and immediately start preparing the corrected (soy) cappuccino.