Back to Home Page
Production Scheduling for Job Shops
|Scientific Management of Job Shop Production||Lean Production in Job Shops|
|Capacity Planning in Job Shops||Scheduling with Excel data|
A typical job shop is a high-mix, low-volume (HMLV) production unit that simultaneously processes several diverse, low-quantity jobs using shared resources. The jobs have different routings, due dates, priorities, quantities, and material and resource requirements. Nowadays, the increasing product customization is creating more job shop environment in manufacturing world. For example, Mazak now makes its complete line of CNC cutting tools to order and Dell quickly assembles computers to order. Make-to-order (MTO) and engineer-to-order (ETO) production systems, and repair (MRO) systems belong to the class of job shops by the complexity of their production. In general, a job shop is a production unit where order quantities are usually small; process requirements vary with customer order; processing starts for an order only after receiving the order from customer; and many work orders are simultaneously processed using shared resources. Even the resource and material requirements often vary with the order in job shops. By this description, most of the custom manufacturing units qualify as job shops. There are some production systems where each order is a project that involves numerous tasks with dependency relations and requires many finite capacity resources for performing the tasks. From production scheduling perspective, those systems are no less complex than HMLV shops and therefore, we include such systems also in our discussion. Although most of the job shops are relatively smaller in size and revenue, from production management viewpoint, they are more complex than a large repetitive production system. Many job shops with small capital also have a difficulty to maintain raw material inventories in order to achieve short order-to-delivery lead times. Some prominent features of job shops are:
It is difficult to predict (i) the time at which a customer will place an order, (ii) order due date (if fixed by customer), (iii) order quantity and (iv) process and material requirements of the order.
For a majority of customer orders, production starts only after receiving an order, that is, maintaining final goods inventory to meet future demand is uncommon. This usually happens in make-to-order, engineer-to-order, and assemble-to-order production systems.
Material acquisition process for a customer order may start only after receiving the order.
Using shared resources of finite capacity, a job shop simultaneously processes numerous jobs with different routings, quantities, due dates, priorities, and material and resource requirements.
Several jobs may wait in a queue for a resource at a work center.
Product mix and bottlenecks keep changing frequently over time.
Job Shop Complexity:
In any job shop, a job passes through a sequence of work centers as specified in its routing and it may wait for the required resources at those work centers. The total waiting time of the job in the entire process usually constitutes a major part of production lead time. This undesirable time is usually large, particularly for job shops with high-mix, low-volume production. It is not easy to measure the total job waiting time in such shops because (1) jobs with diverse routings are processed simultaneously, (2) the process time of an operation of a job may vary with both job and work center, (3) product mix keeps changing frequently and (4) resources have limited capacity. This complexity makes it difficult to accurately predict job progress on shop floor, WIP level at each work center, bottleneck formations, resource utilization, shop throughput and job completion times. The bottlenecks may keep moving across work centers due to the changing product mix. In job shops, it is not easy to do proactive capacity planning for preventing bottleneck formations and for improving the workflow, production lead times, on-time delivery and shop performance. Three main reasons for job shop complexity are (a) the unpredictability of the nature and receiving time of customer orders, (b) the loading of a job only after receiving a customer order and the required material, (c) and the simultaneous production of diverse, low-quantity jobs using shared resources of finite capacity.
Job shop production management involves (a) determining due dates and production start times for a stream of incoming customer orders with different routings on the basis of the existing workload and resource & material availability, (b) material planning for each order and (c) production scheduling. All the three functions are interdependent and they cannot be performed independent of one other. The difficulty in production management is aggravated by several factors including:
Changes in customer orders
Changes in job due dates and priorities
Delays in material supply
Rework / rejection due to poor quality
Acceptance of hot jobs for big margins.
Each of the above factors can cause an impact on workflow, bottlenecks, WIP, lead times, on-time delivery, utilization of critical resources and shop throughput. Many job shops fix due dates for customer orders, whenever allowed by the customers, based on some average lead times (for example, three weeks), irrespective of the existing situation. Similarly, they fix production start times based on due dates and average lead times. Small and mid-sized job shops that work with low capital and receive diverse, low-volume orders with poor predictability may not be able to maintain inventory of raw materials and finished goods for many parts. Quite often, material requisition is made only after accepting such an order and production starts only after receiving the material. Some HMLV job shops produce a few make-to-stock items and maintain their inventory to promptly meet some repetitive demand. Since material inventories have a significant impact on production cost in job shops, material for any job must be received just before the scheduled start time of the job. In fact, material requirements planning and the production schedule must be synchronized with each other. Resource-constrained production scheduling is necessary for controlling complex job shop production and predicting workflow, bottleneck formations and job completion times. The control of complex production is not effective without workflow prediction and what-if analysis of production.
Many job shops somehow manage their production by making quick, real-time decisions on the basis of experience, intuition, common sense and simple calculations and by pushing each job from one work center to another based on the job progress. If a job is getting delayed, then they may adopt firefighting to avoid late delivery. In the simultaneous production of diverse jobs using shared resources of finite capacity , the real-time decisions for scheduling heterogeneous workload on shop floor will have a domino effect on production and that effect cannot be easily predicted. The same is true for project-based production systems that involve numerous project tasks with dependency relations. It is not easy to fully comprehend the complexity of job shop scheduling as long as the production is somehow managed by real-time scheduling and firefighting without predicting the domino effect. Long, serious discussions take place in daily production meetings in response to the changing situation in the shop and managers regularly make bold, real-time decisions to resolve fresh problems without predicting the domino effect of such decisions. There is a scope for improving job shop production performance without any capacity enhancement when the heterogeneous workload is efficiently scheduled. Meaningful and systematic production scheduling takes into account demand stream, inventories, available resource capacities, material planning, existing workload and cash flow. Its role is vital in job shops with high-mix, low-volume production.
Various Approaches to Job Shop Scheduling:
Nowadays, many approaches like lean manufacturing, finite capacity scheduling, quick response manufacturing (QRM), CONWIP, the theory of constraints (TOC), etc are being adopted for production control and management. All these approaches provide a rough or detailed production schedule either in real time or in advance. The following is a brief discussion of a few production scheduling methods including the manual efforts.
1. Manual Scheduling:
Quite often, a schedulerís role is confined to tracking job progress on the shop floor and report it to management. There are several job shops where production scheduling is simplified by the following practice:
Due dates are fixed for customer orders on the basis of some average lead times (for example, three weeks), irrespective of the pending workload and resource availability.
Job loading time is based on material availability and a pre-determined production lead time. Some people make a few simple calculations for the workload at critical work centers and adjust job loading times accordingly
Each job is pushed from one work center to another following the completion of an operation and some dispatch rule is adopted at each work center for selecting jobs (for processing) from the corresponding waiting line.
When a job faces the risk of missing its due date, it will be expedited on high priority basis, utilizing overtime if necessary.
The job is delivered after all of its operations are completed.
Job shop production is manageable with this practice but it can lead to large WIP, long lead times, poor on-time delivery and frequent firefighting. The practice amounts to push scheduling, which lean manufacturing experts always discourage. While struggling to meet the due dates, they do extensive real-time scheduling, that is, firefighting without knowing the ripple effect of their real-time decisions on production plan. Most often, the firefighting breeds itself and stays in the shop for longer times. Firefighting could be a sign of chaos, poor planning and lack of comprehensive knowledge of the dynamic nature of a job shop. It can reduce the confidence of management and customer in the due date performance of the job shop. Job shops cannot easily improve their performance until the need for firefighting is minimized without sacrificing productivity. Manual scheduling is not efficient for complex job shops that simultaneously handle at any time numerous, diverse orders with different due dates. Scientific scheduling can bring a lot of improvement in throughput, on-time delivery and resource utilization of HMLV job shops.
2. Scheduling on Whiteboards and Excel Spreadsheets:
Many planners still use whiteboards for production scheduling purpose. This simple, manual method could be sufficient for some small production systems. But, it is very inconvenient and ineffective for scheduling numerous operations of diverse jobs on resources of finite capacity. It is also not helpful for quick rescheduling of the workload when the actual work flow significantly deviates from the whiteboard schedule. Many software vendors extended the whiteboard concept by offering an electronic version, which facilitates manual schedule construction and modifications on Gantt chart (on computer screen). Low-cost software tools that facilitate operational level production scheduling by simple drag-and-drop operations on computer screen will be far more beneficial than whiteboards for dynamic scheduling of job shops.
Excel spreadsheets are sought for production scheduling in job shops for many reasons including:
Almost all people familiar with personal computers can easily handle data in Excel spreadsheets
Data required for scheduling can be easily pulled into Excel spreadsheets from a majority of ERP / MRP packages
In Excel spreadsheets, it is easy to perform many operations on data like editing, reformatting and transformation
Programming in VBA is useful for advanced operations on Excel data
Some people have the perception that scheduling applications in Excel are cheaper and good enough for small job shops.
They are indeed good enough for small and simple job shop production systems. In spite of many such advantages, Excel applications have some major limitations for scheduling the production of complex job shops. Excel (plus VBA) cannot easily support a versatile scheduling paradigm and powerful logic to sufficiently address the scheduling complexity of many HMLV job shops, irrespective of the shop size. For example, Excel applications are not efficient to deal with (a) individual weekly calendars and calendar exceptions of resources, (b) changes in job priorities, (c) multiple resource requirements of operations, (d) fast and extensive what-if analysis, etc. They also lack powerful and use friendly graphic features and drag-and-drop functionality and offer little help in controlling manual errors in data entry. Although users can easily edit Excel files, the editing task is prone to human errors. As production size and complexity increase, Excel scheduling applications tend to become massive, cumbersome and inflexible. These applications are very slow to schedule hundreds of jobs in HMLV job shops.
However, most of these drawbacks can be avoided when a best-of-breed scheduling software can directly accept data from Excel spreadsheets. For example, the users of Optisol's scheduling software, Schedlyzer can benefit from the merits of Excel as well as the scheduling power of Schedlyzer because the software can accept input data from Excel spreadsheets in a meaningful format. A small add-in software component may be needed if Excel data is not available in the required format. For small job shops, there is no guarantee that pure Excel applications with sufficient scheduling capability have less cost of ownership (including implementation and training) than some best-of-breed scheduling tools like Schedlyzer.
3. Scheduling by Project Management Software Tools:
Production management of job shops resembles resource-constrained multi-project management in many respects. However, the major differences include:
In many job shops, the dependency relations among tasks of a job can be expressed by a task sequence whereas the description of task dependency relations in a project usually needs a directed network.
In a majority of job shops, a task can be started only after finishing all of its preceding tasks. The requirement of finishing every preceding task before the start of a task may not be necessary in project environment. However, the task cannot start unless all its preceding tasks have already started.
Tasks in job shops are less likely to be effort driven, that is, it may not be possible to reduce the duration of a job shop task by allocating more resources.
Tasks in projects have longer durations with more variation.
Projects are more likely to be affected by major uncertain events.
Many job shop schedulers use project management (PM) tools for production scheduling. For example, ETO manufacturers and shipyards use popular PM tools for scheduling heterogeneous workload. If jobs form queues while competing for resources of fnite capacity, the critical path method (a project scheduling method adopted by PM software) can generate meaningless production schedules and the schedulers helplessly accept them. A vast majority of PM packages are not satisfactory for resource-constrained scheduling of thousands of tasks because they are not efficient for automatically resolving resource conflicts. It is usually laborious to schedule and reschedule numerous jobs (with hundreds or thousands of operations) in a feasible manner when all resource conflicts in the schedule are to be manually resolved by drag-and-drop operations as required by the project management packages. These tools offer neither powerful, dependable and fast what-if analysis nor a capacity planning mechanism for production systems. However, the popular project management tools are excellent information systems with elegant graphic user interface that provides a very effective display of project / production schedules. Most of the project management tools are not powerful enough for resource-constrained, complex production scheduling involving thousands of tasks. Most of the users of such tools in production environment are unaware of the availability of powerful tools for resource-constrained scheduling.
4. Scheduling Modules of ERP Systems:
Today, manufacturing is witnessing a rapid progress in the implementation of sophisticated enterprise-wide, integrated information systems, which are known as enterprise resource planning (ERP) systems. Companies are able to handle all their information very easily and improve the efficiency of business operations with the help of these systems. The utility of ERP systems has further increased in manufacturing execution due to the integration of shop floor data collection systems with a central database. From a customer relations point of view, these systems enable the industries to promptly give their customers real-time job status. However, many ERP systems do not fully justify the term "resource planning" because they lack strong planning and intelligent decision support modules.
There are several ERP and shop management software packages that promise to eliminate all drawbacks of the above-described scheduling methods. The ERP scheduling modules are mostly better than whiteboards and Excel spreadsheets but still inappropriate or inefficient for complex job shops. Many ERP scheduling modules are currently used by job shops mainly because (1) they replaced the laborious manual scheduling and rescheduling that is done on whiteboards and in Excel spreadsheets, (2) there is no need to provide job information separately for planning and scheduling purpose and (3) the level of scheduling knowledge on the shop floor is poor.
The modules based on MRP scheduling logic are inappropriate for job shop scheduling. Many of them may often fail to give a feasible schedule automatically that satisfies all relevant constraints. Some of them predetermine (estimate) job queuing times at different work centers and use those times in schedule development. It is almost impossible to implement such modules on the shop floor. They perform infinite capacity scheduling and determine the necessary capacity requirements, which may not always be practicable. An electronic whiteboard may be available in those modules to repair an infeasible schedule by drag-and-drop operations. Some ERP scheduling modules generate an infeasible schedule with resource conflicts and export it to a project management tool requiring a scheduler to manually repair the schedule for hours by drag-and-drop operations on Gantt chart. This approach is very laborious to reschedule a large number of jobs and perform what-if analyses in response to significant changes in production. The modules that take a lot of execution time to generate a single feasible schedule are not efficient for quick and extensive what-if analysis. Interestingly, some job shops download the production data from ERP systems and schedule the production in an Excel spreadsheet or an MS Access application.
5. Scheduling by Theory of Constraints (TOC):
One of the simple methods suggested for production scheduling in complex job shop is Drum-Buffer-Rope (DBR) method of the theory of constraints (TOC). It was developed by Eli Goldratt in early 1980s when companies did not have sophisticated information systems, shop floor data collection mechanism, powerful and low-cost computers, and affordable scheduling tools. After working on the development of software tools for production scheduling, Goldratt experienced the difficulty of scheduling complex production systems in those unfavorable conditions and realized a need to simplify those complex systems such that the scheduling difficulty can be eliminated.
DBR scheduling method is based on a fundamental assumption that a production system has a single resource constraint and the other resources have sufficient capacity to fully support any feasible schedule on the constraint resource. If this assumption does not hold, then factory management is required to select a resource as the constraint and increase the capacity of other resources for ensuring the applicability of the simple DBR scheduling method. The constraint resource may change over time. DBR is quite simple to understand and practice and a scheduler can easily implement it using an Excel spreadsheet. From the execution point of view, DBR involves a procedure called buffer management that addresses the system variation.
The underlying assumption of DBR concerning a single constraint resource enables us to schedule jobs on the constraint resource (in the increasing order of due dates) ignoring the capacity of all non-constraint resources. Job loading times are determined in accordance with the schedule developed on the constraint resource, taking into account the effect of uncertainty in a crude manner. The basic idea is to keep the constraint resource busy always while controlling WIP in the system by releasing jobs at right times. DBR cannot be practically effective unless its underlying assumption holds. When the assumption does not hold, the job queues caused by finite capacity resources will adversely impact the buffer management in DBR. Changing a complex job shop to support the implementation of