1. A system for configuring an artifact having variable features defined by a set of interrelated parameters, a range of consistent configurations for the artifact being defined by a configuration model describing the interrelationships between the parameters, the system comprising: a model translation module adapted to convert the configuration model into a constraint satisfaction problem, the constraint satisfaction problem being defined by a set of variables, wherein each variable may attain a finite number of different values, and a set of constraints restricting which variable values that are simultaneously possible for the variables in the set of variables; and a configuration engine adapted to: calculate a solution to the constraint satisfaction problem, the calculated solution being optimal with respect to a value assigned to each variable in the constraint satisfaction problem relative to a predefined optimizing criterion; and derive a set of optimal parameter values associated with the calculated solution, wherein the set of optimal parameter values can be used to configure the artifact.