Don't Code IT, Configure IT

Concepts


You will find a couple of key concepts embodied in the Configurant products:

Design and Run
With a sufficiently powerful run-time engine and a well designed specification mechanism, it is possible to specify the behavior of an application, publish this specification to the run-time environment, and execute the application immediately. In order for this concept to work, the run-time environment must be extremely sophisticated. It has to be flexible enough to handle configurations that are complex enough to describe truly useful business applications, and to that without sacrificing efficiency of execution. The specification mechanism, on the other hand, should mask this complexity from the designer, but not simplify things to the point that it is not possible to accomplish complex things. You will see how we accomplish this in the Product section.

"Component Programming"
This is the idea that you can "configure" complex logic using high-level building blocks, which we refer to as "components". There are two aspects to components: a design-time and a run-time aspect. At design-time, a component appears as a piece of configuration which describes the details of how a component should behave in the context of solving a particular problem. At run-time, a component is a piece of software that can adapt itself based on the design-time configuration.