First Generation: Rules-Based
The first generation of configuration systems were built using
rules-based expert systems, such as DECs XCON. These systems took the first leap
forward by automating tedious manual processes, but were extremely difficult to maintain
owing to complex conditional structures that mixed configuration logic with data. There
was no notion of a product database since the data was built right into the rule
structure. If a new product component was added, then someone maintaining the solution
would have to find each place to insert the update into the nested rule structure.
In addition, the rules based systems are not able
to accommodate the modeling logic necessary for mission driven configuration and automated
output generation. They have proven to be both costly and difficult to maintain and
relatively unsophisticated.
Second Generation: Constraint-Based
Given the limitations of the rules-based first-generation systems, a
new approach evolved using resource constraints, which allowed companies to separate logic
from data. Second-generation systems model component data using object-oriented techniques
and configure those components using global constraints. Structurally, these
constraint-based systems were superior to their predecessors, nevertheless they still
provided only limited modeling capabilities for mission-driven configurations.
For example, constraint-based systems are adequate
for assembling a bike from an existing catalogue of components and assembling on-the-fly a
valid bicycle structure based on the components. However, if dealing with a professional
cyclist requiring a completely customized bike suited to his weight, height, to the road
surface and climatic conditions, then the constraint-based configurator would prove
inadequate. The configurator would be unable to compute the effect of variables such as
weight, speed and surface on road friction and drag coefficient and the consequent
structure of the bike for optimum performance.
In the absence of mission-driven modeling,
companies have attempted to develop in-house written models using third party languages.
These systems either operate as islands of information or the developer must construct
complex integration code between the two systems.
Third Generation: Parametric Configurators - Generative Technology
In response to the limitations of existing systems, a new generation of
technology has emerged that meets the functional demands of todays sales
configuration system users. Parametric configuration has full capacity to support
mission-driven configuration, interactive sales configuration and automated output
generation. Generative technology uses a single object-oriented language to represent the
full spectrum of configuration logic such as bi-directional component constraints and
connections, performance calculations, functional definitions, exception rules, geometric
modeling and product outputs.
Generative languages express a products true
"what, how and why" description. They use a high level of abstraction to
describe a products form, fit and function which results in extremely concise and
readable models. This streamlined approach makes application development straightforward
and keeps maintenance to a minimum. This robust configuration logic can configure products
based on inputs about how the product will be used and the environment in which it will be
used.
Generative systems also excel in their ability to
produce automated outputs. Reports, proposals, product visualizations, engineering
drawings, bills of material, assembly instructions, routings and other manufacturing
information can be automatically generate "on the fly".