IP Library Granted Patent US 12,223,309
Granted Patent B2
US 12,223,309 · App. 18/219,196 · Granted Feb 11, 2025

System and method for implementing a platform and language agnostic smart SDK upgrade module

Inventors: Kumar Rao Krishnagi (Powell, OH); Matthew J Porter (Mechanicsburg, OH); Mark Alan Wells (Columbus, OH); Jerome Joseph (Lewis Center, OH); Sharmila Prakash (Columbus, OH); Satvika Eda (Warangal, IN)
Assignee: JPMORGAN CHASE BANK, N.A.
G06F8/65G06F8/31G06F8/443G06N20/00
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 12,223,309
App. No.
18/219,196
Granted
Feb 11, 2025
Kind
B2
Abstract

Various methods, apparatuses/systems, and media for automatically upgrading an application are disclosed. A processor creates a dynamic machine learning (ML) model; trains the dynamic ML model and scans for SDK upgrade for the application against the dynamic ML model by implementing ML algorithm for predictions. The processor executes the SDK upgrade in response to detecting that the training of the dynamic ML model is completed to trigger the processor to perform the following automated processes: implement the ML algorithm against the trained dynamic ML model to generate predictive results data for deprecated reference corresponding to the application; evaluate the predictive results data to determine whether there is a match for the deprecated reference; and when it is determined that there is a match for the deprecated reference, automatically replace code and upgrade the application to newer version of the programming language specification.

Claims (61)

1. A method for automatically upgrading an application by utilizing one or more processors along with allocated memory, the method comprising:

scanning for SDK (Software Development Kit) upgrade for an application against a dynamic machine learning (ML) model by implementing ML algorithm for predictions in upgrading the application to a newer version of a programming language specification;

detecting whether training of the dynamic ML model is completed or not;

executing the SDK upgrade in response to detecting that the training of the dynamic ML model is completed to trigger the following automated processes:

implementing the ML algorithm against the trained dynamic ML model to generate predictive results data for deprecated reference corresponding to the application;

evaluating the predictive results data to determine whether there is a match for the deprecated reference; and

when it is determined that there is a match for the deprecated reference, automatically replacing code and upgrading the application to the newer version of the programming language specification.

2. The method according to claim 1 , wherein, when it is determined that there is no match for the deprecated reference, the method further comprising:

recursively adding pattern or structure to the dynamic ML model for future analysis.

3. The method according to claim 1 , wherein the deprecated reference includes application programming interface (API), tools, dependency patterns, and their respective equivalent replacements or alternative for upgrading the application.

4. The method according to claim 3 , wherein training the dynamic ML model further comprising:

training the dynamic ML model in a supervised manner that includes training the dynamic ML model with known deprecated API, tools, dependency patterns and their respective equivalent replacements or alternatives for upgrading the application.

5. The method according to claim 3 , wherein training the dynamic ML model further comprising:

training the dynamic ML model in an unsupervised manner that includes, while the dynamic ML model is being utilized for predictive analysis, recursively adding any unknown patterns to the dynamic ML model without any alternatives.

6. The method according to claim 1 , wherein, when the application is a legacy application, the method further comprising:

including the SDK to the application as a dependency, wherein the SDK acts as a wrapper around implementation for the deprecated reference.

7. The method according to claim 6 , further comprising:

creating a map that links between older modules and newer SDK modules corresponding to the application;

storing the map within the dynamic ML model; and

updating the legacy application by parsing existing project and utilizing the dynamic ML model.

8. A system for automatically upgrading an application, the system comprising:

a processor; and

a memory operatively connected to the processor via a communication interface, the memory storing computer readable instructions, when executed, causes the processor to:

scan for SDK (Software Development Kit) upgrade for an application against a dynamic machine learning (ML) model by implementing ML algorithm for predictions in upgrading the application to a newer version of a programming language specification;

detect whether training of the dynamic ML model is completed or not;

execute the SDK upgrade in response to detecting that the training of the dynamic ML model is completed to further cause the processor to perform the following automated processes:

implement the ML algorithm against the trained dynamic ML model to generate predictive results data for deprecated reference corresponding to the application;

evaluate the predictive results data to determine whether there is a match for the deprecated reference; and

when it is determined that there is a match for the deprecated reference, automatically replace code and upgrade the application to the newer version of the programming language specification.

9. The system according to claim 8 , wherein, when it is determined that there is no match for the deprecated reference, the processor is further configured to:

recursively add pattern or structure to the dynamic ML model for future analysis.

10. The system according to claim 8 , wherein the deprecated reference includes application programming interface (API), tools, dependency patterns, and their respective equivalent replacements or alternative for upgrading the application.

11. The system according to claim 10 , wherein in training the dynamic ML model, the processor is further configured to:

train the dynamic ML model in a supervised manner that includes training the dynamic ML model with known deprecated API, tools, dependency patterns and their respective equivalent replacements or alternatives for upgrading the application.

12. The system according to claim 10 , wherein in training the dynamic ML model, the processor is further configured to:

train the dynamic ML model in an unsupervised manner that includes, while the dynamic ML model is being utilized for predictive analysis, recursively add any unknown patterns to the dynamic ML model without any alternatives.

13. The system according to claim 8 , wherein, when the application is a legacy application, the processor is further configured to:

include the SDK to the application as a dependency, wherein the SDK acts as a wrapper around implementation for the deprecated reference.

14. The system according to claim 13 , wherein the processor is further configured to:

create a map that links between older modules and newer SDK modules corresponding to the application;

store the map within the dynamic ML model; and

update the legacy application by parsing existing project and utilize the dynamic ML model.

15. A non-transitory computer readable medium configured to store instructions for automatically upgrading an application, wherein, when executed, the instructions cause a processor to perform the following:

scanning for SDK (Software Development Kit) upgrade for an application against a dynamic machine learning (ML) model by implementing ML algorithm for predictions in upgrading the application to a newer version of a programming language specification;

detecting whether training of the dynamic ML model is completed or not;

executing the SDK upgrade in response to detecting that the training of the dynamic ML model is completed to trigger the following automated processes:

implementing the ML algorithm against the trained dynamic ML model to generate predictive results data for deprecated reference corresponding to the application;

evaluating the predictive results data to determine whether there is a match for the deprecated reference; and

when it is determined that there is a match for the deprecated reference, automatically replacing code and upgrading the application to the newer version of the programming language specification.

16. The non-transitory computer readable medium according to claim 15 , wherein, when it is determined that there is no match for the deprecated reference, the instructions, when executed, further cause the processor to perform the following:

recursively adding pattern or structure to the dynamic ML model for future analysis.

17. The non-transitory computer readable medium according to claim 15 , wherein the deprecated reference includes application programming interface (API), tools, dependency patterns, and their respective equivalent replacements or alternative for upgrading the application.

18. The non-transitory computer readable medium according to claim 17 , wherein in training the dynamic ML model, the instructions, when executed, further cause the processor to perform the following:

training the dynamic ML model in a supervised manner that includes training the dynamic ML model with known deprecated API, tools, dependency patterns and their respective equivalent replacements or alternatives for upgrading the application.

19. The non-transitory computer readable medium according to claim 17 , wherein in training the dynamic ML model, the instructions, when executed, further cause the processor to perform the following:

training the dynamic ML model in an unsupervised manner that includes, while the dynamic ML model is being utilized for predictive analysis, recursively adding any unknown patterns to the dynamic ML model without any alternatives.

20. The non-transitory computer readable medium according to claim 15 , wherein, when the application is a legacy application, the instructions, when executed, further cause the processor to perform the following:

including the SDK to the application as a dependency, wherein the SDK acts as a wrapper around implementation for the deprecated reference;

creating a map that links between older modules and newer SDK modules corresponding to the application;

storing the map within the dynamic ML model; and

updating the legacy application by parsing existing project and utilizing the dynamic ML model.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 7, 2023
From: RAO KRISHNAGI, KUMAR; PORTER, MATTHEW J; WELLS, MARK ALAN; JOSEPH, JEROME; PRAKASH, SHARMILA; EDA, SATVIKA
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064184/0292 →
Priority Claims (1)
IN 202111047061 · Oct 18, 2021 · national
Continuity (2)
Continuation 17456970 · Nov 30, 2021
Related Publication 20230350665A1 · Nov 2, 2023
References Cited (8)
US 10503905B1 · Misra · 2019 [cited by examiner]
US 20200019393A1 · Vichare · 2020 [cited by examiner]
US 20200409780A1 · Balasubramanian · 2020 [cited by examiner]
US 20210056007A1 · Viswanathan · 2021 [cited by examiner]
CN 109254914 · 2019 [cited by applicant]
CN 109254914A · 2019 [cited by examiner]
CN 115310582 · 2022 [cited by applicant]
CN 115310582A · 2022 [cited by examiner]