Back to Articles List   Back to Home Page

Various Approaches to Production Scheduling in Job Shops


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
  • 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 have to 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
  • Machine breakdowns
  • 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.

Different 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.

Vendors of scheduling software usually claim that their software implements finite capacity scheduling (FCS) logic. FCS simply means scheduling without violating capacity constraints, that is, without overloading work centers and resources. FCS is not a specific method or algorithm for scheduling and there is no literature on FCS or practically meaningful models for production scheduling to help developers of scheduling software. Therefore, they may be a lot of variation in FCS implementation among scheduling software. It is possible that FCS logic used in some scheduling software could be very weak and too narrow to be applicable to a variety of job shops. But, users never get a chance to take a close look at the underlying FCS logic due to the confidentiality of proprietary scheduling algorithms.

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 schedulers use project management (PM) tools for job shop 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 the simple DBR scheduling method may be quite expensive sometimes and it needs strategic thinking because such changes may result in excessive resource capacities. It is rational to keep production scheduling simple in complex systems but it is important to consider what expense we must incur to make it possible.

6. Scheduling by Lean Manufacturing Practices:

Toyota production system (TPS) evolved into an inspirational world class production system over decades due to continuous, dedicated efforts of Toyota personnel. Toyota adopted and developed many concepts, principles, practices, methods and a work culture that are very effective in manufacturing. However, some of the concepts and methods like heijunka, one piece flow, takt time and kanban-based production control are not much meaningful in job shops with simultaneous production of diverse, low-quantity jobs.

The kanban system developed by Toyota is quite powerful for controlling repetitive production. It can be viewed as a real-time production scheduling system. In repetitive production, it prevents starvation of bottleneck work centers and formation of large inventory at any work center by regulating the material flow through the production system. The kanban system absorbs uncertainty, natural variation and the differences in production rates at work centers but it is mostly effective when the demand is uniform and predictable. However, in job shops with unpredictable demand and diverse jobs that move through different sequences of work centers, no kanban system can provide the predictability of workflow, WIP, lead times, resource utilization patterns and job completion times. Such predictability is essential for capacity planning and production control in complex job shops with heterogeneous workload. Kanban system cannot offer what-if analysis of dynamic production as required by job shops. Also, with kanban system it is not easy to determine a right time for loading a job into the shop based the due date, quantity and routing of the job, the resource availability and current workload on the shop floor. Kanban control does not provide a comprehensive understanding of the dynamic nature of job shops. Similarly, heijunka scheduling of TPS is not relevant to job shops that simultaneously produce many low-quantity jobs with different due dates, priorities, routings, process times, and resource and material requirements.

Since Toyota demonstrated the power of heijunka scheduling and kanban control in the management of its repetitive production, there are many attempts to forcibly implement them for production scheduling and control in complex job shops with false confidence. In job shops with simultaneous production of diverse jobs, a kanban system will be quite cumbersome with little impact on throughput and on-time delivery performance. Quick response manufacturing (QRM) is another shop floor control approach that can also be viewed as real-time job shop scheduling. The POLCA method of QRM is more appropriate than kanban control to address the complexity associated with multiple job routings. However, POLCA also cannot provide the required what-if analysis and predictability as required by job shops.

7. Scheduling Algorithms:

Researchers contributed a lot of literature on job shop scheduling which is available in books and research journals. They developed good concepts and considered interesting objectives and constraints of job shop scheduling. The objectives deal with issues like WIP, production lead time, job lateness, etc. However, the scheduling models and algorithms developed by them are largely inappropriate to the actual scheduling problems of job shops. This is mostly because (1) the available mathematical techniques are insufficient to deal with practical scheduling problems, (2) many assumptions are made for reducing a problem to a level where it can be solved by a non-trivial method, and (3) development of simple methods (heuristics) for fairly good solutions to complex practical scheduling problems is not an exciting activity for researchers, (4) researchers have a natural tendency to take a complex, rigorous view of the problems. The powerful concepts developed by researchers are buried in mathematical treatment. These researchers can develop powerful and effective solutions to practical problems when they curb their urge to publish papers.

8. Finite Capacity Scheduling (FCS):

Finite capacity scheduling (FCS) tools are also available for job shop scheduling. Until recently, the main disadvantages of FCS are (1) the users need to fix numerous parameters of the tool, (2) the users find the tools quite cumbersome, unfriendly and less intuitive (3) the users need a lot of training on the tools, (4) the input data is either unavailable or erroneous and (5) the tools need a lot of computing power and time. However, these tools enormously improved and overcame the disadvantages over time due to rapid advancements in hardware and software. The Windows-based tools offer a lot of flexibility, convenience and context help to users. The high-speed personal computers greatly facilitate the use of FCS tools. When top management starts looking at the schedule output from these tools, the data quality and availability will gradually improve.

With the availability of powerful information systems and sophisticated shop floor data collection systems, job shops are able to track job status and make seemingly rational decisions in real time for meeting job due dates. FCS tools depend on the same systems to provide efficient production schedules and display the dynamic workflow and bottleneck formations over time. The implementation of FCS tools brings to job shops many benefits including fast workload rescheduling, prediction of future bottlenecks and job completion times, and efficient capacity planning. FCS also has some drawbacks. Every FCS tool works with a specific scheduling model. If a scheduling problem does not fit into the underlying paradigm, the FCS solution could be meaningless even if it appears to be very sophisticated. It may be impractical to implement on the shop floor the FCS solutions that are derived purely on the basis of hours available for each resource in each time interval (day, week, month, etc). Such schedules may not specify the sequence of jobs to be loaded at each work center. Two major points of criticism about FCS are lack of ability to deal with variation and detailed schedule output. FCS logic can be suitably modified to create time buffers (as in TOC methods) for jobs at some stages to absorb the effect of variation on the schedule. The schedule output can be considered at the required level of detail. The schedulers must use some commonsense and domain knowledge while implementing these powerful tools. They can use the tools interactively to get the best schedules..

Productivity Improvement in Job Shops:

Job shop productivity can be improved by the following three steps:

  • Identify improvement opportunities that are very likely to result in the increase of shop productivity
  • Improve the situation on the shop floor adopting lean manufacturing practices like 5S, SMED, kaizen, etc along with six sigma program.
  • Organize production operations of diverse jobs over time in an optimal manner.

The three steps can be simultaneously pursued by a job shop without any conflict. Scientific production scheduling based on an appropriate production model supports the third step while contributing to the first step to some extent. Production scheduling is as an important part of production management in complex job shops. But, many people do not seem to pay a serious attention to this important decision-making function. In simple words, this kind of production scheduling refers to determining job loading times and a chronological order of jobs to be done by each resource in a synchronous and rational manner subject to relevant constraints. It plays a central role in connecting demand, resource availability, material planning, finance and inventories. Its role is vital in job shops with high-mix, low-volume production.


Although researchers consider scheduling as one of the most challenging of all decision-making problems in production, the level of scheduling knowledge available in manufacturing industries is very poor. Practical aspects of scheduling is not formally taught at academia and the education on scheduling among industries is almost nonexistent. People are learning production scheduling by common sense, experience and software tools. The understanding of the dynamic nature of workflow on the shop floor and the perception of scheduling complexity are fairly low in job shops. A few organizations like Delta Dynamics Inc provide right education on the practical aspects of job shop scheduling. The most interesting aspect of production scheduling is that a scheduler can somehow ensure workflow by making real-time decisions with common sense (pushing each job from one work center to the next one based on work progress) or adopting any of the methods described above while the researchers consider job shop scheduling as highly complex. We do not know how far away each of the above-described approaches is from the unknown best. It is the simultaneous production of diverse jobs (with small quantities) using shared resources that makes job shop scheduling quite complex. With rapid advancements in information technology, FCS may have a better future for job shop scheduling if it can address the system variation also. We can find more and more FCS applications in job shops where jobs are tracked on the shop floor for better production control. Lean methodology should not mean only whatever Toyota production system practices. FCS can be a perfect addition to Lean tool kit for job shops. It can provide a comprehensive production control of complex job shops preventing the wild generalizations of kanban control.

Prasad Velaga, Ph.D. (Scheduling)
College Station, TX

(The author is thankful to Mr. Vincent Bozzone of Delta Dynamics Inc for his valuable suggestions.)

Back to Articles List   Back to Home Page


Copyright © 2018 Optisol