IP Library Granted Patent US 10,600,025
Granted Patent B2
US 10,600,025 · App. 14/437,660 · Granted Mar 24, 2020

Product intelligence engine

Inventors: Stanley Neil Foster (Wixom, MI); Matthew E. Fuhrman (Pontiac, MI); Jonathan Robert Hague (Pontiac, MI); John Brabbs (Pontiac, MI)
Assignee: ENT. SERVICES DEVELOPMENT CORPORATION LP
G06Q10/0875G06F17/50G06Q50/04G06F2217/02G06F2217/06Y02P90/30
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,600,025
App. No.
14/437,660
Granted
Mar 24, 2020
Kind
B2
Abstract

In one example, a product intelligence engine for visualizing matching and non-matching ones of asynchronously-modifiable functional parts, physical parts, and virtual parts of a variant of a product.

Claims (37)

1. A product intelligence engine, comprising:

interfaces to receive from at least one external system asynchronously-modifiable

configuration data that identifies functional parts of variants of a product, wherein the configuration data for each functional part includes at least a functional part identifier and variant data indicating in which of the variants the functional part is used,

bill-of-materials data that describes physical parts of the variants, wherein each functional part is associated with one or more physical parts, wherein the bill-of-materials data for each physical part includes at least a physical part identifier; and

CAD data that visually depicts virtual parts of the variants, wherein the CAD data includes a virtual part identifier;

a matching engine to determine, for a user-selected variant of the variants, matches and non-matches between the functional parts and both the physical parts and the virtual parts, wherein the matches associate each functional part identifier with a physical part identifier and a virtual part identifier; and

a visualization instruction builder to generate instructions that control a visualization engine to render, for the user-selected one of the variants, the CAD data and the bill-of-materials data for the matching parts, and to render for the non-matching parts helper information usable to resolve the non-matches, the helper information including at least a corresponding part number of at least one non-matching part, the visualization engine also rendering a graphical illustration of the user-selected one of the variants, the graphical illustration being generated based at least in part on the matching parts and the non-matching parts, wherein at least one part among the matching parts corresponds to a hierarchy of parts that includes one or more child parts, and wherein the graphical illustration is generated to also visually depict the one or more child parts.

2. The engine of claim 1 , wherein a change made to one of the functional, physical, or virtual parts does not cause a corresponding change to be made to the other corresponding ones of the functional, physical, or virtual parts.

3. The engine of claim 1 ,

wherein the matching engine further determines the matches and non-matches using an identifier of the functional parts, the physical parts, and the virtual parts; and

wherein, if the identifiers do not match, the matching engine further determines matches and non-matches using characteristics of the physical parts and the virtual parts.

4. The engine of claim 3 , wherein the characteristics comprise at least one of part data or part metadata.

5. The engine of claim 3 , comprising:

a part history reconciler that determines matches and non-matches using a change history of the identifier or the metadata.

6. The engine of claim 1 ,

wherein the product intelligence engine derives from the CAD data a set of visual contexts that specifies, for each context, a set of the virtual parts that are included in the context; and

wherein the visualization instruction builder generates, for a user-selected one of the visual contexts, instructions that control the visualization engine to render the CAD data for the matching virtual parts that are included in the set.

7. The engine of claim 1 , wherein the helper information comprises at least one of history information of the non-matching parts, descriptive information of the non-matching parts, or generic visual representations of the non-matching parts.

8. The engine of claim 1 wherein, during a first operation, the matching engine stores a baseline of the matches and the non-matches, and

wherein, during a subsequent operation, the matching engine determines matches and non-matches for added or changed functional parts, physical parts, or virtual parts and uses the stored baseline for unchanged functional parts, physical parts, and virtual parts.

9. The engine of claim 1 , wherein the visualization instruction builder modifies the matches and the non-matches according to user-provided overrides.

10. The engine of claim 1 , comprising:

a data translator that defines how the interfaces transform each of the CAD data, the configuration data, and the bill-of-materials data from a native format of the corresponding external system into an internal format of the product intelligence engine.

11. A method of visualizing a product, comprising:

receiving at a product intelligence engine, from at least one external system, asynchronously-modifiable

configuration data that identifies functional parts of variants of a product, wherein the configuration data for each functional part includes at least a functional part identifier and variant data indicating in which of the variants the functional part is used,

bill-of-materials data that describes physical parts of the variants, wherein each functional part is associated with one or more physical parts, wherein the bill-of-materials data for each physical part includes at least a physical part identifier; and

CAD data that visually depicts virtual parts of the variants, wherein the CAD data includes a virtual part identifier;

receiving at the engine a user selection of one of the variants;

providing for display the CAD data and the bill-of-materials data of virtual parts and physical parts that both match functional parts of a user-selected variant, wherein each functional part identifier corresponding to each of the functional parts is associated with a physical part identifier and a virtual part identifier corresponding to the matched functional part;

providing for display, for functional parts that do not match both a physical part and a virtual part, helper information usable to resolve the non-matches, the helper information including at least a corresponding part number of at least one non-matching part; and

providing for display a graphical illustration of the user-selected one of the variants, the graphical illustration being generated based at least in part on the CAD data and the bill-of-materials data of virtual parts and physical parts that both match functional parts and functional parts that do not match both a physical part and a virtual part, wherein at least one part among the matching functional parts corresponds to a hierarchy of parts that includes one or more child parts, and wherein the graphical illustration is generated to also visually depict the one or more child parts.

12. The method of claim 11 , comprising:

determining, with the engine, matches and non-matches between the functional parts and both the physical parts and the virtual parts.

13. The method of claim 12 , wherein the determining is performed for the functional parts of the user-selected one of the variants.

14. The method of claim 12 , wherein the determining is performed for all of the functional parts.

15. The method of claim 12 , wherein the determining is performed using at least one of part data or part metadata associated with at least one of the functional parts, the physical parts, or the virtual parts.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2017
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
To: ENT. SERVICES DEVELOPMENT CORPORATION LP
Reel/Frame 041041/0716 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 30, 2015
From: FOSTER, STAN NEIL; FUHRMAN, MATTHEW E.; HAGUE, JONATHAN ROBERT; BRABBS, JOHN
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 035750/0211 →