When working with complex configuration its usually hard to separate visible input fields and variables from hidden rules and formulas. A product expert usually relies on experience when configuring a product, instead of strict rules and formulas. But when anyone should be able to use a product configurator the complexity needs to be greatly reduced, resulting in the requirement of a limited set of easy to understand input fields and a extensive set of hidden formulas that captures all the rules.
To separate rules from inputs the following question is the most critical to ask for every single input field:
Can we expect the client to know this?
question to ask for every configurator input
The client / user of a product configurator is today very rarely an expert. They usually know information that is related to their intended usage of a product like size limits, appearance, performance requirements, what problem to solve and what the max price can be. An expert on the other hand usually knows more about the internal workings of a product like detailed functionality and what is important for usability, security, high quality and longevity.
If we illustrate this with a product configurator for customized lifting tables the following list can illustrate the difference between what to expect from the client (user inputs) and what is expert knowledge (rules)
Lifting table inputs and rules
Client knowledge (user inputs) | Expert knowledge (rules) |
Size of table | Size of base (stability) |
Weight to be lifted | Force and power needed to lift weight |
Lift height | Max lift height in relation to base / weight |
Shape of object to be lifted | Reasonable shapes for lifting table |
Maximum price to spend | What drives price |
Rules are often hidden inside the experts experience and can be tricky to translate into rules and formulas. Our experience is that during the process of creating the rules it often surfaces conflicting rules and strategies within the same company and decisions need to be made on a consistent behavior for configuring a product.
With this we hope you will build better product configurators that are easy to use for everyone.