IP Library Granted Patent US 10,803,411
Granted Patent B1
US 10,803,411 · App. 15/489,602 · Granted Oct 13, 2020

Enterprise platform deployment

Inventors: Andrew Smith (Oakton, VA); Clayton Myers (Oak Hill, VA); Thomas Leuchtner (Oakton, VA)
Assignee: MicroStrategy Incorporated
G06Q10/06312G06Q10/0631G06Q10/06315
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,803,411
App. No.
15/489,602
Granted
Oct 13, 2020
Kind
B1
Abstract

Methods, systems, apparatus, including computer programs encoded on computer storage medium, for deploying an enterprise platform environment. In one aspect, the method may include providing a provisioning console, wherein the provisioning console includes a plurality of configurable enterprise platform configuration settings, receiving a provisioning request to generate a customized enterprise platform based on user-defined settings for each of the plurality of configurable enterprise platform configuration settings, generating an enterprise platform deployment package based on the user-defined settings, and provisioning cloud-based resources to establish an enterprise platform based on the enterprise platform deployment package.

Claims (70)

1. A method performed by one or more computers, comprising:

providing, by the one or more computers, a provisioning interface, wherein the provisioning interface includes a plurality of configurable enterprise platform configuration settings;

determining, by the one or more computers, a usage pattern indicating one or more trends that include variation in use of enterprise platform resources over time;

receiving, by the one or more computers, a provisioning request to generate an enterprise platform based on user-defined settings for one or more of the plurality of configurable enterprise platform configuration settings;

generating, by the one or more computers, an enterprise platform deployment package based on (i) the user-defined settings and (ii) the usage pattern, wherein the enterprise platform deployment package includes different sets of configuration settings for different periods of time, the different sets of configuration settings being configured to cause variation in an allocation of enterprise platform resources over time based on the one or more trends indicated by the usage pattern; and

provisioning, by the one or more computers, cloud-based resources to establish the enterprise platform based on the enterprise platform deployment package, wherein the enterprise platform is configured based on the different sets of configuration settings in the enterprise platform deployment package to:

vary an allocation of cloud-based resources over time according to the different sets of configuration settings in the enterprise platform deployment package; and

use the different sets of configuration settings for different time periods based on the usage pattern indicating the one or more trends, wherein the different sets of configuration settings specify allocations of different levels of processing resources and/or memory resources for the different time periods.

2. The method of claim 1 , wherein the user-defined settings are based on a schedule of one or more user-defined events.

3. The method of claim 2 , further comprising:

detecting, based on the schedule of one or more user-defined events, that a scheduled user-defined event is scheduled to occur within a predetermined period of time;

obtaining a set of user-defined settings for one or more configurable enterprise platform configuration settings that are associated with the scheduled user-defined event;

generating an updated enterprise platform deployment package based on the one or more configurable enterprise platform configuration settings that are associated with the scheduled user-defined event; and

provisioning the cloud-based resources or other cloud-based resources to establish an updated enterprise platform based on the updated enterprise platform deployment package.

4. The method of claim 1 , wherein the user-defined settings are based on input from a user that includes a modification to one or more configurable enterprise platform configuration settings associated with a previously deployed enterprise platform.

5. The method of claim 4 , further comprising:

receiving the input from the user that includes the modification to the one or more configurable enterprise platform configuration settings associated with the previously deployed enterprise platform;

generating an updated enterprise platform environment based on the modification to the one or more configurable enterprise platform configuration settings associated with the previously deployed enterprise platform; and

provisioning the cloud-based resources or other cloud-based resources to establish the updated enterprise platform environment.

6. The method of claim 1 , comprising:

detecting, by the one or more computers, a shift in demand for the enterprise platform resources based on the usage pattern; and

in response to detecting the shift in demand, adjusting, by the one or more computers, one or more of the plurality of configurable enterprise platform configuration settings based on the detected shift in demand for the enterprise platform resources,

wherein the enterprise platform deployment package is generated based on the adjusted one or more of the plurality of configurable enterprise platform configuration settings.

7. The method of claim 1 , comprising pre-populating one or more user interface fields with a recommended configuration setting that are determined by the one or more computers based on the usage pattern indicating the one or more trends.

8. The method of claim 1 , wherein provisioning the cloud-based resources comprises allocating one or more databases of a cloud server environment to host data corresponding to the enterprise platform.

9. The method of claim 1 , wherein:

the different sets of configuration settings include a geography; and

provisioning the cloud-based resources to establish the enterprise platform based on the enterprise platform deployment package comprises provisioning the cloud-based resources using servers located in the geography.

10. The method of claim 1 , comprising determining software and hardware infrastructure needed to establish the enterprise platform,

wherein provisioning the cloud-based resources to establish the enterprise platform comprises provisioning the cloud-based resources in accordance with the software and hardware infrastructure needed to establish the enterprise platform.

11. A system comprising:

one or more computers and one or more storage devices storing instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising:

providing a provisioning interface, wherein the provisioning interface includes a plurality of configurable enterprise platform configuration settings;

determining a usage pattern indicating one or more trends that include variation in use of enterprise platform resources over time;

receiving a provisioning request to generate an enterprise platform based on user-defined settings for one or more of the plurality of configurable enterprise platform configuration settings;

generating an enterprise platform deployment package based on (i) the user-defined settings and (ii) the usage pattern, wherein the enterprise platform deployment package includes different sets of configuration settings for different periods of time, the different sets of configuration settings being configured to cause variation in an allocation of enterprise platform resources over time based on the one or more trends indicated by the usage pattern; and

provisioning cloud-based resources to establish the enterprise platform based on the enterprise platform deployment package, wherein the enterprise platform is configured based on the different sets of configuration settings in the enterprise platform deployment package to:

vary an allocation of cloud-based resources over time according to the different sets of configuration settings in the enterprise platform deployment package; and

use the different sets of configuration settings for different time periods based on the usage pattern indicating the one or more trends, wherein the different sets of configuration settings specify allocations of different levels of processing resources and/or memory resources for the different time periods.

12. The system of claim 11 , wherein the user-defined settings are based on a schedule of one or more user-defined events.

13. The system of claim 12 , the operations further comprising:

detecting, based on the schedule of one or more user-defined events, that a scheduled user-defined event is scheduled to occur within a predetermined period of time;

obtaining a set of user-defined settings for one or more configurable enterprise platform configuration settings that are associated with the scheduled user-defined event;

generating an updated enterprise platform deployment package based on the one or more configurable enterprise platform configuration settings that are associated with the scheduled user-defined event; and

provisioning the cloud-based resources or other cloud-based resources to establish an updated enterprise platform based on the updated enterprise platform deployment package.

14. The system of claim 11 , comprising determining, based on the user-defined settings, software and hardware infrastructure needed to establish the enterprise platform,

wherein the user-defined settings are based on input from a user that includes a modification to one or more configurable enterprise platform configuration settings associated with a previously deployed enterprise platform.

15. The system of claim 14 , the operations further comprising:

receiving the input from the user that includes the modification to the one or more configurable enterprise platform configuration settings associated with the previously deployed enterprise platform;

generating an updated enterprise platform deployment package based on the modification to the one or more configurable enterprise platform configuration settings associated with the previously deployed enterprise platform; and

provisioning the cloud-based resources or other cloud-based resources to establish the updated enterprise platform based on the updated enterprise platform deployment package.

16. One or more non-transitory computer-readable media storing software comprising instructions executable by one or more computers which, upon such execution, cause the one or more computers to perform operations comprising:

providing a provisioning interface, wherein the provisioning interface includes a plurality of configurable enterprise platform configuration settings;

determining a usage pattern indicating one or more trends that include variation in use of enterprise platform resources over time;

receiving a provisioning request to generate an enterprise platform based on user-defined settings for each of the plurality of configurable enterprise platform configuration settings;

generating an enterprise platform deployment package based on (i) the user-defined settings and (ii) the usage pattern, wherein the enterprise platform deployment package includes different sets of configuration settings for different periods of time, the different sets of configuration settings being configured to cause variation in an allocation of enterprise platform resources over time based on the one or more trends indicated by the usage pattern; and

provisioning cloud-based resources to establish the enterprise platform based on the enterprise platform deployment package, wherein the enterprise platform is configured based on the different sets of configuration settings in the enterprise platform deployment package to:

vary an allocation of cloud-based resources over time according to the different sets of configuration settings in the enterprise platform deployment package; and

use the different sets of configuration settings for different time periods based on the usage pattern indicating the one or more trends, wherein the different sets of configuration settings specify allocations of different levels of processing resources and/or memory resources for the different time periods.

17. The one or more non-transitory computer-readable media of claim 16 , wherein the user-defined settings are based on a schedule of one or more user-defined events.

18. The one or more non-transitory computer-readable media of claim 17 , the operations further comprising:

detecting, based on the schedule of one or more user-defined events, that a scheduled user-defined event is scheduled to occur within a predetermined period of time;

obtaining a set of user-defined settings for one or more configurable enterprise platform configuration settings that are associated with the scheduled user-defined event;

generating an updated enterprise platform deployment package based on the one or more configurable enterprise platform configuration settings that are associated with the scheduled user-defined event; and

provisioning the cloud-based resources or other cloud-based resources to establish an updated enterprise platform based on the updated enterprise platform deployment package.

19. The one or more non-transitory computer-readable media of claim 18 , wherein the user-defined settings are based on input from a user that includes a modification to one or more configurable enterprise platform configuration settings associated with a previously deployed enterprise platform.

20. The one or more non-transitory computer-readable media of claim 19 , the operations further comprising:

receiving the input from the user that includes the modification to the one or more configurable enterprise platform configuration settings associated with the previously deployed enterprise platform;

generating an updated enterprise platform deployment package based on the modification to the one or more configurable enterprise platform configuration settings associated with the previously deployed enterprise platform; and

provisioning the cloud-based resources or other cloud-based resources to establish the updated enterprise platform based on the updated enterprise platform deployment package.

Assignments (3)
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT REEL/FRAME: 056647/0687, REEL/FRAME: 057435/0023, REEL/FRAME: 059256/0247, REEL/FRAME: 062794/0255 AND REEL/FRAME: 066663/0713 Recorded Sep 26, 2024
From: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, AS SUCCESSOR IN INTEREST TO U.S. BANK NATIONAL ASSOCIATION, IN ITS CAPACITY AS COLLATERAL AGENT FOR THE SECURED PARTIES
To: MICROSTRATEGY INCORPORATED; MICROSTRATEGY SERVICES CORPORATION
Reel/Frame 069065/0539 →
SECURITY INTEREST Recorded Jun 22, 2021
From: MICROSTRATEGY INCORPORATED
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 056647/0687 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 8, 2019
From: SMITH, ANDREW; MYERS, CLAYTON; LEUCHTNER, THOMAS
To: MICROSTRATEGY INCORPORATED
Reel/Frame 048823/0452 →