Saturday, June 2, 2012

To pull or not to pull… the German Autobahn would work much better if it would be controlled by conWIP.

A production line is like the German Autobahn. If you keep pushing, it will break down. Like a production line, the Autobahn has measurable parameters. Release rate; at what frequency are cars coming on to the road from the ‘Einfahrt’. Urilization; what is the percentage, or portion, of the road that is occupied by cars. Variability; to what degree are drivers out of sync with the speed at which they are driving, slowing down, stopping and starting up again. Lead time; how long does it take cars to travel a certain segment of the road. And throughput; at what rate are cars leaving the Autobahn through the ‘Ausfahrt’.
So what happens when the Autobahn underlies a push principle?... let’s take a step back here and first explore the question: “What is it, that implies we are working within a push principle?”
In a push environment, entities enter the system according to a planned or random moment in time. A planned order released to the production line according to the planned start date, a baby entering this world (there’s your push), a car driving onto the Autobahn. All of these entities enter the system without any regard of what’s going on inside the system. A newborn does not care what the world is like; whether there are too many of us; it just wants in. A car going on a trip is a bit different (some people might listen to the traffic report), but not much. And your jobs scheduled to go on the line? Are they not being released into the process when the packaging line at the very end is down? Of course they are. Otherwise the plant controller would scream murder, when with the packaging line, the other work stations go down too.

But herein lies the difference between push and pull. In a pull environment, the release rate is controlled by the system itself and what goes on inside. Take air traffic control; If the runway for landing in Newark is down, every plane within the system that wants to fly to Newark is placed in a holding pattern and therefore WIP, or the inventory of airplanes in the air, is going up and it starts getting crowded around the New York airspace. Some smart person has, at some point in the past, decided to put a limit on the amount of airplanes that are allowed to fly around, within the New York airspace. Once that limit is reached, no other plane is allowed to take off from any airport to go towards New York.

I call that the WIP cap and that is what makes the air traffic control system a pull system. In a pull system, once the WIP cap is reached, another entity is only allowed to enter, if another entity leaves the system, so that there is constant WIP.

Let’s summarize: A push system is driven by start dates; a pull system is controlled internally by way of a WIP cap. (That also makes clear, that babies will always be pushed into the world)

Back to the Autobahn. Back in the 60s when there was no traffic radio or iphone traffic information, the Autobahn was a pure push system. Later, all these traffic reports were introduced and we control a little bit better, but not much, when cars will enter traffic. I we were able to enter the era of pure pull in automobile traffic, everybody wanting to travel, would receive a spot at which time enter the road. In the perfect world you would stay at home until your ticket is called and then you would enter the Autobahn at the same utilization (amount of cars per kilometer) as always. (btw… if we are able to extend the air traffic systems so that you get a call when to go to the airport, we could avoid the piles of passengers at airports when there are flight delays).

All of the above is very desirable and people are working hard to make this a reality sometime. To switch a production line from push to pul is far more easy, but it still doesn’t happen much. Why is that?
In my mind it is because we do not point out the inefficiencies resulting from push with a scientific method like Little’s Law, the VUT equation (by Factory Physics) or a value stream map. We just look at the perceived cost of having a work station down. There are other reasons to not release a new job onto the system (e.g.waste of overproduction) and when WIP piles up downstream, it is certainly not smart to keep introducing raw materials to the process upstream. But there is always someone shouting that the lines must be utilized as much as possible.

We have to prove these people wrong!

Friday, June 1, 2012

Planning Strategy 81... My favorite

Planning strategies represent the interface between demand and supply and are set in the material master's MRP3 screen in the field strategy group.

It's called the strategy group because it actually allows you to set a group of strategies which contains one main strategy and possible alternative strategies, which the sales rep might want to use instead of the main.

Strategy 81 belongs to the family of assembly strategies. These have a tight connection between the sales order and the supply element. In fact the assembly strategies create the respective supply element right out of the sales order and perform an availability check - not on the finished product, which is not available at this time, but - on the components necessary to assemble or finish up the final product. Hence this is an 'assemble to order' or 'finish to order' strategy.

Strategy 82 creates a production order (or process order if you use PP-PI) and strategy 81 creates a planned order out of the sales order. That makes it a great instrument, if you are using the tools of repetitive manufacturing! (yes I know... I can see some of you going "here he goes again... promoting REM")

So... :-) if you are a manufacturer of standard products and you make those products repeatedly... why not automating things? Your planners will thank you. Here is what could be done with 81 and REM:

Let's assume you make toasters; small toaster, bagel toasters and industrial toasters. Small and bagel toasters you sell to Target and you produce them to forecast and keep stock. The industrial toasters are made to order. All toasters are made on the same line and there is no doubt that this represents repetitive manufacturing, is there?

So naturally you employ takt or rate based scheduling to fill the line with transaction LAS2. Here I suggest to use strategy 40 for the small and bagel toasters. That would mean you'd have a forecast which creates run schedules (planned orders) for a long time to come, which may be used to fill the production line to, let's say, 80%. Here is your leveled load!

If you set up strategy 81 for the industrial toaster, which is MTO, every time a sales order is created, SAP generates a planned order (run schedule) and performs an availability check for all the components needed to make an industrial toaster. According to that availability, a committment date is determined for the customer and, if you fix the date, the assembly order is placed on the schedule - on that date within 20% of open capacity.

Should the production date change, the sales order will now be updated and vice versa.

Isn't this magic? Not really... Its just SAP...

Drum, Buffer, Rope... and other scheduling systems

Very recently I was asked how to do 'Drum, Buffer, Rope' in SAP. The person asking was interested on how to work with constraints; mainly the bottleneck work center. There are many theories out there and each one has their on scheduling heuristics. 'Lean' has heijunka, 'agile' has FIFO and the 'Theory of Constraints' has Drum, Buffer, Rope (DBR). They may all be used interchangeably and SAP has them all pre-configured. You just have to know where to find them.

Heijunka is a leveling, sequencing and scheduling method, which can be employed when using the tools of repetitive manufacturing. There is a strategy profile which is called Heijunka.

As you can see, there is also a strategy called FIFO in the scquencing board. 

These strategies are not limited to repetitive manufacturing. They can also be used with discrete orders which are scheduled, capacity leveled and sequenced in CM25 - the graphical planning table.

Drum, Buffer, Rope is a similar thing in that it is employing algorithms in order to come up with a paced production program in a certain sequence, and it is based on the Theory of Constraints. This theory is concerned with running the bottleneck work center and the following gives a bit of an explanation on how this could be achieved. 

Managing the constraint is mostly about managing the non-bottleneck systems and making them “aware” how fast they should work — when they should slow down, when they should stop, or when they should increase pace and by how much. The Drum-Buffer-Rope system allows for such a systems-wide awareness.
The Drum is the bottleneck or constraint and acts as a drum — it sets the rhythm that the whole system should follow. In Lean Manufacturing, this is also called “Takt Time.”

The Buffer. There are situations when when upstream processes can’t produce as much as is needed by the bottleneck; the result is that the constraint is starved and the overall system output is compromised. So, we must have a buffer of inventory that is the size of the accounted-for variation in demand. This will help to level-out variation. A buffer will assure that the constraint never has to wait and, waiting is a form of waste. Similarly, if upstream processes are producing more than the constraint has the capacity to handle, then there’s going to be excess inventory sitting in front of the constraint and, hence, another form of waste. Put another way, the buffer is the inventory and inventory is directly related to lead time (remember my blog about Little's Law?)

DBR is used to avoid either of these scenarios — the Feast or the Famine — by dictating the batch size and frequency of the inputs into the Buffer.
The Rope is a method by which the constraint can signal to the upstream processes (non-bottleneck processes) when to slow down, when to stop, or when to produce faster. This is called “Pull Scheduling” in Lean Manufacturing terms.

so in SAP terms one could say that we schedule the bottleneck (drum) with a takt-based method like heijunka or FIFO in MF50 or LAS2. The buffer may be a consumption based replenishment method like a reorder point or material forecast method, an external forecast on component level or a kanban control cycle. In the end the buffer inventory in front of the bottleneck needs to be designed exogenous to the DBR system. The rope then is some sort of a pull system that may come from another kanban, conWIP or a range of cover profile.

There are many ways on how to design a production line so that it follows a Drum, Buffer, Rope philosophy... the point is: you can do it with standard SAP-ERP.