A method of designing a dental restoration component. A set of design dimensional constraints is defined which must be satisfied for the dental restoration component. A set of design parameters for the dental restoration component also is defined. Using at least in part a penalty function, a value is assigned to each of said design parameters for the dental restoration component, consistent with the constraints for said component, said penalty function taking into account at least more than one of said design parameters and which signals a constraint being reached when the value of any of said parameters violates a constraint.