Characteristic based product configurator

A characteristic-based product configurator is a product configurator extension which uses a set of discrete variables, called characteristics (or features), to define all possible product variations.

There are two characteristic types: The range of characteristic-value combinations is reduced by a variety of constraints that define which combinations can, cannot, and must occur alongside each other.

These constraints can be reflective of technological or commercial constraints in the real world.

The constraints can represent: The use of characteristics permits the user to abstract the finished product by describing filter conditions, which describe subsets of product variations using boolean functions on the characteristics: Using a characteristic-based configurator, it is possible to define a product variation in two ways: Some examples of applications where using a characteristics-based product configurator may be advantageous are: pCon.planner from EasternGraphics is an OFML-based complex product configurator used for interior design.

Example of a characteristic registry: the MET, TR and ST characteristics are binary and their values determine whether the product is metallic, transparent or deformable; while the COL and SH characteristics tell the specific value of color and shape.
Examples of constraints: on top, an incompatibility between the MET and TR features (the product can only be MET or TR but not MET and TR) and below, an implication between the ST and COL features (if the product is deformable then it must be red or green).
Example of a form that can be shown to a user of a characteristic based product configurator, and the related logical function obtained by the compilation of itself.
In each mask the characteristic set are grouped together with logical AND to create subfunctions. These are then joined together with logical OR obtaining the ending result.