1. A computer-implemented method comprising: generating a customizable product configurator, said generating comprising creating a customizable product class, wherein the customizable product class comprises a set of one or more attributes to define the customizable product class; adding a component product class to the customizable product class, wherein the component product class is a subclass of the customizable product class; and mapping a customizable user interface (UI) to the customizable product class, wherein the customizable UI provides an access structure to the customizable product configurator, elements of the customizable UI access structure correspond to elements of the customizable product class, the customizable product class is configured to represent a consumer product, and the component product class is configured to represent one or more components of the consumer product.