A New IT Architecture for the Supply Chain of Configurable Products

. Many ERP systems support configurable materials. Due to an ever increasing number of product variants the benefits of this approach are well understood. However, these implementations are not standardized. In this article we propose a new standard interface for the exchange of configuration data. This would lead to further benefits as systems as Advanced Planning systems could better use manufacturing flexibility while web shops as Amazon could easily integrate manufacturers of complex products with much reduced implementation effort.


Introduction
Great progress has been made in the coupling of ERP systems via EDI to exchange order and invoicing data.Further progress has been made by companies as Amazon to include other companies as a shop-in-shop concept.This helps both parties to increase their attractiveness to customers.However, all these approaches rely on simple products, articles that can be clearly identified by an article number / supplier combination.
The emergence of industry 4.0 however suggests an increasing share of unique and mass-customized products.These products in turn can only be sensible manufactured with a sort of configuration.An example is the automotive industry.The Volkswagen Golf is available in more than a million variants which clearly cannot be maintained in separate article numbers.Complex articles like cars were historically sold via an expensive dealer network.Alternatively, online configurators are hosted and run by the manufacturing companies.However, for importers without such sales channels it might be interesting to use existing channels as Amazon or any other online retailer.This however requires a technical interface to ease the implementation on manufacturing as well as retailer side.
Besides the actual product configuration often the manufacturing can be done in different ways (e.g.different production plants, different routings and different bills of material).Therefore, one might speak of manufacturing options.However, current ERP/MRP logic dictates that the decision on the "correct" routing and bill-of-material structure is made by a system that does not consider capacities and other advanced information as specialized planning systems do.The advanced planning systems in turn cannot change the plan derived earlier, thus resulting in a lack of flexibility and suboptimal results.If it were possible to consider manufacturing options in the same way as product configuration, and furthermore there would be a standard interface for this, than the manufacturing planning could use the additional degrees of freedom for a better logistical performance.

Literature survey
In this literature survey first the commercial importance of variant configuration is described.After that an overview of current IT architecture is given and lastly the link between configuration and manufacturing explained.
According to studies by Roland Berger approximately one third of the total sales price of a car is spent on sales and distribution [1].Another study highlights that already 10% of cars are sold online and 21% of the customers would like to buy their cars at independent vendors [2].These figures only consider a product which is quite expensive and emotionally charged; therefore, the results will look even more dramatic for other products.
A large number of works discusses the commercial impact of variants in the automotive industry [3], approaches to manage / reduce the complexity associated with variants [4] or to manage the manufacturing process [5].
Further patents and commercial products describe the implementation of configurable materials, however without talking about the integration of different systems.
Sabin and Weigel [6] as well as Trygegseth [7] describe production configuration languages.Further patents [8,9] describe specific configurators.SAP describes in its help [10] the setup of configurable materials (KMAT), while Confirado describes its own online configurator [11].The company Orisa produces a web configurator of which it claims to have a standard interface to one ERP system (SAP) [12].
Interviews with BMW, Confirando, myMuesli have confirmed the above finding that there is no industry standard to couple the web configurator to ERP systems.In many cases data was maintained redundantly in those systems, if an interface is used, it is individually programmed and certainly not "plug-and-play".In the case of BMW and Daimler one cannot even order via the web configurator, but has to print the configuration and ask a dealer for the entry in the order management system.
A number of papers highlight the importance and effect of especially routing flexibility in flexible manufacturing systems (FMS): Zammori [13] proposes a method to measure routing flexibility.Nomden [14] simulates the effects and comes to the conclusion that a limited flexibility in routing can improve overall waiting time by up to 40%.Different works give approaches on the scheduling of FMS [15,16].However, none of these works considers the problem of getting the actual data from an ERP in the first place.Therefore, to the best of our knowledge, no literature exists on how to actually get the routing flexibility from ERP or configuration software in order to utilize it for some manufacturing optimization.

Summary of literature
Many papers have been written about the benefits and application of product variants.
Still, there exists no standard on the exchange of configuration data between manufacturers and retailers.Interviews confirmed the desire to include additional sales channels like Amazon without huge integration projects.On the other hand, literature shows that even a slight increase in routing flexibility can improve logistics performance drastically.There is however a distinct lack of literature on how the manufacturing alternatives are modelled.We propose to use the same interface and model manufacturing alternatives in the same way as the product specification and therefore solve two problems at once.

Interface design
Before the interface of the product configuration is described the basic factors shall be explained and a simple reference implementation is given.Actual system implementations are encouraged to use a more sophisticated implementation, this just showcases one simple approach to the problem.

The basic model
On the manufacturing side, a product is specified by a number of options, which are either numeric (as e.g. the length of profiles or coils) or based on a list of options as e.g. the available engines for a car.Between those options, there might be restrictions that require or forbid certain combinations of options.The configured product then must be priced in terms of manufacturing cost as well as in the sales cost.Lastly there must be a short hand notation for a specific variant as shop floor systems rely on a unique ID for every (interchangeable) article.

ERP master data structures
A typical ERP contains already tables for articles, routings and bills of material (BOM).A simple implementation adds the following tables for the configuration:  Options with a unique ID, type (numerical or list) and description stored for each article.An example for an option is the engine of a car. OptionValues with a unique ID, description and list price stored for each record in the options table.Examples are the specific Diesel, Gasoline etc. engines of various displacement and power rating available for the car. OptionRestrictions which describes dependencies across multiple options.By means of an example: There is an article "C-class car".The options table contains a row "engine" while the option values table contains the different engines available for this car.The same applies to the transmission, air conditioning, navigation system and so on.Obviously one can choose only one value for every option.Sometimes there are restrictions across different options.In the optionsRestrictions table for each option value (e.g. a specific, powerful engine) forbidden other option values can be listed (e.g.insufficient gearboxes).Alternatively the same logic can be applied for required other options (no navigation system without corresponding steering wheel).By means of negation one notation can be transferred to the other.
The link to the manufacturing is twofold: First the routing and BOM tables contain an additional column for the ID of the specific option value.In this way one can select only those routing operations and BOM-positions which are required by the chosen options.Secondly, instead of numeric fields for the processing times and quantities formulas can be given like ceil($optionID=10$/2.5).The numerical value of the option with ID number 10 is inserted at runtime and used to calculate the actual demand.In this case metal sheets of 2.5 meters length are used, so the consumption can be calculated as the length that the customer wanted over 2.5 to get the total number of sheets.This number has to be rounded upwards.In the following parts we will describe the ERP services called by the web shop.

Service "getMaterialList"
This service lists all (sellable) articles with their description and a base price.This can be used by a retailer to offer the customer a first overview and is easily integrated into existing interfaces.

Service "getConfig"
When the end customer in a web shop clicks on an article, the shop queries this service with the articleID.This service in the ERP generates a JSON of all possible options and their potential values.This just reflects the master-detail relation of the corresponding database tables.The web shop itself can easily convert the JSON to a table of options with the corresponding drop-down fields.
There are two different approaches possible: a) the restrictions are included in the JSON-objects of the specific values or b) after every configuration step the service is called to calculate the possible selections.The first approach requires less communication.However, the second is much more flexible as it leaves the details of the restrictions to the ERP and allows a more sophisticated implementation.For this reason the latter possibility is pursued.To make things clearer an example is given.The shop queries the manufacturers API and gets a JSON-file like the following { articleID: "0815", description: "Hatchback car", listPrice: 25000€ options: [ { optionID: 7, optionName: "Engine", optionType: "List", optionvalues: [ { valueID: 9, valueName: "Diesel 2.0 l 140KW", status: "possible", priceSurcharge: 2500€ }, { valueID: 11, valueName: "Gasoline 1.6l 100KW", status: "possible", priceSurcharge: "0€" } ] ]} What differs to existing approaches is that the retailer does not need any advance knowledge on the number or type of options.Once an option is selected, the selection is sent via HTTP(s) to the ERP which in turn generates a new JSON which can be displayed.Depending on dependencies some options might be greyed out (status forbidden).Furthermore the total price, delivery times etc. and even pictures of the car may be returned by the ERP.All this would be much more difficult to accomplish if all the possible data was transferred at the beginning of the session.
Once the configuration is complete and saved, the ERP generates a product specification string (PSS).This describes in a shorthand notation the variant.A simple way is a comma-separated list of key-value pairs.Each pair describes the IDs of the chosen option and its value, separated by an equal-sign.If this list is sorted by the op-tionID the same, interchangeable variant will always be represented by the same PSS.

Service "getOrderForConfig"
This web service in the ERP takes the above described combination of article number and PSS to generate the production order.From the PSS the system can directly see the IDs of the chosen option values.Therefore it can easily skip all operations and BOM-positions which are not selected by the customer.In case of numerical options the actual processing times and quantities can be calculated by the stored formulas as described above.

Possible extensions
In the above chapter a system was described that allows retailers (web-shops) and manufacturers to be coupled without any advance knowledge of the exact structure of the configuration.A simple reference implementation was sketched; however, the actual systems are free to develop their own ideas as long as they keep to the described interface.This means specifically the way in which combinations of options are restricted and the generation of appealing product pictures.

Multi-vendor-comparison
The above solution generates for each vendor (and potentially article) a different form.It would be an improvement if multiple vendors could be searched for a single specification, e.g. a diesel-engined hatchback car costing no more than 30.000$.A company as "Check24" or "Autoscout" could search through new as well as used-carpools without the need to specify and map each vendor separately.This could be accomplished if the manufacturers (possibly by means of their associations) agreed on certain keywords.So the option "Motor" of one manufacturer and the option "engine" of another might both include the common keyword "engine".The same applies for the option values which can be standardized e.g. with "gasoline", "diesel", "displacement" or "Power rating (kw)".Therefore the option values would additionally contain a list of such key-value pairs, at least for the most common and relevant options.This is easily accomplished by additional tables which contain for each option value the corresponding standard keywords and their values.
In this way the web shop might offer a condensed form containing the typical options of the category "car" and a maximum list of all available option values.The same can be applied to numerical or textual options as e.g. the power rating or engine displacement.In these cases the customer enters a range and all configurations which fulfil the criteria can be found.

Alternative branches
The examples in this paper were focused on the automotive industry.However, it can easily be extended to any other branch with configurable, but pre-engineered items as furniture, electronics and so on.Another example could also be the capacity market of contract manufacturers.After all machines can be described by the process, tolerances, maximum dimensions of the part and the materials to be processed.All these factors can be seen as configuration options.As companies normally know the geometric and material properties of their products, they can easily translate this to a request for corresponding machinery.This way a manufacturing company could automatically request quotations from hitherto unknown contract manufacturers for the specific product it needs.

Production alternatives
The above described logic focused on options that describe the final outcome of the product.In the literature survey we have shown that a) many production systems have different ways how to manufacture a product b) that the usage of this flexibility can drastically improve logistical performance and c) that these possibilities are not widely used for the lack of a standardized data structure of the alternatives.However, the above described configuration logic can be used to provide exactly this data structure.Manufacturing alternatives as different routings or bills of material can be modelled in the same way as options and option values (e.g."Plant" and "A" or "B") and therefore use the same functionality of online configurators.These manufacturing options do not get part of the contract between supplier and customer, but can be chosen later in the manufacturing control department of the supplier.
In the easiest way the contract options are chosen by the customer, but before the actual order release the manufacturing control department finally selects a manufacturing option.Many modern advanced planning systems (APS) already know in advance the expected utilization of machines, staff and material shortages.They would communicate those bottlenecks ideally to the ERP in the form of artificial penalty costs per machine and material.An example might be a fixed price if the machine is overloaded.The ERP can easily sum up these penalties for all bill-of-material positions and routing operations per article and option value.Therefore the service "getConfig" can display the penalty costs of all given alternatives.In this way the production control can easily choose the best alternative to lighten the burden of already overloaded machines.This new balance is reflected in different penalty points so that for newly arrived orders again an optimal configuration can be chosen.

Conclusion and Outlook
In this paper we have specified an interface for the configuration of a product and the generation of the specific manufacturing order.Furthermore, we have given a very simple reference implementation that shows the potential of this standard interface:  Manufacturers can sell their complex, configurable products via third-party webshops as Amazon  Complex products of multiple vendors can be compared programmatically by means of a mapping provided by vendor associations  Manufacturers can model their production alternatives as options and use the same logic to increase their flexibility and logistical performance Future work should focus on building a demonstrator of the concept.Further conceptual work is needed to automate the negotiations between suppliers and customers by making different offers comparable.This is especially important when hitherto unknown relationships are found where no trust exists a priori.In this case letters of credit which guarantee the fulfillment of the contract might be a way forward.Another line of work could integrate the CAD/CAM world in order to change the corresponding drawings and CNC-programs.