METHOD AND APPARATUS FOR CONFIGURING SYSTEMS
First Claim
1. A method of configuring a system using a computer system comprising the steps of:
- defining in said computer system an element model consisting of elements used to configure said system and structural relationships between said elements in said model;
generating by said computer system a system configuration based on configuration requests and said element model; and
displaying by said computer system a graphical representation of said system configuration and said structural relationships between said elements of said system configuration.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention employs a generative approach for configuring systems such that a system may be configured based on component or resource requests, or input in the form of need. The present invention provides a constraint-based configuration system using a structural model hierarchy. The structural aspects of the model provide the ability to define a model element as being contained in, or by, another model element. In addition, the structural model provides the ability to identify logical datatype and physical interconnections between elements and establish connections between elements. To configure a system, the present invention accepts input in the form of requests (e.g., component or resource) or needs, such as an expression of a need for a desktop computer system to be used in a CAD (i.e., computer-aided design) environment. Using this information, the present invention configures a system by identifying the resource and component needs, constraints imposed on or by the resources or components identified, and the structural aspects of the system.
35 Citations
15 Claims
-
1. A method of configuring a system using a computer system comprising the steps of:
-
defining in said computer system an element model consisting of elements used to configure said system and structural relationships between said elements in said model;
generating by said computer system a system configuration based on configuration requests and said element model; and
displaying by said computer system a graphical representation of said system configuration and said structural relationships between said elements of said system configuration. - View Dependent Claims (2, 4)
-
-
3. The method of claim I including the step of generating by said computer system a Bill of Materials report containing a part number and description for each component and spare part in said system configuration, resource totals, failed requests, and failed optional requests.
-
5. A method of defining a structural model hierarchy in a computer system comprising the steps of:
-
defining component, composite, container, port, and connector base classes;
defining derived classes that are derived from said base classes defining leaf descendants that descend from said base and derived classes;
defining a composite hierarchy substructure such that a first model element that is part of said second model element that is descended from said composite base class is defined to be a “
child of”
said second model element;
defining a container hierarchy substructure such that a first model element that is contained within a second model element that is descended from said container base class is defined to be “
contained by”
said second model element; and
defining a port relationship substructure such that a first model element that connects to a second model element that is descended from said port base class is defined to “
connect with”
said second model element.
-
-
6. A method of configuring a system in a computer system comprising the steps of:
-
providing a structural model hierarchy comprised of composite and container hierarchies and port relationships substructures;
providing in said computer system a configuration instance;
(a) modifying said configuration instance in response to a request by creating in said configuration instance instances of one or more model elements based on said request;
(b) storing said modifications in a list of modifications;
(c) examining said instances to determine if a constraint exists;
(d) satisfying in said computer said constraint when said constraint exists;
(e) committing said modifications to said configuration instance and removing said modifications from said modifications list when no constraint exists and when said constraint is satisfied; and
(f) removing said modifications from said configuration instance and said modifications list when said constraint is not satisfied. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. A method of satisfying a resource request in a computer system for configuring systems comprising the steps of:
-
providing a structural model hierarchy and a plurality of resources offered by elements in said structural model hierarchy;
providing in said computer system a configuration instance;
(a) examining said configuration instance for an element offering a resource in response to a request for said resource;
(b) selecting said resource from said element when said resource has not been previously consumed;
(c) selecting a newly created element instance that offers said resource if no existing elements satisfy said resource request; and
(d) repeating steps (a) through (d) when said element selection does not satisfy query and test conditions.
-
-
13. A method of satisfying a container constraint in a computer system for configuring systems comprising the steps of:
-
providing a structural model hierarchy comprised of composite and container hierarchies and port relationships substructures;
providing in said computer system a configuration instance;
satisfying in said computer said container constraint when said container constraint exists by;
(a) examining said configuration instance to determine whether a container instance is available to satisfy said container constraint;
(b) modifying said configuration instance by creating a new container instance when said container constraint cannot be satisfied by a container instance in said configuration instance;
(c) storing said modifications in a list of modifications when said container constraint cannot be satisfied by a container instance in said configuration instance;
(e) examining said new container instance to determine if a constraint exists;
(f) satisfying in said computer said constraint when said constraint exists on said new container instance;
(g) committing said modifications to said configuration instance and removing said modifications from said modifications list when no constraint exists and when said constraint is satisfied; and
(h) removing said modifications from said configuration instance and said modifications list when said constraint is not satisfied.
-
-
14. A method of satisfying a component constraint in a computer system for configuring systems comprising the steps of:
-
providing a structural model hierarchy comprised of composite and container hierarchies and port relationships substructures;
providing in said computer system a configuration instance;
satisfying in said computer said component constraint when said component constraint exists by;
(a) examining said configuration instance to determine whether a component instance is available to satisfy said component constraint;
(b) modifying said configuration instance by creating a new component instance when said component constraint cannot be satisfied by a component instance in said configuration instance;
(c) storing said modifications in a list of modifications when said component constraint cannot be satisfied by a component instance in said configuration instance;
(e) examining said new component instance to determine if a constraint exists;
(f) satisfying in said computer said constraint on said new component instance when said constraint exists;
(g) committing said modifications to said configuration instance and removing said modifications from said modifications list when no constraint exists on said new component instance and when said constraint is satisfied; and
(h) removing said modifications from said configuration instance and said modifications list when said constraint on said new component instance is not satisfied.
-
-
15. A method of satisfying a connection constraint in a computer system for configuring systems comprising the steps of:
-
providing a structural model hierarchy comprised of composite and container hierarchies and port relationships substructures;
providing in said computer system a configuration instance;
generating a connection constraint such that a target element in said configuration instance requires a connection to a destination element of said configuration instance (a) generating a list of destination elements;
(b) selecting one destination element from said list of destination elements;
(c) identifying unconnected ports of said destination element that are accessible from said target element;
(d) identifying available ports of said target element;
(e) selecting a first port from one of said unconnected ports of said destination element;
(f) selecting a second port from one of said available ports of said target element;
(g) comparing the physical type and logical datalype of said first port with the physical type and logical datatype of said second port;
(h) examining the transfer path between said first port and said second port;
(i) connecting said first port to said second port when said physical type and logical datatype are compatible and when said transfer path exists between said first port and said second port; and
(j) repeating steps (b) through (j) when said physical type and logical datatype are not compatible and when said transfer path does not exist between said first port and said second port.
-
Specification