Planning, Scheduling and Execution

Abstract

In designing solutions to support Supply Chain Management (SCM) workflows, it is critical that we effectively and consistently differentiate between Planning, Scheduling and Execution. Failure to make the proper distinctions between these domains often leads to inefficient SCM solution and process design. Distinctions between them can appear somewhat arbitrary, and may even seem to vary from one environment to another. There are indeed similarities and overlaps, and yet there are also key differences. In environments where creating a good schedule from a plan is non-trivial, there is significant business benefit in positioning Scheduling as a separate planning domain: employing unique metrics, providing unique solution support capabilities, business processes, workflows and training, and integrating these appropriately with both Planning and Execution.

Introduction

In designing solutions to support Supply Chain Management (SCM) workflows, it is critical that we effectively and consistently differentiate between Planning, Scheduling and Execution. Failure to make the proper distinctions between these domains often leads to inefficient SCM solution and process design. Distinctions between them can appear somewhat arbitrary, and may even seem to vary from one environment to another. There are indeed similarities and overlaps, and yet there are also key differences.

Confusion comes from not properly understanding the unique purposes and functions of each domain, which results in [1] inappropriate KPIs and measurement practices, [2] not knowing how much and what kinds of detail to include in each domain’s solution space, [3] sub-optimally designed SCM solution support systems and planning processes, and [4] insufficiently and/or incorrectly trained staff. The result is much waste and inefficiency in supply chain performance.

The unique considerations inherent within each of these domains, and the complexity and variety of supply chains, implies that a one-size-fits-all supply chain design is simply inappropriate. Clearly understanding the similarities and differences between Planning, Scheduling and Execution enables us to design appropriate and effective SCM planning processes and solutions, and to train SCM professionals to leverage them effectively to create value.

Similarities

Planning, Scheduling, and Execution are three distinct SCM planning domains which are similar in that they each relate to [1] generating value by transforming raw materials (RM) into finished goods (FG) and/or services, and [2] planning for expected system dynamics as well as accounting for and adapting to some level of uncertainty. Planning is similar to Scheduling in that both domains involve a type of planning designed to help Execution know what to do and when to do it. Scheduling is similar to Execution in that both domains must consider the manufacturing environment in detail, both depend on the quality of the master plan, and both manage specific sequences of tasks on specific production resources. But this is the extent of their similarity.

Differentiation

Though Planning and Scheduling are similar, and though Scheduling and Execution are similar, in complex production environments they should be distinguished: designed for different purposes, measured uniquely, staffed with unique skill sets, and enabled with appropriate solution support capabilities considering different levels of detail over different time horizons. We may distinguish these three domains on several significant levels.

Process Horizon Frequency Time Buckets? Dependent on Key Metrics Output
Planning 2-60 mo. Weekly to Annually Yes N/A Service, Cost Bucketized plan
Scheduling 3-14 days Daily to weekly No Planning Plan compliance Task sequence by resource
Execution 1-3 days Shiftly to Daily No Scheduling Schedule compliance Production Actuals

Purpose

Building on the commonality inherent in the three domains, the ultimate purpose of any production activity is to achieve the goal of the enterprise, which is to create value (generally, to make a profit). In most supply chains, determining what activities to do and when and how to do them in a way that maximizes profit is an extremely complex endeavor; it is generally so complex that the problem must be decomposed and simplified into stages or domains to be solved. These domains are commonly called Planning, Scheduling and Execution.

The primary differences then between the Planning, Scheduling and Execution domains relate to the level of supply chain complexity and how the overall planning problem is decomposed so that it can be solved. The decomposition strategy implies a unique scope and dimension of the overall problem that is to be solved within each domain, as well as the types of constraints and factors addressed within each. This overall strategy also implies a progressive approach, refining the plan from one domain to the next so that the final objective is ultimately achieved: activities are completed which optimize value (profit) for the enterprise. Planning generates a less detailed, higher level plan over a longer horizon, Scheduling refines this plan and provides more detail over a shorter horizon, and then Execution manages the ultimate level of detail by trying to follow the schedule, considering an even shorter horizon.

In this general decomposition strategy, each planning domain has a unique purpose, being positioned and designed to resolve a particular portion of the overall planning problem. Planning relates to [1] defining tasks in specific time periods which are most likely to achieve corporate goals over a given horizon, and [2] positioning RM, FG and resources (machines and/or people) to support this plan. When plan quality varies significantly depending on how tasks are ordered on each resource, Scheduling involves translating the initial portion of a plan into resource-specific sequences designed to achieve these same corporate goals, a problem which is often extremely difficult to solve optimally. Execution is the ultimate activity of following a schedule, translating it as efficiently as possible into reality in the context of actual supply chain dynamics.

Metrics

Because of their unique purposes, each domain is evaluated with a unique set of metrics or KPIs (Key Performance Indicator). Plans are generally evaluated based on high level corporate KPIs such as forecast accuracy, target inventory level compliance (includes stockouts), lateness, earliness, resource utilization, production costs, and inventory holding and transportation costs. Schedules are generally evaluated based on a combination of compliance to plan, changeover cost, resource utilization and schedule feasibility. Execution is evaluated based on schedule compliance (hence, the schedule feasibility metric: it is very difficult to effectively measure execution if schedules are infeasible), yield/scrap and defect ratios (parts per million, or PPM), process reliability, safety, and COGS (Cost of Goods Sold).

Enforcing inappropriate metrics for any given domain is a significant source of waste, and this is often driven by incorrect SCM design and/or insufficient change management processes. For example, if Planning is working to minimize excess inventory and lateness, but Scheduling and Execution are still being driven by resource utilization and so deviate from the plan, corporate objectives will not be met as effectively. Understanding the purpose of each domain helps us design metrics which facilitate achieving the desired overall results.

Dependency

The unique purpose of each domain, and the interrelationships between the domains in the context of the overall planning problem, implies a different set of dependencies for each domain. Planning depends on a historical demand signal, an understanding of the historical and expected supply chain behavior, an expected level of supply chain volatility, and a reasonably accurate depiction of high-level supply chain constraints. Scheduling depends on the quality of the plan, a detailed, accurate representation of system constraints, and often requires detailed changeover data related to sequence optimization. Execution ultimately requires a schedule in some form: a specific sequence of tasks on specific production resources. When this activity is trivial it should be included as a pre-process step in Execution and not identified as a separate domain, in which case Execution depends directly on the quality of the plan. In more complex production environments, since schedule quality then depends on plan quality, Execution ultimately depends on the quality of both the plan and the schedule, and tries to operate as efficiently as possible in the context of all supply chain constraints and variability.

Importance

These dependencies imply a relative importance between the respective domains: schedule quality depends on plan quality, and in more complex environments the value generated by execution depends heavily on schedule quality. So, in general, it can be said: “A bad schedule based on a great plan is better than a great schedule based on a bad plan.” (Sanjiv Sidhu, i2 Technologies co-founder) In other words, scheduling and execution excellence cannot in itself efficiently drive corporate profit; an effective planning process is an essential prerequisite. It is at the planning level where forecasts are generated, materials and labor capacities are positioned, due date quotes are given, and where resource availability is planned. If we get the plan significantly wrong, there is little value in spending extensive effort optimizing schedules or executing precisely. However, if planning is done well, heuristic-based scheduling providing sub-optimal sequences is generally not too far from optimal, and execution should be able to stay largely on track to meet corporate objectives.

Frequency, Horizon and Time Granularity

The unique purpose of each domain also implies that the planning processes of each domain are performed with varying frequencies, over a different time horizons, and using time granularities. Planning is performed the least frequently, from daily to annually depending on scope, over the longest horizon, generally measured in months or years, where time periods are generally bucketized, often with a telescoping series of bucket sizes (e.g. daily, then weekly, then monthly). Scheduling is done as or more (never less) frequently than planning, over a shorter horizon measured in days (1-14), where time is not bucketized but considered more exactly, to the second, minute or hour. Execution is on-going whenever the production floor is active, considering the shortest horizon, typically covering shifts or days (1-3).

Capacity

The varying time granularities between these domains imply differences in the way that resource capacities are managed. In Planning, production resources are generally aggregated into workcenter groups with similar functions and capabilities and their capacities aggregated by time bucket. Planned resource downtime is aggregated within each time bucket and used to derive the available production capacity for each workcenter in each bucket. Scheduling generates task sequences on specific resources and must account for specific periods of planned downtime to determine realistic start and end times for each task. In Execution, resource capacities and downtimes may need to be adjusted from those planned in order to optimize the production process due to unexpected system dynamics.

Estimation

In Planning, production yield (or its inverse: scrap) and production run rates must be estimated to account for expected levels of process instability. Based on these estimates, Planning generally determines the amount and type of resource capacity and RM required in each time bucket to enable sufficient production, and should constrain the plan to account for system constraints and supply chain limitations, including procurement lead times and existing FG and RM inventory throughout the supply chain. Since exact sequences are not yet known in planning, when capacity lost to clean and configure production equipment between tasks varies based on sequence, the amount of capacity required in each time bucket needed for sequence dependent setup (SDS) requirements should be estimated and deducted from available production capacity, either through resource calendars or by diminishing production rates.

Due to the longer horizons often considered in Planning, in supply chains with high forecast error or many SKUs which can be grouped by common planning requirements, plans may be created above the SKU level, aggregating SKUs with common properties and estimating capacity and material requirements at an aggregated level to simplify planning requirements, reduce forecast error, and improve both performance and scalability. In such cases, SKU-level sub-plans may be generated over shorter horizons, based on actual customer orders or more accurate forecasts, which can then be fed to Scheduling.

Assumptions in Scheduling are minimal due to the need for feasibility, so detailed system constraints are represented as close as possible to reality. The amount of detail required in the scheduling process to ensure that schedules are executable, and the degree to which feasibility can be guaranteed, varies significantly based on constraint complexity and production process reliability. Task sequences are generated respecting RM availability and actual resource capacities, and realistic production rates are used.

In Execution, assumptions are often made about how best to deviate from the schedule when system dynamics prohibit following the schedule exactly. Using alternate resources or RM, adjusting planned maintenance, working overtime, and increasing and/or reducing task quantities are all means whereby execution may choose to adapt a given schedule to the actual production environment, so long as reasonable justification is provided.

Skill Sets and Solution Support Requirements

The purpose and scope differences between Planning, Scheduling and Execution imply significantly different skill sets and/or solution support requirements. In Planning, determining the required production tasks to maximize profit must consider historical and expected demand patterns, existing FG and work in process (WIP) inventory, and efficiently net these supplies from the anticipated demand stream before generating planned replenishment supplies. Safety stock levels must be examined considering historical variability, and replenishment supplies planned or excess inventory allocated as needed. Resource capacities may need to be balanced by moving tasks from one plant to another, one time bucket to another, and/or from one resource to another, or by adjusting the capacities of certain time buckets (editing availability calendars and/or adding or removing labor resources) in order to [1] avoid over/under-loading buckets (planning too many/few tasks in the bucket given the capacity available in that bucket), [2] maximize resource utilization, and/or [3] to optimize task lateness and/or earliness. In materially constrained supply chains with significant procurement lead times, RM requirements generally need to be determined by time bucket and the plan constrained to respect these limitations to ensure material feasibility. Highly advanced and automated solution support systems, such as JDA Sales and Operations Planning (S&OP), JDA Supply Chain Strategist (SCS), JDA Enterprise Supply Planning (ESP), and JDA Factory Planner (FP) are specifically designed to enable planners to efficiently and effectively generate high quality plans in numerous types of complex planning environments with minimal effort.

The skills required in Scheduling are significantly different and may be much more difficult than those required in either Planning or Execution. As noted above, where SDS requirements are insignificant and the production process is relatively linear, the scheduling process can be simple enough to be performed as a preprocess step during Execution with minimal automation and support. However, in more complex environments such as job shops and those with significant SDS requirements, intense effort is often expended to determine the task sequence on each resource which minimizes changeover cost without generating excessive earliness or lateness. In complex capacity-constrained multi-stage environments, schedules are often required simply to determine feasibility due to the complexity of task interdependencies between the stages. As in planning, advanced scheduling applications, such as JDA Sequencing and Optimal Scheduler, are specifically designed to enable schedulers to tackle these immensely difficult problems with minimal effort.

A completely different skill set is required in Execution, where production floor supervisors and operators stage input materials and configure production resources to follow the schedule as closely as possible. During this process, execution must often adjust the controllable variables of the production process (planned down time, machine and labor selection, raw material selection, etc.) as needed to account for and adapt to supply chain disruptions and dynamics as they arise: unplanned resource downtime or process inefficiency, unforeseen material shortages, etc. When disruptions occur beyond what is reasonable to expect, such that determining an alternate plan which achieves corporate goals is very difficult, Execution must often defer back to Planning and/or Scheduling processes to create new plans and/or schedules reflecting the current state of the supply chain. In addition to planning and scheduling support systems, manufacturing execution systems (MES), applications specifically designed to address the many types of transaction processing requirements inherent in a production environment, are generally in place to enable efficient execution of the schedule.

Boundaries

The inherent nature of Planning and Scheduling implies that there is no clear boundary between these two domains: by definition, they overlap such that the scheduling horizon is nearly always contained entirely within the planning horizon. The boundary would be found in the duration of the scheduling horizon, which is driven by the value perceived in having visibility to the evolving schedule pattern, and the stability of this pattern. If the schedule is changing significantly from one day to the next, longer scheduling horizons are likely less useful.

However, the boundary between Scheduling and Execution (or, in simple production environments, between Planning and Execution) is very distinct and important; it relates to the concept of a frozen schedule, within which the schedule should not be changed unless there is a significant supply chain disruption. The frozen schedule provides stability to efficiently stage materials and operator capacity, and to prepare (set up) equipment for production. Once a planner has frozen a given set of work orders, “released” them to the floor, meaning that execution can begin staging materials and preparing equipment to produce them, we have transitioned between Scheduling and Execution. Outside that frozen window (which should generally be as short as possible to enable agility while still providing the required stability) the planning and scheduling processes can adjust the plan/schedule based on supply chain dynamics, enabling a more agile supply chain. Inside this frozen window schedule changes are controlled by Execution so that production efficiency can be maintained.

Confusion and waste often comes from not properly understanding this boundary between Scheduling and Execution, insisting that planning and scheduling applications provide capabilities and visibility which inherently belong in the MES. For example, requiring that tasks within the frozen window, which are maintained and managed in the MES, be maintained very accurately within the planning/scheduling system is inconsistent with the purpose of the related domains. The fact that scheduling adjustments made within the frozen boundary are driven by Execution and managed in the MES, placing this type of detail within the scheduling application can add significant and unnecessary complexity to the design of the scheduling solution while providing very little (if any) value. It might impose the requirement of a near-real-time interface between the MES and the scheduling application, or the scheduler may feel the need to manually update the frozen schedule often within the scheduling application. This activity, whether manual or automated, tends to destabilize the scheduling process itself and makes the scheduling solution much more difficult to maintain and use.

The purpose of the Scheduling domain, which is to generate high-quality schedules from plans, implies that the scheduling app only needs data related to tasks on the frozen boundary: [1] When does the last frozen task on each resource complete? and [2] What setup does it require? This is the initial condition imposed on the scheduling solution, defining when each resource is available for planning and its setup state, which is required to plan any changeover needed. Planning and scheduling applications do not need visibility to the internal details of the frozen schedule. Though such visibility may comfort the scheduler, it is actually better for the scheduler to refer to the MES for this visibility rather than relying on the scheduling app since the MES is the app supporting the Execution domain.

Integration

As when defining domain boundaries, knowing the purpose of each domain helps to define the type of integration required between them. Naturally, both Planning and Scheduling must publish their results to the next domain in the SCM workflow, so this type of integration is clear, and it is also generally straightforward. Additionally, frozen tasks should be represented in Planning systems as scheduled receipts and incorporated into the planning workflow so that the planning process does not try to duplicate them.

Between Scheduling and Execution, an interface which updates the details of the frozen boundary within the scheduling application based on the current state of the MES is sufficient, but may be unnecessary. There is value in keeping systems simple, and in this case the schedulers may find that manually updating the frozen boundary as and when needed is quite reasonable, especially when execution is generally producing accurately to the schedule, in which case daily changes should be minimal.

The integration between Planning and Scheduling, being a function of their overlapping nature, can be daunting, more difficult to design correctly, and may vary widely among supply chain solutions. A typical integration is to delete and refresh the entire non-frozen demand signal in Scheduling based on the latest plan, which could be done daily or weekly depending on planning frequency. The frozen plan is fed from scheduling into the MES and then back into the planning process so that these anticipated supplies, along with any on hand supplies, can be netted out of the replenishment plan. In this way Scheduling gets the latest and greatest demand signal so that it can create the next portion of the frozen plan in the most optimal way for the enterprise.

The Planning – Scheduling integration varies by [1] how much of the Scheduling demand is refreshed from the Planning process within each planning run and [2] whether any RM replenishment requirements are driven by Scheduling. Determining the correct design should be driven by how significantly the schedule is expected to deviate from the plan, which is a function of how frequently the sequencing application is expected to pull/push tasks across the planning buckets and how far it is allowed to pull/push them. This dynamic is related to and depends on the significance of capacity constraints downstream of production (transportation and storage), the significance of SDS constraints, how capacity-constrained the supply chain is, inventory holding costs, and the stability of the demand signal within the most constraining procurement lead times. The more the schedule is allowed to deviate from the plan, the higher the inventory holding costs, and the more stable the demand signal, the longer the frozen period should be and the more the schedule should drive critical RM procurements.

When planning intermediate (non-FG) supplies, or when there are supply chain capacity constraints downstream of FG production, the Need Date in Scheduling should be the Planned Completion Date in planning and the scheduling process designed to more fully align with the plan, since the planning process accounts for downstream transportation lead times and both transportation and storage capacity constraints. However, when scheduling FG and there are no downstream supply chain capacity constraints, then setting the Scheduling Need Date to the actual forecast or customer due date provides more visibility and flexibility to the scheduling application to optimize the schedule and improve customer service.

Conclusion

Supply chains are ever evolving, and are generally becoming more and more complex. Designing and maintaining SCM business processes and systems to efficiently support corporate objectives requires an intelligent understanding of the differences and similarities between Planning, Scheduling and Execution. These three planning domains have some similarities but are fundamentally different. When systems and processes are implemented which effectively and intelligently decompose the overall supply chain planning problem into these domains, and when planning professionals are appropriately trained to leverage their respective solution support systems, significant and ongoing value can be obtained from SCM investments.