# US 10,481,970 B2 · Dynamic cloud deployment and calibration tool

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,481,970 B2
- Document ID: US10481970B2
- Status: Granted
- Kind: B2
- Application number: 15/823,895
- Filed: 2017-11-28
- Published: 2019-05-30
- Granted: 2019-11-19
- Earliest claimed: 2017-11-28
- Assignees: Bank of America Corporation
- Applicants: Bank of America Corporation
- Inventors: Kiran Kumar Ampabathina; Balamurali Lakshminarayanan; Kalyan Chakravarty Saraswatula; Rahul Devane; Srinath Nelakuditi
- Web page: https://patentgrep.com/patent/US10481970B2

## CPC

- G06F 11/079: {Root cause analysis, i.e. error or fault diagnosis (in a hardware test environment G06F11/22; in a software test environment G06F11/36)}
- G06F 8/60: Software deployment
- G06F 11/0709: {in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems}
- G06K 7/1417: {2D bar codes}
- H04L 63/083: {using passwords (cryptographic mechanisms or cryptographic arrangements for entity authentication using a predetermined code H04L9/3226)}
- H04L 67/10: in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46)
- H04L 67/34: {involving the movement of software or configuration parameters (network booting or remote initial program loading [RIPL] G06F9/4416)}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06K: GRAPHICAL DATA READING (image or video recognition or understanding G06V); PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Systems, apparatus and methods for intelligent deployment(s) of application objects are provided. The systems, apparatus and methods may include one or more dynamic parameters retrieved from metadata table(s). The parameter(s) may be used to calibrate the deployment(s). The parameter(s) may be associated with previous failed deployment(s). Calibration may be automatic. Calibration may include email sending and/or email previewing components. A testing environment may be used prior to actual deployment.

## Claims

### Claim 1

An application deployment engine for calibrating deployment of a cloud-based application object, the engine comprising:
a processor; and
a machine-readable memory including machine-executable instructions, the instructions, when executed by the processor, instructing the processor to:
receive authentication information of a user;
perform an authentication of the user based on the received authentication information;
upon the authentication, receive a selection by the user to perform an application object transferal, the selection comprising:
the application object selected for inclusion in the transferal;
a selected source environment of the object; and
a selected entity unit receiving the transferal;
retrieve at least one previously stored dynamic parameter from a metadata table;
using an intelligent algorithm, perform a determination of a quality of the application object deployment, the intelligent algorithm being based on:
a detected status of the application object, the application object status including one of:
a draft state;
a deleted state;
a stopped state; and
a published state;
a detected readiness value of a target environment associated with the selected entity unit;
a detected readiness value of a preview component of the application object;
a detected readiness value of components associated with electronic transmission of the application object; and
the dynamic parameter;
attempt deploying of the application object;
upon a failure of the deploying, determine at least one parameter associated with the failure; and
insert the at least one parameter into the metadata table for use in calibrating later deployment attempts.

### Claim 2 (depends on 1)

The engine of claim 1 wherein the electronic transmission includes email.

### Claim 3 (depends on 1)

The engine of claim 1 wherein the electronic transmission includes a virtual drop box.

### Claim 4 (depends on 1)

The engine of claim 1 wherein the determination includes assigning a risk-of-failure weight to each of:
the object status, wherein the risk-of-failure weight assigned to the published state is lower than the weight assigned to the draft state, the deleted state and the stopped state;
the readiness of the preview component;
the readiness of the components associated with the electronic transmission; and
the dynamic parameter.

### Claim 5 (depends on 1)

The engine of claim 1 wherein the quality is associated with a likelihood of the failure.

### Claim 6 (depends on 1)

The engine of claim 1 wherein the authentication information includes at least one of:
a password;
a personal identification number;
biometric information; and
geographic information.

### Claim 7 (depends on 1)

The engine of claim 1 wherein the target environment includes a simulation environment and the deployment is executed by the processor prior to deploying of the application to an enterprise client.

### Claim 8

A method for deploying at least one cloud-based application object, the method comprising:
authenticating a user;
selecting the application object for transferal;
selecting a source environment of the object;
selecting a destination environment for receiving the transferal;
retrieving at least one dynamic parameter from a metadata table, the at least one dynamic parameter associated, in the metadata table, with a success value of at least one previous deployment attempt;
performing a determination of a level of readiness of components associated with the object, the determination depending on:
a detected status of at least one of the components, the status including one of:
a draft state;
a deleted state;
a published state; and
a stopped state;
an evaluation of a readiness value of the destination environment;
a detected readiness value of a preview component of the object;
a determined functionality value of an electronic transmission of the object; and
the at least one dynamic parameter in association with the success value;
upon the determination indicating a first level of readiness of the components:
recalibrating one or more settings affecting the readiness; and
recalculating the determination based on the recalibrated settings;
upon the determination indicating a second level of readiness of the components, the second level indicating a determined readiness greater than the determined readiness indicated by the first level, attempting deployment of the application object;
determining a success level of the deployment; and
adjusting the success value of the at least one dynamic parameter, in the metadata table, to include the determined success level of the deployment.

### Claim 9 (depends on 8)

The method of claim 8 further comprising:
upon the determination indicating a third level of readiness of the components, the third level indicating a determined readiness less than the determined readiness indicated by the first level, at least one of:
aborting the deploying; and
pausing the deploying.

### Claim 10 (depends on 8)

The method of claim 8 wherein the electronic transmission includes email.

### Claim 11 (depends on 8)

The method of claim 8 wherein the electronic transmission includes a virtual drop box.

### Claim 12 (depends on 8)

The method of claim 8 wherein the indicator of the success level includes at least one failed parameter.

### Claim 13 (depends on 8)

The method of claim 8 wherein the authenticating includes at least one of:
collecting biometric data of the user;
collecting location data of the user; and
scanning a matrix bar code presented on a device of the user.

### Claim 14 (depends on 8)

The method of claim 8 wherein the destination environment includes a simulation environment and the deployment is executed by the processor prior to deploying of the application to an enterprise client.

### Claim 15

An application deployment system for performing a deployment of at least one cloud-based application, the application including a plurality of components, the system comprising:
a processor; and
a machine-readable memory including machine-executable instructions, the instructions, when executed by the processor, instructing the processor to:
evaluate a readiness of a target environment for receiving the deployment;
prior to the deployment, perform an assignment of a deployment-quality score to the deployment, the score based on four determinations, each of the four determinations associated with a weight contributing 25% toward a total of the score, the determinations including:
a determined status of the components, the status including one of:
a draft state;
a deleted state;
a stopped state; and
a published state;
a determined readiness of an electronic transmission preview function included in the components;
a determined functionality of an electronic transmission send function included in the components; and
a determined readiness of at least one dynamic component associated with at least one previously stored dynamic parameter;
attempt the deployment; and
upon a detected failure of the deployment, add a total score and at least one dynamic parameter associated with the failure to a metadata table;
wherein the electronic transmission includes email.

### Claim 16 (depends on 15)

The system of claim 15 wherein the electronic transmission includes a virtual drop box.

### Claim 17 (depends on 15)

The system of claim 15 wherein the target environment includes a simulation environment and the deployment is executed by the processor prior to deploying of the application to an enterprise client.

### Claim 18

An enterprise application deployment engine for performing a deployment of at least one cloud-based application to at least one target environment, the application including a plurality of components, the engine comprising:
a processor; and
a machine-readable memory including machine executable instructions, the instructions, when executed by the processor, instructing the processor to:
prior to the deployment, perform an assignment of a deployment-quality score to the deployment, the score based on a plurality of determinations including:
a determined status of the application, the status including one of:
a draft state;
a deleted state;
a stopped state; and
a published state;
a determined readiness of an electronic transmission preview component;
a determined functionality of an electronic transmission send component; and
a determined readiness of at least one dynamic component including at least one dynamic parameter;
evaluate a readiness of the target environment for receiving the deployment; and
upon a detected failure of the deployment, add a total score and at least one dynamic parameter associated with the failure to a metadata table;
wherein the electronic transmission includes a virtual drop box.

### Claim 19 (depends on 18)

The engine of claim 18 wherein the electronic transmission includes email.

### Claim 20 (depends on 18)

The engine of claim 18 wherein the at least one target environment includes a plurality of target environments.

### Claim 21 (depends on 18)

The engine of claim 18 wherein the instructions, when executed by the processor, further instruct the processor to, prior to the deployment, perform an authentication of an identifier of a user executing the deployment, the authentication including at least one of at least one of:
collecting biometric data of the user;
receiving at least one alphanumeric code from the user;
collecting location data of the user; and
scanning a matrix bar code presented on a device of the user.

### Claim 22 (depends on 18)

The engine of claim 18 wherein the target environment includes a simulation environment and the deployment is executed by the processor prior to deploying of the application to an enterprise client.
