Emilia Dunaj
Emilia Dunaj
Head of Technology Insights
April 2024, 11 min. read

Advanced custom product configurator software merges intuitive design with precise mathematics to create a powerful configuration engine. Unlike simple box tools, which look nice but lack depth, advanced product configuration goes deeper, accommodating unique customer needs with complex logic.

But how does a configurator determine if certain combinations are possible? It all comes down to carefully crafted rules, dependencies, and constraints. These rules are the invisible logic that ensures every choice made in the configurator leads to a viable, efficiently manufactured product.

Theoretically, any product can be configured if the rules are deterministic and crafted using a programming language. However, this often leads to thousands of intricate configuration commands. To manage this, we introduce various models in our configuration engines, simplifying and streamlining configurator operations.

In this read, we’ll explore the essential steps in building these crucial rules and constraints, guiding you toward creating a configurator that’s technically sound, user-friendly, and scalable.

What are product constraints and dependencies?

building process configuration engine
Image Source

A product configuration model, to deliver precise outcomes, must be fueled by current product data along with well-defined constraints and dependencies. These elements are the ‘if this, then that’ of product configuration. They guide the user through a logical process, making sure that the final product is tailored to their needs and operationally sound. 

But what exactly are these terms?

Constraints are the rules that limit the options available to a customer. For instance, if you’re configuring a custom laptop, a constraint might be that certain processors are only compatible with specific motherboards. These limitations ensure that every product customization is technically sound.

Dependencies, on the other hand, refer to when one choice in product customization requires another. Using the same laptop configuration example, selecting a high-performance graphics card might need a more powerful power supply. Dependencies ensure that each component in the product configuration works harmoniously with the others.

Choosing the ideal configuration engines for your configurator

Product configuration is a complex process. The choice of the right product configuration rules engine is critical to its success. Let’s break down the different types of configuration engines available and their unique capabilities:

  • Scripting engines use a simplified programming model, allowing clients to create configuration rules directly in user-friendly language. While they offer extensive customization options, they require a deep understanding of logical processes to program effective rules. As more rules are added, maintaining the structure becomes challenging. In this case, businesses need to take a holistic approach to designing the rules to see the big picture.
  • Database engines operate based on a data structure. This means there’s no need to write complex rules and exclusions. Instead, specialists organize your database in a specific way. These engines are limited to a few rule types but, in many cases, cover all configuration needs. Changes, like adding new simple dependencies, are easily managed with spreadsheet-imported data, making them easier to onboard and understand. On the downside, it requires managing big amounts of datasets, which requires extra resources.
  • Physics engines boost the realism and accuracy of product models, which is key since 65% of people learn best visually. These engines make virtual products look and feel more like their real-world counterparts. They incorporate the laws of physics into the configuration process, handling aspects like collision detection and spatial constraints. Their role is to ensure that configurations created by users are realistic and can actually be implemented in the real world. However, the requirement for detailed 3D models or dimensional data can increase your project costs.

Each of these engines can operate independently or in combination, depending on the complexity and nature of your product configuration. When deciding which to employ, you need to consider data volume, required customization level, ease of use, and your budget.

Evaluating universal rules engines: pros and cons

In theory, script-based configurators can describe almost any configuration. The real goal, however, isn’t finding a universal solution but finding the optimal engine tailored to the specific needs of your business, balancing time and maintenance costs.

While boxed configurators are often seen as adaptable solutions, their ‘one-size-fits-all’ approach can be limiting. They might work great for standard products with few configuration parameters, but for complex, unique, or highly specialized configurations, their lack of depth becomes evident. 

Moreover, the ease of management and cost-effectiveness of these universal solutions can be misleading. While they are less time-consuming to manage upfront, they may not always provide the most cost-efficient solution in the long run. That’s especially relevant for businesses with complex and evolving product lines.

These issues highlight the importance of selecting a configuration engine that aligns with your specific product complexity and business model.

pros and cons explanation of rules engine

Building custom product configuration rules step-by-step

Creating tailored product configuration rules and dependencies involves a series of strategic steps. It also needs a strong collaboration between software developers and skilled technicians with deep domain knowledge. 

Now, let’s break down these steps to understand how they come together in the rule-building process.

Step 1 | Setting up rule hierarchy

The key to building effective product configuration rules and principles lies in analytical thinking. It’s essential to start with a mindset focused on how different rules will apply at various stages of the step-by-step configuration process. This approach involves categorizing rules based on their application and scope, ensuring they align systematically with the configuration workflow.

First, you need to consider the global rules. These are overarching guidelines that provide a holistic view of the product configuration. For instance, in a software configurator, a global rule could be the compatibility of the operating system with the hardware. Such rules apply universally, regardless of the specific choices made later in the configuration. 

Then, there are rules addressing correlations between the elements. These are local dependencies that dictate the relationship between specific product components. For example, a rule might determine which antivirus programs are compatible with certain operating systems. 

This level of specificity is essential for avoiding conflicts and ensuring that each configuration step builds logically on the previous ones. 

Lastly, there’s the right timing for each rule. Some rules might be necessary at the end of the configuration process for a final check. Meanwhile, others are applied step-by-step, guiding the user through each selection. This structured approach makes the configuration process smoother and more intuitive for the user. And let’s not forget that all rules must adhere to industry norms and standards.

Step 2 | Data collection and structure organization

In this step, your team needs to gather data and prepare the structure for the configurator. This involves collecting detailed information about every aspect of the product and understanding how each element interacts within the configuration process. The data needs to be organized in a way that aligns with the established rule hierarchy. 

In a heat pump configurator, for example, this means gathering detailed information on each model’s heating capacity, energy efficiency ratings, compatibility with different building types, and climate suitability. 

This process often involves collaboration with different teams in areas such as sales, product development, and marketing. Their input ensures the data accurately reflects real-world use and customer expectations.

In some industries, it’s necessary to purchase specialized data for advanced calculations or detailed product performance analysis. This additional information is often crucial to enhance the configurator’s precision and tailor it to specific requirements.

Step 3 | Crafting the configuration logic

Once the data is structured and organized, the next step is to identify the configuration logic. The teams determine the ‘rules of engagement’ for how different options within the configurator interact and influence each other. 

A key aspect of this step is understanding the interdependencies between different product features and components. For instance, in a car configurator, if a customer selects a high-performance engine, the configurator’s logic should automatically suggest compatible transmission options and exclude those that are not suitable. This feature simplifies the user’s decision-making process and ensures that every configuration is viable and efficient.

Additionally, this stage involves setting up conditions and triggers within the configurator. These are the behind-the-scenes mechanics that ensure the configurator operates logically and accurately. For example, selecting a certain feature might trigger the configurator to offer additional customizations or accessories that complement that feature.

Step 4 | Refining configuration rules

In this phase, the development team takes a step back and reassesses the configuration rules they’ve set. Perhaps some rules can be generalized or need more detail. It’s also important to determine if these rules apply always or only in certain cases or modes of operation with the configurator.

For instance, a configurator for your internal staff might offer more rules and functionalities suited to experienced users. Meanwhile, a mode for external users could show fewer, simplified options. This distinction ensures that the configurator is user-friendly for all levels of expertise and needs.

Another aspect to consider during this phase is whether a selection requires a suggestion or a warning. If a user seems to make an unusual choice, the configurator might flag it. For instance, if users select components that are rarely combined in a typical setup, the configurator prompts a warning or suggestion. This guides them to more standard options or requires confirmation of their unconventional choice.

Step 5 | Organizing and documenting complexities

Good documentation makes life easier for everyone, from the team updating the system to new members trying to get the hang of it. This is why the development team needs to craft a roadmap detailing how the rules and dependencies within the configurator function and interconnect. This documentation should describe all complexities and the evolving nature of these rules.

It can take various forms, from detailed changelogs, to task descriptions in project management tools, or annotated explanations in the code itself. 

By effectively documenting and organizing its complexities, the configurator stays current and becomes scalable, evolving effortlessly alongside your configurable products. This ensures an easy transfer of knowledge and efficient management in the future.

Step 6 | Thorough testing and fine-tuning

The final phase in setting up your configurator is testing. It’s where the team puts the configurator through its paces to ensure that all rules and exceptions work as intended. 

The testing checks if the rules work and their impact in real situations. It lets you catch any conflicts or configuration issues early on, preventing headaches later.

For effective testing, it’s smart to have separate environments: one for testing and another for the actual live configurator. Focusing on smaller changes first, like individual rules, makes it easier to spot where a single change might cause a problem. Once the smaller tests are successful, the testers can move to the big picture–holistic tests that check the entire system. 

Through rigorous testing, the development team can refine the configurator to meet technical specifications. At the same time, they ensure it delivers a satisfying and seamless experience for the intended user group. This step is critical in launching a configurator that is reliable, efficient, and aligned with the end customer’s expectations.

The crucial role of PIM systems in configurators

Every type of configurator, regardless of its presentation or function, requires a highly accurate product database. Without it, delivering sensible results is nearly impossible. This is where a Product Information Management system, or PIM system, becomes invaluable. 

the role of PIM system in  Product Configurator

PIMs are platforms designed as knowledge management hubs for all your product data. They streamline the collection, enrichment, and distribution of complex product-related information across various channels. This can include websites, online product catalogs, product configurators, and integrated business systems.

Before creating a custom product builder app, it’s important to first develop a system like PIM that provides structured data. This structured data is crucial for feeding information into the configurator app. PIM centralizes and structures the data, ensuring the data feeding into the configurator is accurate and up-to-date. This consistency in the product information significantly enhances the configurator’s efficiency and reliability.

This solution is especially beneficial for industries dealing with huge product ranges and intricate specifications. This can include automotive, HVAC, constructions, and many more highly specialized manufacturers. 

Conclusion

Building a successful product configuration engine is a complex process. It involves steps from establishing rule hierarchies to rigorous testing. Having a robust data management system, like PIM, is also essential. 

While there are many boxed solutions on the market, managing them can be challenging, especially without an analytical approach. Often, it turns out that businesses struggle to handle the complexity of the rules involved. 

Our role as technology and data modeling experts is to lay the groundwork for every project. We establish a fundamental set of rules and then collaborate closely with our clients to extract a complete set of rules from the minds of their domain experts. We translate their in-depth knowledge into a manageable and effective configurator.

Our focus is on making complex rules manageable and creating configurators that are technically sound and user-friendly, ensuring they serve your business and your customers efficiently.

Looking to build configuration apps for your complex product ranges? Get in touch today to find out what we offer.