IP Library Granted Patent US 11,900,091
Granted Patent B2
US 11,900,091 · App. 17/146,817 · Granted Feb 13, 2024

Extensible upgrade and modification as a service

Inventors: Nilay Mishra (Bangalore, IN); Farook Shaik (Hyderabad, IN); Reshma Nair (Bangalore, IN); Gaurav Suwal (Bhaktapur, IN); Vishnu Prabhu Sundarrajan (Coimbatore, IN); Manikandan Pammal Rathinavelu (Cedar Park, TX); Bala Kumar (Bangalore, IN); Narendra Kumar (Ongole, IN); Hung T. Dinh (Austin, TX); Vijaya P. Sekhar (Bangalore, IN); Abhijit Mishra (Bangalore, IN); Satish Ranjan Das (Round Rock, TX); Krishna Mohan Akkinapalli (Leander, TX)
Assignee: Dell Products, L.P.
G06F8/65G06F8/36G06F8/61G06F8/76G06F9/451
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 11,900,091
App. No.
17/146,817
Granted
Feb 13, 2024
Kind
B2
Abstract

Methods, apparatus, and processor-readable storage media for implementing extensible upgrade and modification as a service are provided herein. An example computer-implemented method includes processing one or more modifiers, wherein each modifier includes an independent processing unit having a given canonical structure and is configured to execute one or more automated actions related to at least one of application modification and application migration; obtaining data pertaining to multiple applications across multiple computing environments; determining, based at least in part on processing at least a portion of the obtained data, at least one of the one or more modifiers applicable for use in executing at least one of the one or more automated actions in connection with at least a portion of the multiple applications; and executing the at least one of the one or more automated actions using the at least one determined modifier.

Claims (38)

1. A computer-implemented method comprising:

processing multiple modifiers, wherein each modifier comprises an independent processing unit having a given canonical structure, wherein at least a first of the multiple modifiers is configured to execute one or more automated actions related to application modification pertaining at least to application versioning, and wherein at least a second of the multiple modifiers is configured to execute one or more automated actions related to application migration;

obtaining data pertaining to multiple applications across multiple computing environments;

determining, based at least in part on processing at least a portion of the obtained data, at least a portion of the multiple modifiers applicable for use in connection with at least a portion of the multiple applications, wherein determining the at least a portion of the multiple modifiers comprises determining a combination of two or more of the modifiers for concurrent use, wherein the combination of two or more of the modifiers is determined based at least in part on satisfying one or more action orchestration requirements associated with the at least a portion of the multiple applications using the combination of two or more of the modifiers; and

executing one or more of at least one of the one or more automated actions related to application modification and at least one of the one or more automated actions related to application migration using the at least a portion of the multiple modifiers determined for use;

wherein the method is performed by at least one processing device comprising a processor coupled to a memory.

2. The computer-implemented method of claim 1 , wherein determining the at least a portion of the multiple modifiers applicable for use in connection with at least a portion of the multiple applications comprises determining a set of two or more of the modifiers for sequential use based at least in part on one or more action orchestration requirements.

3. The computer-implemented method of claim 1 , wherein processing the multiple modifiers comprises creating one or more new modifiers.

4. The computer-implemented method of claim 1 , wherein processing the multiple modifiers comprises searching a set of one or more existing modifiers.

5. The computer-implemented method of claim 4 , wherein processing the multiple modifiers comprises modifying at least one of the one or more existing modifiers using at least one user interface.

6. The computer-implemented method of claim 1 , wherein the one or more of at least one of the one or more automated actions related to application modification and at least one of the one or more automated actions related to application migration comprise one or more automated security-related remediation actions in connection with one or more middleware products.

7. The computer-implemented method of claim 1 , wherein the one or more of at least one of the one or more automated actions related to application modification and at least one of the one or more automated actions related to application migration comprise one or more automated actions pertaining to at least one of messaging, one or more code fixes, one or more deployment pipelines, one or more cloud infrastructure services, and one or more application programming interface gateways.

8. The computer-implemented method of claim 1 , further comprising:

reusing the at least a portion of the multiple modifiers based at least in part on the given canonical structure shared across the multiple modifiers.

9. The computer-implemented method of claim 1 , further comprising:

storing the at least a portion of the multiple modifiers in at least one modifiable database.

10. A non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes the at least one processing device:

to process multiple modifiers, wherein each modifier comprises an independent processing unit having a given canonical structure, wherein at least a first of the multiple modifiers is configured to execute one or more automated actions related to application modification pertaining at least to application versioning, and wherein at least a second of the multiple modifiers is configured to execute one or more automated actions related to application migration;

to obtain data pertaining to multiple applications across multiple computing environments;

to determine, based at least in part on processing at least a portion of the obtained data, at least a portion of the multiple modifiers applicable for use in connection with at least a portion of the multiple applications, wherein determining the at least a portion of the multiple modifiers comprises determining a combination of two or more of the modifiers for concurrent use, wherein the combination of two or more of the modifiers is determined based at least in part on satisfying one or more action orchestration requirements associated with the at least a portion of the multiple applications using the combination of two or more of the modifiers; and

to execute one or more of at least one of the one or more automated actions related to application modification and at least one of the one or more automated actions related to application migration using the at least a portion of the multiple modifiers determined for use.

11. The non-transitory processor-readable storage medium of claim 10 , wherein determining the at least a portion of the multiple modifiers applicable for use in connection with at least a portion of the multiple applications comprises determining a set of two or more of the modifiers for sequential use based at least in part on one or more action orchestration requirements.

12. The non-transitory processor-readable storage medium of claim 10 , wherein processing the multiple modifiers comprises creating one or more new modifiers.

13. The non-transitory processor-readable storage medium of claim 10 , wherein processing the multiple modifiers comprises searching a set of one or more existing modifiers and modifying at least one of the one or more existing modifiers using at least one user interface.

14. An apparatus comprising:

at least one processing device comprising a processor coupled to a memory;

the at least one processing device being configured:

to process multiple modifiers, wherein each modifier comprises an independent processing unit having a given canonical structure, wherein at least a first of the multiple modifiers is configured to execute one or more automated actions related to application modification pertaining at least to application versioning, and wherein at least a second of the multiple modifiers is configured to execute one or more automated actions related to application migration;

to obtain data pertaining to multiple applications across multiple computing environments;

to determine, based at least in part on processing at least a portion of the obtained data, at least a portion of the multiple modifiers applicable for use in connection with at least a portion of the multiple applications, wherein determining the at least a portion of the multiple modifiers comprises determining a combination of two or more of the modifiers for concurrent use, wherein the combination of two or more of the modifiers is determined based at least in part on satisfying one or more action orchestration requirements associated with the at least a portion of the multiple applications using the combination of two or more of the modifiers; and

to execute one or more of at least one of the one or more automated actions related to application modification and at least one of the one or more automated actions related to application migration using the at least a portion of the multiple modifiers determined for use.

15. The apparatus of claim 14 , wherein determining the at least a portion of the multiple modifiers applicable for use in connection with at least a portion of the multiple applications comprises determining a set of two or more of the modifiers for sequential use based at least in part on one or more action orchestration requirements.

16. The apparatus of claim 14 , wherein processing the multiple modifiers comprises creating one or more new modifiers.

17. The apparatus of claim 14 , wherein processing the multiple modifiers comprises searching a set of one or more existing modifiers and modifying at least one of the one or more existing modifiers using at least one user interface.

18. The apparatus of claim 14 , wherein the one or more of at least one of the one or more automated actions related to application modification and at least one of the one or more automated actions related to application migration comprise one or more automated security-related remediation actions in connection with one or more middleware products.

19. The apparatus of claim 14 , wherein the one or more of at least one of the one or more automated actions related to application modification and at least one of the one or more automated actions related to application migration comprise one or more automated actions pertaining to at least one of messaging, one or more code fixes, one or more deployment pipelines, one or more cloud infrastructure services, and one or more application programming interface gateways.

20. The apparatus of claim 14 , wherein the at least one processing device is further configured:

to reuse the at least a portion of the multiple modifiers based at least in part on the given canonical structure shared across the multiple modifiers.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (055479/0342) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0460 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (055479/0051) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0663 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056136/0752) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0771 →
RELEASE OF SECURITY INTEREST AT REEL 055408 FRAME 0697 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0553 →
SECURITY INTEREST Recorded Mar 3, 2021
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 056136/0752 →
SECURITY INTEREST Recorded Mar 3, 2021
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 055479/0051 →
SECURITY INTEREST Recorded Mar 3, 2021
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 055479/0342 →
SECURITY AGREEMENT Recorded Feb 25, 2021
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 055408/0697 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2021
From: MISHRA, NILAY; SHAIK, FAROOK; NAIR, RESHMA; SUWAL, GAURAV; SUNDARRAJAN, VISHNU PRABHU; RATHINAVELU, MANIKANDAN PAMMAL; KUMAR, BALA; KUMAR, NARENDRA; DINH, HUNG T.; SEKHAR, VIJAYA P.; MISHRA, ABHIJIT; DAS, SATISH RANJAN; AKKINAPALLI, KRISHNA MOHAN
To: DELL PRODUCTS L.P.
Reel/Frame 054894/0100 →
Continuity (1)
Related Publication 20220222053A1 · Jul 14, 2022