Scheduling of jobs through a factory is an indispensable part of managing a production facility, yet it is typically the last module of any ERP system that is implemented. The reason why this is true may surprise you, although it’s really not at all surprising. Basically, even though everyone understands the concept of scheduling, applying this concept in a production environment is very difficult. There are all kinds of reasons for this, but perhaps the most important is that people don’t understand what a scheduling module is supposed to do. There are the usual problems: suppliers don’t deliver on time, customers change their delivery dates, excess scrap, and so forth; but I have seen over time that many people do not have a good understanding of job scheduling. Of course, this knowledge will not automatically transform your shop floor into a model of efficiency, but it will at least give you the information you need to make informed decisions.

## What is Job Scheduling and what is it supposed to do?

Job Scheduling is the process of breaking down a work order into its individual operations and assigning each operation a theoretical start and completion time. Typically, this is done by starting with the promised shipment date to the customer and working backwards to determine when the first operation needs to start, commonly known as Backward scheduling. All ERP software will do this, as well as its opposite of Forward scheduling. But there is one major problem, namely that each work order is scheduled as if it is the only one in the shop. Of course, this is never true, which brings us to our next topic of Capacity Management.

## What is Capacity Management and why is it important?

The APICS dictionary has an excellent definition of capacity management:

“The Function of Establishing, Measuring, and Adjusting Limits or Levels of Capacity. It is the Process of Determining How Much Labor and Machine Resources are Required to Accomplish the Tasks of Production. Open and Planned Orders are Translated into their Hours Demanded at each Work Center.”

Basically, this says two things: 1) how many production hours do we have, and 2) how many widgets do we need to produce? The first sentence addresses the actual definition of capacity, which is the availability of production resources (usually labor and machine hours). The remaining sentences are the definition of Load, which is the demand on the available capacity (supply). The process of work order scheduling creates the Load on the work centers. So therefore, the objective is to bring the demand for work center capacity in under the availability of that capacity.

If it were that easy most ERP consultants would be unemployed. The first thing we need to address is how capacity is determined. There is a Theoretical Capacity, which is basically the number of resources times the number of hours the resource is available, and a Calculated capacity that starts with that number and includes allowances for efficiency and utilization. Too many companies use the second measure without regard to the accuracy of these allowances (nobody uses the first measure unless they are overly optimistic). A better measure is the Demonstrated capacity, which is how much you have actually been able to produce (on average) over a period of time. Don’t take your best performance, use an average of several weeks (or months) in order to determine how much you can actually do.

The second step is to now schedule the open orders into that capacity, which we can do in two ways: 1) “infinite” capacity, or 2) “finite” capacity. We looked at infinite scheduling above, this is what MRP does when it schedules a planned order, and is also the default technique when scheduling a job / work order. This technique is used to answer the second question posed above in capacity management, namely “how much do we need?” Infinite scheduling will tell us how many labor and machine hours we need to meet the ship schedule, without regard as to whether these hours are actually available. This usually leads to overloaded work centers, but is valuable information in that it points to where we need more capacity. It is now up to management to adjust capacity as needed in order to satisfy this demand, if possible. However, you will not use infinite scheduling to load your shop floor, at least not in the near term.

Finite scheduling takes each operation in a work order and “inserts” the operation into an open block of time on a resource. This assures that the resource will not be overloaded, but it does not assure that the scheduled ship dates will be met. If there is no available time on a resource to perform an operation then Finite scheduling will push this operation out into the future until a block of time is found. If we used Infinite scheduling to determine overall capacity requirements and adjust capacity accordingly then this situation should not occur, but it’s inevitable that it will. Material shortages, machine breakdowns, and worker absences will require changes to the manufacturing plan. Finite scheduling will tell you when you can ship an order based on the available capacity and the other orders in the shop.

## OK, so what do we need to make this happen?

Three pieces of information are critical in effective shop floor scheduling:

- Accurate due dates on work orders. The due date should be an honest estimate of when the order can ship, not a wish or promise that can’t be kept. Releasing a job to the floor to ship next week, when the normal lead time is 6 weeks, will result in other jobs pushed out of the way and becoming later than they already are with no guarantee that this job will ship on time anyway.
- Accurate job routings and operation times. This is critical for finite scheduling but also very important for infinite scheduling. Providing adequate capacity is extremely difficult if you don’t know how much you really need.
- A valid manufacturing plan. Whether you are using a ship schedule, a master production schedule, or some combination of the two, it is important that the plan includes the correct parts in the correct quantities. Building larger lots to reduce setup costs and building safety stock to keep machines busy will reduce the capacity available for shipments.

So which technique, finite or infinite, is best? Actually, you need to do both finite and infinite scheduling for the reasons listed above. We will address both of these techniques in later publications.

To know more, check out Scheduling at Tomerlin-ERP Job Scheduling or call 818-887-9162.