IP Library Granted Patent US 10,990,370
Granted Patent B1
US 10,990,370 · App. 16/197,962 · Granted Apr 27, 2021

System, apparatus and method for deploying infrastructure to the cloud

Inventor: Aaron Bawcom (Brookhaven, GA)
Assignee: Candid Labs, Inc.
G06F8/60G06F8/35G06F11/3664G06F21/577H04L41/0806H04L41/0886H04L41/145H04L41/5048H04L67/10G06F2221/033H04L41/5096
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,990,370
App. No.
16/197,962
Granted
Apr 27, 2021
Kind
B1
Abstract

System, apparatus and method for provisioning a software application for operation as a resource operating on a cloud computing network accessible to a plurality of users associated with an enterprise are provided. According to some embodiments, the system includes a decision engine and a code generation module. According to these embodiments, the decision engine is configured to generate a cloud deployment model for the software application, the cloud deployment model based, at least in part, on: a) survey data provided by the enterprise for the software application; b) organizational standards for the enterprise; c) server inventory data for the software application; and d) learned approaches for creating cloud deployment models for the enterprise. Also in these embodiments, the code generation module is configured to convert the cloud deployment model to an infrastructure-as-code definition for deployment to the cloud computing network.

Claims (33)

1. A system to provision a plurality of software applications for operation as resources operating on a cloud computing network accessible to a plurality of users associated with an enterprise, the system comprising:

a decision engine configured to generate a cloud deployment model for the plurality of software applications, the cloud deployment model based on: a) survey data provided by the enterprise for the plurality of software applications, wherein the survey data includes information defining a complexity value for each of the plurality of software applications and a business value for each of the plurality of software applications to the enterprise, wherein each respective complexity value and business value for each of the plurality of software applications is derived from the survey data; b) organizational standards for the enterprise; c) server inventory data for the plurality of software applications; and d) learned approaches for creating cloud deployment models for the enterprise, wherein the learned approaches are determined according to analysis of prior approaches applied to one or more software applications by the enterprise or other enterprises; and

a code generation module configured to convert the cloud deployment model to an infrastructure-as-code definition for deployment to the cloud computing network.

2. The system of claim 1 , wherein the enterprise deploys the plurality of software applications to the plurality of users including at least one of employees and a type of third-party user including at least one of individual end users, vendors, contractors and customers.

3. The system of claim 1 , further comprising an architecture module configured to generate a cloud deployment pattern selected by the enterprise.

4. The system of claim 3 , wherein the cloud deployment pattern includes at least one of EC2 Persistence, EC2 Non-Persistence, Serverless and Container.

5. The system of claim 3 , wherein the decision engine generates the cloud deployment model based, at least in part, on the cloud deployment pattern selected by the enterprise.

6. The system of claim 5 , further comprising a configuration module operable to receive a change by the enterprise to least one deployment parameter concerning the plurality of software applications.

7. The system of claim 6 , wherein the cloud deployment model is a predicted cloud deployment model, and

wherein the decision engine employs the change to generate a custom cloud deployment model.

8. The system of claim 7 , wherein the configuration module is operational to configure a code repository for inclusion in a continuous integration and continuous delivery (CI/CD) process operated to deploy the plurality of software applications to the cloud computing network,

wherein the infrastructure-as-code definition is checked into the code repository.

9. The system of claim 8 , wherein the CI/CD process operates to perform automated testing of the plurality of software applications.

10. The system of claim 9 , wherein the system is included in a pipeline including a compliance module, and

wherein the CI/CD process operates to perform automated testing of the plurality of software applications for compliance with at least one of regulatory standards applicable to the plurality of software applications, operational standards applicable to the plurality of software applications and security standards applicable to the plurality of software applications.

11. The system of claim 1 , wherein the survey data provides information concerning the plurality of software applications comprising: an infrastructure employed by the plurality of software applications; operational patterns exhibited by the plurality of software applications; a size and complexity of the transactions processed by the plurality of software applications; and individuals responsible for the plurality of software applications within the enterprise.

12. The system of claim 11 , wherein the survey data provides information including a data security classification for data in the plurality of software applications, a data resiliency requirement for data in the plurality of software applications, a degree of coupling between servers employed by the plurality of software applications and a degree of dependency between the plurality of software applications.

13. A method to provision a plurality of software applications for operation as resources operating on a cloud computing network accessible to a plurality of users associated with an enterprise, the method comprising:

generating a cloud deployment model for the plurality of software applications, the cloud deployment model based on: a) survey data provided by the enterprise for the plurality of software applications, wherein the survey data includes information defining a complexity value for each of the plurality of software applications and a business value for each of the plurality of software applications to the enterprise, wherein each respective complexity value and business value for each of the plurality of software applications is derived from the survey data; b) organizational standards for the enterprise; c) server inventory data for the plurality of software applications; and d) learned approaches for creating cloud deployment models for the enterprise, wherein the learned approaches are determined according to analysis of prior approaches applied to one or more software applications by the enterprise or other enterprises; and

converting the cloud deployment model to an infrastructure-as-code definition for deployment to the cloud computing network.

14. The method of claim 13 , further comprising:

receiving a cloud deployment pattern selected by the enterprise; and

generating the cloud deployment model based, at least in part, on the cloud deployment pattern.

15. The method of claim 14 , further comprising selecting the cloud deployment model from among EC2 Persistence, EC2 Non-Persistence, Serverless and Container cloud deployment models.

16. The method of claim 15 , further comprising generating a custom cloud deployment model based on changes selected by the enterprise to at least one deployment parameter.

17. A non-transitory computer-readable medium whose contents cause a processing device including a processor and a memory coupled to the processor to perform a method to provision a plurality of software applications for operation as resources operating on a cloud computing network accessible to a plurality of users associated with an enterprise, the method comprising:

generating a cloud deployment model for the plurality of software applications, the cloud deployment model based on: a) survey data provided by the enterprise for the plurality of software applications, wherein the survey data includes information defining a complexity value for each of the plurality of software applications and a business value for each of the plurality of software applications to the enterprise, wherein each respective complexity value and business value for each of the plurality of software applications is derived from the survey data; b) organizational standards for the enterprise c) server inventory data for the plurality of software applications; and d) learned approaches for creating cloud deployment models for the enterprise, wherein the learned approaches are determined according to analysis of prior approaches applied to one or more software applications by the enterprise or other enterprises; and

converting the cloud deployment model to an infrastructure-as-code definition for deployment to the cloud computing network.

18. The non-transitory computer readable medium of claim 17 , further comprising:

receiving a cloud deployment pattern selected by the enterprise, and

generating the cloud deployment model based, at least in part, on the cloud deployment pattern.

19. The non-transitory computer readable medium of claim 18 , further comprising selecting the cloud deployment model from among EC2 Persistence, EC2 Non-Persistence, Serverless and Container cloud deployment models.

20. The non-transitory computer readable medium of claim 19 , further comprising generating a custom cloud deployment model based on changes selected by the enterprise to at least one deployment parameter.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 30, 2020
From: CANDID PARTNERS, LLC
To: CANDID LABS, INC.
Reel/Frame 054774/0354 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2019
From: BAWCOM, AARON
To: CANDID PARTNERS, LLC
Reel/Frame 048189/0880 →
Cited By (8)
US 12,197,559 US 12,314,425 US 12,326,949 US 12,356,207 US 12,360,752 US 12,511,134 US 12,639,475 US 12,681,742