Product configuration using configuration patterns
DCFirst Claim
1. A computer program product comprising:
- a configuration model embodied in the computer program product for use with a product configuration software system to process input data and provide output data that allows the product configuration software system to generate a representation of a configurable product in accordance with the output data, wherein the configuration model comprises;
configuration patterns, wherein each configuration pattern comprises a reusable, data processing solution that allows the product configuration software system to solve one or more recurring problems in generating the representation of the configurable product, and the data processing solution comprises;
predetermined configuration logic for processing the input data to facilitate generation of the representation of the configurable product by the product configuration software system, wherein the configuration logic includes code that is executable by the product configuration software system.
2 Assignments
Litigations
0 Petitions
Accused Products
Abstract
In a particular embodiment, configuration patterns are used to provide solutions to configuration problems that repetitively occur. Use of configuration patterns in connection with a configuration model has many benefits. A configuration patterns is a parameterized or otherwise easily extensible solution to that problem, such that the solution is reusable by modifying the parameters of the pattern or extending the pattern in pre-defined ways. Configuration patterns are inherently data-driven and provide improved maintenance for data and logic as well as reduced programming effort. Configuration patterns can be reused within and across different product families and can be specialized from other patterns. Thus, the use of configuration patterns facilitates reduced maintenance cost and reduced programming effort for product configuration data and logic systems.
-
Citations
43 Claims
-
1. A computer program product comprising:
a configuration model embodied in the computer program product for use with a product configuration software system to process input data and provide output data that allows the product configuration software system to generate a representation of a configurable product in accordance with the output data, wherein the configuration model comprises; configuration patterns, wherein each configuration pattern comprises a reusable, data processing solution that allows the product configuration software system to solve one or more recurring problems in generating the representation of the configurable product, and the data processing solution comprises; predetermined configuration logic for processing the input data to facilitate generation of the representation of the configurable product by the product configuration software system, wherein the configuration logic includes code that is executable by the product configuration software system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
12. A product configuration system comprising:
-
a processor; and a memory, coupled the processor, the memory having code having a configuration engine encoded therein and executable by the processor to generate a representation of a configurable product, the memory further having a product model encoded therein, wherein the product model is accessible by the configuration engine, the product model including; a configuration model embodied in the computer program product for use with a product configuration software system to process input data and provide output data that allows the configuration engine to generate the representation of a configurable product in accordance with the output data, wherein the configuration model comprises; configuration patterns, wherein each configuration pattern comprises a reusable, data processing solution that allows the configuration engine to solve one or more recurring problems in generating the representation of the configurable product, and the data processing solution comprises; predetermined configuration logic for processing the input data to facilitate generation of the representation of the configurable product by the configuration engine, wherein the configuration logic includes code that is executable by the processor. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A software distribution method, the method comprising:
-
distributing a software system to a first enterprise; distributing the software system to a second enterprise;
the software system including;a processor; and a memory, coupled the processor, the memory having code having a configuration engine encoded therein and executable by the processor to generate a representation of a configurable product, the memory further having a product model encoded therein, wherein the product model is accessible by the configuration engine, the product model including; a configuration model embodied in the computer program product for use with a product configuration software system to process input data and provide output data that allows the configuration engine to generate the representation of a configurable product in accordance with the output data, wherein the configuration model comprises; configuration patterns, wherein each configuration pattern comprises a reusable, data processing solution that allows the configuration engine to solve one or more recurring problems in generating the representation of the configurable product, and the data processing solution comprises; predetermined configuration logic for processing the input data to facilitate generation of the representation of the configurable product by the configuration engine, wherein the configuration logic includes code that is executable by the processor. - View Dependent Claims (26, 27, 28, 29, 30, 31)
-
-
32. An article of manufacture comprising:
a configuration engine routine stored in a tangible medium and executable by a processor to generate a representation of a configurable product in accordance;
witha configuration model stored in the tangible medium, the configuration model accessible by the configuration engine to process input data and provide output data that allows the product configuration software system to generate the representation of the configurable product in accordance with the output data, the configuration model including; configuration patterns, wherein each configuration pattern comprises a reusable, data processing solution that allows the product configuration software system to solve one or more recurring problems in generating the representation of the configurable product, and the data processing solution comprises; predetermined configuration logic for processing the input data to facilitate generation of the representation of the configurable product by the product configuration software system, wherein the configuration logic includes code that is executable by the product configuration software system.
-
33. A configuration system comprising:
-
a computer readable storage medium a model stored in the computer readable storage medium and for use with the digital computing device, the model configured to define a configuration model having information about telecommunication industry components and logic available for configuring a product in a telecommunications industry system, the model including configuration patterns; and a configuration engine having access to the model during operation of the digital computing device, the configuration engine configured to select a plurality of the telecommunication industry components of the configuration model and include the telecommunication industry components in the telecommunication industry system in response to configuration requests; wherein each configuration pattern comprises a reusable, data processing solution that allows the configuration engine to solve one or more recurring problems for including the telecommunication industry components in the telecommunication industry system, and the data processing solution comprises predetermined configuration logic for processing the configuration requests data to facilitate inclusion of the telecommunication industry components in the telecommunication industry system by the configuration engine. - View Dependent Claims (34)
-
-
35. A configuration apparatus comprising:
-
a computer readable storage medium a model stored in the computer readable storage medium and for use with a digital computing device, the model configured to define a configuration model having information about telecommunication industry components and logic available for generating a representation of a configurable product, the model including configuration patterns; and a configuration engine having access to the model during operation of the digital computing device, the configuration engine configured to use the model to generate the representation of the configurable product; wherein each configuration pattern comprises a reusable, data processing solution that allows the configuration engine to solve one or more recurring problems for generating the representation of the configurable product, and the data processing solution comprises predetermined configuration logic for processing the configuration requests data to facilitate generating the representation of the configurable product by the configuration engine. - View Dependent Claims (36, 37, 38)
-
-
39. A method of configuring a product using at least one configuration pattern of a product model that includes components and logic used to configure a configurable product and structural relationships between instances of the components in the product model, the method comprising:
-
creating a product configuration using the product model comprising; receiving attributes to respectively control behavior of each configuration pattern, wherein each configuration pattern includes reusable configuration logic for implementing repeatable configuration functions; creating one or more instances of components in the model that are candidates for configuration in response to configuration requests; for each of the component instances, determining whether to apply any configuration pattern during configuration of the component instance; and evaluating the logic of any configuration patterns to be applied to a configuration assistance in accordance with the attributes received to control the configuration patterns; and generating a representation of the configurable product; wherein each configuration pattern comprises a reusable, data processing solution that allows solutions to recurring instances of creating of one or more instances of components in the model, and the data processing solution comprises the configuration logic wherein the configuration logic facilitates the creating one or more instances of components in the model that are candidates for configuration in response to configuration requests.
-
-
40. A method of modeling a configuration for a system, the method comprising:
-
generating a model including components and logic used to configure the system and structural relationships between instances of the components in the model, the industry model including at least one configuration pattern including reusable configuration patterns for implementing a configuration function; creating a plurality of component instances of the system that are instances of one or more components of the model in response to configuration requests; evaluating the configuration requests and model to generate a configuration of the system; and generating the configuration of the system; wherein each configuration pattern comprises a reusable, data processing solution that allows solutions to recurring instances of creating a plurality of component instances of the system, and the data processing solution comprises the logic used to configure the system and structural relationships between instances of the components in the model.
-
-
41. A method of modeling a configuration for a system, the method comprising:
-
generating a model including components and logic used to configure the system and structural relationships between instances of the components in the industry model, the model including at least one configuration pattern including reusable configuration logic for implementing a configuration function; creating a plurality of component instances of the system that are instances of one or more components of the model in response to configuration requests; and generating a product configuration by using the model to identify one or more of the plurality of component instances that can satisfy constraints of the plurality of components; wherein each configuration pattern comprises a reusable, data processing solution that allows solutions to recurring instances of creating a plurality of component instances of the system, and the data processing solution comprises the logic used to configure the system and structural relationships between instances of the components in the model.
-
-
42. A computer system, the computer system comprising:
-
a processor; and a display, coupled to the processor, to display a user interface for obtaining data useful for controlling behavior of configuration patterns of a configuration model, the user interface comprising; a display of information to prompt a user to supply data for use by a configuration system in controlling the behavior of configuration patterns in a configuration model; wherein the configuration model is for use with a configuration engine to process the data supplied by the user and provide output data that allows the configuration system to generate a representation of a configurable product in accordance with the output data; wherein each configuration pattern comprises a reusable, data processing solution that allows the configuration system to solve one or more recurring problems in generating the representation of the configurable product; and wherein the data processing solution comprises predetermined configuration logic for processing the data supplied by the user to facilitate generation of the representation of the configurable product by the configuration system.
-
-
43. A method of receiving data for use in conjunction with configuration patterns of a product model for use by a configuration engine to configure a product, the method comprising:
-
displaying information to prompt a user to supply data that includes attribute values of the configuration patterns that control the behavior of the configuration patterns; receiving the data that is supplied; and generating a representation of a configurable product using the data; wherein the configuration model is for use with a configuration engine to process the data supplied by the user and provide output data that allows the configuration engine to generate a representation of a configurable product in accordance with the output data; wherein each configuration pattern comprises a reusable, data processing solution that allows the configuration engine to solve one or more recurring problems in generating the representation of the configurable product; and wherein the data processing solution comprises predetermined configuration logic for processing the data supplied by the user to facilitate generation of the representation of the configurable product by the configuration engine.
-
Specification