The Background on PP/DS
PP/DS is a well known advanced planning application for production planning and scheduling offered by SAP which is part of the APO suite. SAP is the largest enterprise (i.e. corporate) software company in world with revenus close to $13 billion. The PP/DS product was introduced in roughly 1999, and I believe was based on i2 Technologies’ Factory Planner product, which was one of the benefits which SAP received from their partnership, albeit brief with i2 back in the late 1990s.
PP/DS provides both a cost optimizer (which is very rarely implemented), as well as both production planning as well as detailed scheduling heuristics. There are heuristics both for the initial planning run and for capacity leveling.
The Background on Simio
Simio is a relatively new company, but is made up of individuals with a great deal of experience in simulation, and that have worked for and developed significant intellectual property for some very well known simulation applications. Simio is one of the few simulation systems that provides an easy to use integrated development environment for 3D simulation, and is one of the few companies to provide 3D simulation for the production scheduling market. While Simio is a “simulation” environment, it is also a planning environment. Planning is essentially a simulation or prediction of the future. However, as I will discuss, there are several ways to interact with and gain information from Simio, using the 3D simulation view is just one of way.
As with most production planning and detailed scheduling applications, PP/DS works best in discrete manufacturing environments. Discrete manufacturing environments are the easiest to model. SAP sales is extremely effective at selling PP/DS into different manufacturing environments than this, but it is not successfully implemented outside of discrete manufacturing unless it is completely customized. Simio on the other hand has a much wider breath of industry implementation. However, Simio tends to focus on the most difficult production scheduling problems.
As I will describe in the probabilistic modeling section of this article, Simio is particularly designed for manufacturing environments which have a high degree of variability, which are the types of environments that have up until very recently not been addressed with packaged applications. Currently these environments are of course planned, but they tend to be planned with a great deal of manual effort in spreadsheets or with custom developed optimizers using off the shelf general optimizers like CPLEX. Easy to schedule production environments are not Simio’s target market (although it could be used for such environments). Simio’s prototypical customer is one which has very high scheduling complexity and for which there are strong penalties for being late.
PP/DS has two basic views. One is the Detailed Scheduling Board, which is your standard Gantt chart which represents resources, which can allow jobs to be moved around between resources. The second is the Product View which shows the movements in and out of products into a facility. PP/DS actually has more functionality than many companies implement, and one of the reason that PP/DS often is implemented with a small subset of its functionality is becuase of the shortage of views available in the application.
One of the things that strikes us about Simio is how many views it has. Simio’s “showcase” view is 3D modeling, however, there are many views in addition to this. The model building view also can be run at any time, so the modeler can see the flow of material as their are building the model.
Simio can be used in this 3D mode, or interacted with more in the way of a traditional advanced planning system. For instance, Simio also has a Gantt Chart but one which shows the probabilities or percentage likelihood with any outcome. Each job shows its end date, and then its need date, so that the scheduler can see how much lag of flex they have in the scheduled for that product. Simio has a resource view, which shows the sequence and length of time resources are being utilized.
One of the common needs on PP/DS projects is reports. The primary report available within PP/DS is the Alert Monitor. This is a listing of the areas of concern which the planner needs to address. The Alert Monitor was actually better back several releases ago. I wrote a paper about how to use the APO Alert Monitor as an adjunct reporting system back in 2003 for SAP Tips. However, the interface was changed at some point along the way, and I no longer use it in that capacity.
On all APO implementations, regardless of the module it is necessary to provide additional views. This is particularly true for aggregated or cross relationship views. This means typically working with SAP BI resources to develop the report design in some type of mockup application. I have used Excel for this several times, which I describe in this article. However, this is a time consuming process which I would prefer not to continually go through. Secondly, the reports take a great deal of time to build by the BI teams at ever projects I have been on. It is quite typical for the BI reports to lag the PP/DS go-live by at least six months. A final issue is that BI is an external system to APO and PP/DS. This means that there is a lag in the reports currency, so that the report is frequently be only reflect information up to the previous day.
Reports are a very strong area of Simio. There are pie charts for resource utilization as well as aggregated views of the probabilities of the planned production order.
PP/DS is often sold as a tool for performing constraint based planning. However, it is more accurate to say that PP/DS has the ability to perform constrain based planning, but this is only in effect if the cost optimizer is used. Quite a few companies have attempted to implement the cost optimizer in PP/DS but very few stay with it. It should be said that this is not a problem which is unique to PP/DS. Optimization in many applications has often run into problems in implementation.
In a forward looking industry like enterprise software for supply chain planning, there has been very little analysis into why this has been the case, and very little done to improve implementation methodologies or even slightly adjust strategies on new implementations. For this reason, most of the optimization projects repeat the exact same mistakes that I first observed on projects back in 1998. That period was my first exposure to optimization in packaged software, so there it is quite probable that the same mistakes have been made since optimization was first introduced in supply chain planning.
I have concluded after a good deal of analysis that a major reason for optimization failure has been the over-application of a single optimization objective function, namely cost optimization to every supply chain domain. This conclusion is documented in this article, which describes the many limitations in getting cost optimizers to work in production environments.
Since the vast majority of companies than implement PP/DS do not use the optimizer (they either use heuristics or no method, simply allowing planners to move jobs around manually to resources) PP/DS should actually be considered an unconstrained tool. However, PP/DS does have a very wide variety of heuristics, in fact there are over fifty, which are described in this article. The wide variety of heuristics, many directed just towards specific manufacturing environments (for instance, many of PP/DS’s heuristics are for repetitive manufacturing) is probably the strongest point for PP/DS. Most PP/DS projects result in the PP/DS consultant matching the combination of heuristics and their sequence to the particular requirements of the production process. However, heuristics are not a “great” approach to production planning. They provide decent results, they are fast to run, but they are frequently used because they are simple to implement. They do however provided a great deal more flexibility than MRP (if we compare them to the production planning heuristics, rather than the scheduling heuristics in PP/DS). To reiterate, the vast majority of PP/DS implementations do not use the cost optimizer and are not constrained. I run into clients that think they are performing constraint based planning when they are running the PP/DS heuristics, and this is not correct.
Simio uses optimization-simulation and is normally implemented with constraints. The data setup is relatively simple in Simio, and this enabled resources to be effectively updated, which is a common problem with all planning systems that rely upon resources.
The model setup in PP/DS is the most complex and time consuming of any production planning and scheduling tool that I have ever had exposure to. PP/DS projects require a minimum of one year to implement, and most PP/DS projects take longer than this, with the first go live not being a correct measurement of the project duration because few PP/DS projects attain very much planning buy-in until later roll outs. Some data that populates PP/DS is brought over “automatically” from SAP ERP using an SAP integration product named the CIF. However, as the next section describes, this is not at all as straightforward as it sounds. PP/DS also has data that does not exist in SAP ERP and is maintained in PP/DS. The main method of maintaining this data is with the MASSD transaction in SAP APO.
Simio has two major areas that requires setup. One is the data, such as the materials and BOMs.
The other is the actual model building.
PP/DS is really only is implemented on accounts that have implemented or are implementing SAP ERP. Therefore, PP/DS’s integration to SAP ERP is relevant, and its integration ease to other ERP systems can be considered irrelevant. PP/DS is connected to SAP ERP (as is rest of the APO suite) through SAP middleware called the CIF. I have been part of teams that built more reliable adapters between SAP and a best of breed application than the CIF, and which outperform the CIF in both performance and in reliability, and I have done so with standard integration languages and UNIX, combined with ABAP (the code required to extract data from SAP). Issues with long-term maintenance of the CIF can be understood from reading this article. Becuase of my exposure to not only custom built tools but to sophisticated middleware products like Informatica, the CIF has always left me nonplussed. I have written on several occasions of my concern for the extremely high maintenance that is required to run the CIF, and it is a level of maintenance that never seems to tail off as I think it should.
There are quite a few things to consider when comparing a standard packaged application like PP/DS and comparing it against something which is a modeling environment like Simio. Unfortunately, too many companies move directly to using a packaged application without considering the alternatives.