IP Library Granted Patent US 10,089,414
Granted Patent B2
US 10,089,414 · App. 14/395,432 · Granted Oct 2, 2018

System architecture generation

Inventors: Ashok Chandnani (Troy, MI); Jeff Hager (Castle Rock, CO); Yvon P Queromes (Modesto, CA)
Assignee: Hewlett Packard Enterprise Development LP
G06F17/50G06F17/5045G06Q10/0875G06F2217/02G06F2217/86
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,089,414
App. No.
14/395,432
Filed
Oct 17, 2014
Granted
Oct 2, 2018
Kind
B2
Examiner
RONI, SYED A
Art Unit
2194
USPC
703/21
Abstract

A template corresponds to a general system architecture for providing a desired functionality. A particular system architecture for providing the desired functionality is generated based on the template and based on specifications of requirements for the particular system architecture. The particular system architecture is implementable using hardware and software that are specified and that are available to implement the general system architecture. One or more of a logical diagram of the particular system architecture, a physical diagram of the particular system architecture, and a bill of materials of the hardware and the software selected to implement the particular system architecture are provided.

Claims (50)

1. A method comprising:

receiving, by a processor of a computing device, a template corresponding to a general system architecture for providing a desired functionality, specifications of hardware and software available to implement the general system architecture, and specifications of requirements of a particular system architecture for providing the desired functionality;

generating, by the processor, the particular system architecture for providing the desired functionality, based on the template and the requirements, the particular system architecture implementable using the hardware and the software, wherein generating the particular system architecture comprises:

maintaining a database having a first database table of the specifications of the hardware and the software available to implement the general system architecture, and a second database table corresponding to the template, the second database table relationally linking to the first database table;

calculating sizing of the particular system architecture based on the specifications of the requirements of the particular system architecture; and

executing a macro corresponding to the template, based on the sizing of the particular system architecture that has been calculated, to generate a logical diagram of the particular system architecture, a bill of materials of the hardware, and a physical diagram of the particular system architecture, wherein executing the macro accesses and uses the database;

outputting, by the processor, the logical diagram of the particular system architecture depicting functionally how the particular system architecture is implemented, the physical diagram of the particular system architecture depicting how the hardware and software selected to implement the particular system architecture are interconnected, and the bill of materials that specifies each item of the hardware and the software selected to implement the particular system architecture; and

implementing, by the processor, the particular system architecture to determine that the selected hardware and software provide the desired functionality.

2. The method of claim 1 , wherein the template is a specific template and receiving the template comprises receiving a plurality of different templates corresponding to different general system architectures for providing different desired functionalities, the different templates including the specific template, and

wherein generating the particular system architecture comprises matching the desired functionality of the particular system architecture to the desired functionality of the specific template among the different desired functionalities of the different templates.

3. The method of claim 1 , wherein receiving the specifications of the hardware and the software available to implement the general system architecture comprises receiving for each of the hardware and the software, as an item, a vendor of the item, characteristics of the item, and one or more of a model number and a version of the item.

4. The method of claim 3 , wherein the hardware and the software are provided by multiple vendors, such that generating the particular system architecture is performed in a vendor-neutral manner, without exclusively favoring any particular vendor.

5. The method of claim 1 , wherein receiving the specifications of the requirements of the particular system architecture comprises querying a system architect user as to the requirements of the particular system architecture by asking the system architect user a plurality of questions based on the template, answers to the questions constituting the specifications of the requirements.

6. The method of claim 1 , wherein outputting the logical diagram of the particular system architecture comprises providing a diagram depicting functionally how the particular system architecture is implemented, without depicting how the hardware and the software selected to implement the particular system architecture are interconnected and relate to one another.

7. The method of claim 1 , wherein outputting the physical diagram of the particular system architecture comprising providing a diagram depicting how the hardware and the software selected to implement the particular system architecture are interconnected and relate to one another, without depicting functionally how the particular system architecture is implemented.

8. The method of claim 1 , wherein outputting the bill of materials that specifies each item of the hardware and the software selected to implement the particular system architecture comprises providing a list including for each of the hardware and the software, as an item, a quantity of the item, a vendor of the item, characteristics of the item, and one or more of a model number and a version of the item.

9. The method of claim 1 , wherein implementing the particular system architecture includes:

performing successive iterations to implement the particular system architecture with different sizes of a specific variable of the particular system architecture; and

generating different versions of the particular system architecture having different capabilities based on the different sizes of the specific variable.

10. A non-transitory computer-readable data storage medium storing instructions that when executed by a processor of a computing device cause the processor to:

query a user to acquire specifications of requirements of a particular system architecture for providing a desired functionality;

generate the particular system architecture for providing the desired functionality, based on the requirements, a template corresponding to a general system architecture for providing the desired functionality, and hardware and software selected to implement the particular system architecture, wherein to generate the particular system architecture for providing the desired functionality, the instructions are to cause the processor to:

access a database having a first database table of the specifications of the hardware and the software available to implement the general system architecture, and a second database table corresponding to the template, the second database table relationally linking to the first database table;

determine sizing of the particular system architecture based on the specifications of the requirements of the particular system architecture; and

execute a macro corresponding to the template, based on the sizing of the particular system architecture that has been determined, and use the database to generate a logical diagram of the particular system architecture, a bill of materials of the hardware, and a physical diagram of the particular system architecture;

output the logical diagram of the particular system architecture depicting functionally how the particular system architecture is implemented, the physical diagram of the particular system architecture depicting how the hardware and software selected to implement the particular system architecture are interconnected, and the bill of materials that specifies each item of the hardware and the software selected to implement the particular system architecture; and

implement the particular system architecture to determine that the selected hardware and software provide the desired functionality.

11. The non-transitory computer-readable data storage medium of claim 10 , wherein to query the user to acquire the specifications of the requirements of the particular system architecture, the instructions are to cause the processor to: display a plurality of questions based on the template, and receive answers to the questions constituting the specifications of the requirements.

12. The non-transitory computer-readable data storage medium of claim 10 , wherein to implement the particular system architecture, the instructions are to cause the processor to:

perform successive iterations to implement the particular system architecture with different sizes of a specific variable of the particular system architecture; and

generate different versions of the particular system architecture having different capabilities based on the different sizes of the specific variable.

13. The non-transitory computer-readable data storage medium of claim 10 , wherein the instructions cause the processor to store the first data as the first database table, and store the second data and the third data as the second database table to which the first database table is relationally mapped.

14. The non-transitory computer-readable data storage medium of claim 10 , wherein the specifications of requirements of a particular system architecture queried to a user include specifications for each of the hardware and the software, as an item, a vendor of the item, characteristics of the item, and one or more of a model number and a version of the item.

15. The non-transitory computer-readable data storage medium of claim 10 , wherein to output the logical diagram, the instructions are to cause the processor to output the logical diagram as a first diagram depicting functionally how the particular system architecture is implemented, without depicting how the hardware and the software selected to implement the particular system architecture are interconnected and relate to one another.

16. The non-transitory computer-readable data storage medium of claim 10 , wherein to output the physical diagram, the instructions are to cause the processor to output the physical diagram as a second diagram depicting how the hardware and the software selected to implement the particular system architecture are interconnected and relate to one another, without depicting functionally how the particular system architecture is implemented.

17. The non-transitory computer-readable data storage medium of claim 10 , wherein to output the bill of materials, the instructions are to cause the processor to output the bill of materials as a list including for each of the hardware and the software, as an item, a quantity of the item, a vendor of the item, characteristics of the item, and one or more of a model number and a version of the item.

18. A system comprising:

a processor; and

a computer-readable data storage medium storing:

first data representing a template corresponding to a general system architecture for providing a desired functionality;

second data representing specifications of hardware and software available to implement the general system architecture;

third data representing specifications of requirements of a particular system architecture for providing the desired functionality; and

a computer program executable by the processor to:

access a database having a first database table of the specifications of the hardware and the software available to implement the general system architecture, and a second database table corresponding to the template, the second database table relationally linking to the first database table;

determine sizing of the particular system architecture for providing the desired functionality, based on the template and the requirements, including selecting the hardware and the software by which the particular system architecture is implementable; and

execute a macro corresponding to the template, based on the sizing of the particular system architecture, and use the database to generate one or more of a logical diagram of the particular system architecture, a physical diagram of the particular system architecture, and a bill of materials of the hardware and the software selected to implement the particular system architecture.

19. The system of claim 18 , wherein the computer-readable data storage medium stores the first data as a first database table of a database and the second data and the third data as a second database table to which the first database table is relationally mapped.

20. The system of claim 18 , wherein the computer program is to cause the processor to:

perform successive iterations to implement the particular system architecture with different sizes of a specific variable of the particular system architecture; and

generate different versions of the particular system architecture having different capabilities based on the different sizes of the specific variable.

Assignments (2)
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 Dec 23, 2014
From: CHANDNANI, ASHOK; HAGER, JEFF; QUEROMES, YVON P
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 034574/0272 →
Continuity (1)
Related Publication 20150324488A1 · Nov 12, 2015