Originally Published - October 8, 2007
The maximum output of many manufacturing operations is determined primarily by their market. The company can sell only a percentage of the products that the manufacturing plant can produce. Some manufacturing operations, however, have internal limits, or constraints, on production that are more restrictive than market forces, and more restrictive than the maximum capacity of the rest of the plant. This may be more common in industries that face seasonality or other types of lumpy demand, where demand peaks at a certain time of year or at a certain point in a business cycle.
It is for precisely these situations that the discipline of constraint-based scheduling (CBS) was developed. As a business discipline, CBS requires a viable definition of the constraint or problem that limits production, and the development of algorithms and methodologies to maximize production given the constraint in question.
Computer applications have long been employed by production schedulers, and the complex and mathematically driven nature of CBS means that software functionality is an almost essential tool to leverage CBS in a manufacturing plant or enterprise. Specifically, CBS is a tool for discrete manufacturers that need to manage bottlenecks in their capacity in order to maximize throughputs. Oftentimes, this constraint consists of a machine tool, a packaging machine, or some other piece of equipment that has a more limited throughput capacity than the rest of the plant. Sometimes a particular class of labor is limited in supply, forming a bottleneck in a manufacturing, engineering, or assembly process. Other constraints can be work centers or availability of materials.
CBS should be of interest not only to manufacturing professionals, but to sales and customer services executives as well. When taking a customer order, CBS can allow you to give that customer a very accurate delivery date, given your constraints. Honesty and the ability to keep your promises go a long way to ensuring customer satisfaction.
Who Needs CBS?
Any number of manufacturers may have one part of their operations that has less immediate capacity than the rest of the plant, and that could benefit from CBS. The natural question to ask is why these manufacturers don't expand capacity in that area. In most cases, it makes more fiscal sense to maximize the return on an existing investment in hard assets like machine tools, or in soft assets like personnel, than it does to make additional investments. A machine tool might cost millions of dollars and take months, if not years, to put in place. Additional soft resources, like design engineers, skilled machinists, or welders, may be expensive and require long lead times of their own. After all, in any organization, there may be a few individuals whose skills, due to long experience, are hard to duplicate.
Because people are obviously harder to duplicate than machine tools, it might not be possible to immediately hire someone who can turn around certain tasks as quickly or as accurately as those currently on staff. In the C-suite (C-level executives), decisions on capital expenditures and hiring need to be made based on the growth projections for the company rather than transitory capacity needs. This is why in many cases when resources within a plant become constraints, it makes more sense to aggressively manage the throughput than it does to increase capacity.
This means planners need to queue work accordingly to make sure a vital constrained resource is never starved. Moreover, work must be planned so that resources that come after the constrained resources in the value chain do not become overwhelmed. Through CBS, it is possible to not only maximize a constrained resource, but to reduce work-in-progress throughout a plant simply by maximizing plant capacity.
CBS does help a manufacturer get the biggest bang for each buck invested in constrained resources. If, after implementing CBS, a manufacturer gets to the point of overloading the constrained resource all over again, then it might make sense to expand capacity. But that is never the first choice, so really, any company with a constrained resource should seriously consider CBS. Some companies in the food industry should consider CBS for the simple reason that it can help them sequence parts or batches in order to produce products that have had no contact with allergens, including nuts.
Some companies, despite having constrained resources, need to hold off before implementing CBS. An enterprise application is only as good as the data it contains and the processes that it automates. If a company's processes and routings are not accurately reflected in its automated environment, and if information on tools, work centers, or laborers is not current or accurate, trying to engage CBS functionality could bring the entire company to a screeching halt. CBS requires correct routings that reflect steps in the right order, and good data on whether steps can be parallel or whether they need to be sequential. If your processes are not well-planned and if your data is incorrect, you will only automate the creation of a bad schedule.
The importance of proper and thorough planning prior to implementing CBS can not be overemphasized. One of the largest drawbacks to tools like CBS is that a lot of hard work is necessary to get the data input right. If a management team has not defined and locked in accurate routings in terms of operation sequence and operation overlap, and if it has not correctly identified resource constraints with accurate run and set-up times with a correct set-up matrix, what it winds up with is just a very bad finite schedule that the shop cannot produce. Tools like CBS should not be thought of as a "black box" solution, but rather as a tool that needs accurate inputs in order to produce a feasible schedule that can be understood by the user. A bad experience with CBS can convince a production department that they just don't understand this tool, and people typically do not use things they do not understand.
When managers admit they do not understand CBS, at least they have reached a point of conscious incompetence. There are, on the other hand, some managers who only think they understand CBS, and then they ask how they can overload a constraint. Unfortunately, even with CBS, a five-pound bag can still only hold five pounds. Constraints need to be managed and not overloaded. Otherwise, once again, you just get a bad schedule at the speed of light.
CBS and Enterprise Resource Planning
When it comes to CBS functionality within an enterprise resource planning (ERP) package, what we are really talking about is an online, integrated, in-memory scheduling engine. This engine will work in conjunction with shop order functionality resident in a software application and will handle finite scheduling. What is meant by finite scheduling is that CBS will do live planning taking into consideration present load and capacity. To accomplish this, a CBS module will use different optimizing methods like "least slack" and "as late as possible." Finite scheduling is distinguishable from infinite loading, which in fact allows you to exceed available capacity, while finite scheduling plans only within the constraints of available capacity.
When a shop order is created within the ERP package, a routing is used to create and plan the operations list. With infinite planning, operations are created and planned considering only the gross capacity available, and with no regard to existing orders. When an ERP package has been configured for CBS, it is routed to a CBS server which calculates start and finish times for the operations with consideration to existing orders and capacity. When the shop order is executed, CBS updates the information regarding operations and sends the results back to the server. (See figure 1).
Figure 1. Differences between finite and infinite scheduling (Source: IFS North America)
CBS-enabled applications can operate in a number of different modes. For instance, through predictive scheduling, the system can create an optimal schedule for a given set of orders, while through reactive scheduling it can be made to adjust a schedule as changes ensue without losing flexibility of that schedule. Through interactive scheduling, a CBS module can allow you to manually plan operations on a Gantt chart.
CBS functionality within an ERP solution also ought to work in a multiple-site environment. Let's say you need to calculate a delivery date based on a multisite, multilevel analysis of material as well as capacity throughout your whole supply chain. CBS should allow you to plan given all the sites in your supply chain and the actual work scheduled for each of those work centers. Manually or automatically, you should be able to schedule work and immediately give your customer a realistic idea of when the order will be completed.
In selecting a solution to deliver CBS, there are a number of system prerequisites that you need to look for. First of all, it is hard to deliver CBS entirely with a stand-alone system like a best-of-breed manufacturing execution system (MES). In fact, the more an enterprise application integrates various business disciplines, the more powerful it will be in terms of delivering CBS. This means that if an application suite offers functionality cobbled together from different products the manufacturer has purchased, it may be harder to use that suite to deliver good CBS functionality. This is because a number of business variables that reside in non-manufacturing functionality of a system can affect capacity.
For instance, an application might offer integration between CBS functionality and maintenance and enterprise asset management (EAM) functionality. Scheduled maintenance or other activities that affect capacity are reflected in CBS scheduling capabilities. An application offering strong CBS functionality will also allow for reduced capacity due to vacations and sick time logged by employees. So it is difficult, for obvious reasons, for CBS to be completely separate from other business functions that also affect capacity.
Moreover, for many companies, CBS may be desirable during times of peak demand, but become unnecessary at other times. Ideally, it should be simple to turn CBS on and off through a simple check box.
But This Is Just the Beginning
Apart from the immediately apparent capacity management benefits of CBS, there are a number of less obvious analytical capabilities. CBS functionality typically allows you to conduct predictive analyses of what would happen if certain changes are made to an optimized schedule. So if a plant manager is pressured by a particular account executive to prioritize an order on behalf of a customer, that plant manager can produce excellent data on how many other orders would be late as a result. Furthermore, CBS functionality can provide predictive analyses on the effect of added capacity in the plant. So before going out and purchasing that additional machine tool, it is possible to see if that will truly deliver an increase in capacity, or if it will simply result in a bottleneck further downstream in your manufacturing processes.
Like any piece of functionality within an enterprise application, CBS is a topic that could be the subject of a lifetime of learning. Using CBS within your enterprise does not require a doctoral degree, but it does require some homework on the scheduling functionality of your ERP tool. If you have stayed with us this far, you have already gained a pretty fair understanding of CBS. As you learn more about CBS, here are a few other acronyms are likely to encounter:
- CBS—you already know this one—constraint-based scheduling;
- EPST—earliest possible start time;
- LPST—latest possible start time;
- ASAP—as soon as possible;
- ALAP—as late as possible;
- FCFS—first come, first served;
- EDD—earliest due date;
- WIP—work in progress;
You can learn a lot more about CBS by attending training courses offered by professional groups like The Association for Operations Management (APICS), and by reading up on the topic. But for most manufacturing executives, the best time spent on CBS will be devoted to mastering the CBS functionality of an enterprise application used within the enterprise.
About the Author
Bill Leedale is responsible for knowledge transfer in North America for the manufacturing product suite within IFS Applications. He has over 20 years of experience in the manufacturing arena, from leading large-scale implementation projects to managing business process reengineering engagements for global companies. Leedale has developed new IT vision plans for large manufacturing companies using theory of constraints techniques to synchronize production flow. Leedale holds a BA in business and economics from Wittenberg University in Springfield, Ohio (US) and an MBA from Ohio State University, Columbus, Ohio (US). He is an active APICS member, and his certifications include Certified Fellow in Production and Inventory Management (CFPIM) and Certified in Integrated Resource Management (CIRM).