IP Library Granted Patent US 11,651,272
Granted Patent B2
US 11,651,272 · App. 16/028,747 · Granted May 16, 2023

Machine-learning-facilitated conversion of database systems

Inventors: Garima Srivastava (Bangalore, IN); Yeshwant More (Bangalore, IN)
Assignee: SAP SE
G06N20/00G06F16/23
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,651,272
App. No.
16/028,747
Granted
May 16, 2023
Kind
B2
Abstract

An improved system and process for machine-learning upgrade analysis and training thereof is provided herein. A request to analyze the time to upgrade a current system to a target system may be received. A change list having one or more changes for the target system may be read. Custom code for the current system may be compared to the change list to identify recommended changes to the custom code to upgrade the custom code to be compatible with the target system. The recommended changes may be classified into one or categories respectively via a trained first machine-learning algorithm. Time to upgrade the custom code for the respective classified changes may be estimated via a trained second machine-learning algorithm. The recommended changes, the classifications of the recommended changes, and the time estimates of the recommended changes may be provided.

Claims (50)

1. A computing system comprising:

one or more memories;

one or more processing units coupled to the one or more memories; and

one or more computer readable storage media storing instructions that, when executed, cause the computing system to perform operations comprising:

receiving training data, the training data comprising a first set of a first plurality of code change types in transitioning computing systems between computing system states and a set of actions that can be taken to, for respective code change types of the first plurality of code change types, reduce an effort in transitioning a computing system from a respective first state of a computing system to a respective second state of the computing system, wherein the first plurality of code change types comprises code change types for changes to custom code;

training a first machine-learning algorithm using at least a portion of the training data to provide a trained classifier;

receiving a request to analyze a transition of custom code in a first computing system from a first state of the first computing system to a second state of the first computing system, the request comprising one or more code change instances of one or more code change types of the plurality of change types;

submitting at least a first portion of the one or more code change instances to the trained classifier; and

receiving, from the trained classifier, for respective code change instances of at least a second portion of the first portion of the one or more code change instances, one or more actions of the set of actions that will reduce a transition effort associated with the respective code change instance in transitioning the first computing system between the first state and the second state, wherein the one or more actions of the set of actions comprise reducing a number of computing operations needed to complete the transition to reduce the transition effort.

2. The computing system of claim 1 , the operations further comprising:

generating a total time estimate to implement the one or more change instances in transitioning the first computing system between the first state and the second state,

generating a transition analysis report containing the total time estimate to implement the one or more change instances in transitioning the first computing system between the first state and the second state, and

providing the transition analysis report via a transition wizard in a user interface.

3. One or more non-transitory computer-readable storage media comprising:

computer-executable instructions that, when executed by a computing system comprising at least one hardware processor and at least one memory coupled to the at least one hardware processor, cause the computing system to receive training data, the training data comprising a first set of a first plurality of code change types in transitioning computing systems between computing system states and a set of actions that can be taken to, for respective code change types of the first plurality of code change types, reduce an effort in transitioning a computing system from a respective first state of a computing system to a respective second state of the computing system;

computer-executable instructions that, when executed by the computing system, cause the computing system to train a first machine-learning algorithm using at least a portion of the training data to provide a trained classifier;

computer-executable instructions that, when executed by the computing system, cause the computing system to receive a request to analyze a transition of code in a first computing system from a first state of the first computing system to a second state of the first computing system, the request comprising one or more code change instances of one or more code change types of the plurality of change types;

computer-executable instructions that, when executed by the computing system, cause the computing system to submit at least a first portion of the one or more code change instances to the trained classifier; and

computer-executable instructions that, when executed by the computing system, cause the computing system to receive, from the trained classifier, for respective code change instances of at least a second portion of the first portion of the one or more code change instances, one or more actions of the set of actions that will reduce a transition effort associated with the respective code change instance in transitioning the first computing system between the first state and the second state, wherein the one or more actions of the set of actions comprise reducing a number of computing operations needed to complete the transition to reduce the transition effort.

4. The one or more non-transitory computer-readable storage media of claim 3 , further comprising:

computer-executable instructions that, when executed by the computing system, cause the computing system to estimate a resource usage for transitioning the computing system from the respective first state of the computing system to the respective second state of the computing system.

5. The one or more non-transitory computer-readable storage media of claim 3 , further comprising:

computer-executable instructions that, when executed by the computing system, cause the computing system to calculate an estimated downtime to transition the computing system from the respective first state of the computing system to the respective second state of the computing system.

6. The one or more non-transitory computer-readable storage media of claim 3 , further comprising:

computer-executable instructions that, when executed by the computing system, cause the computing system to generate a total time estimate to implement the one or more change instances in transitioning the first computing system between the first state and the second state,

computer-executable instructions that, when executed by the computing system, cause the computing system to generate a transition analysis report containing the total time estimate to implement the one or more change instances in transitioning the first computing system between the first state and the second state, and

computer-executable instructions that, when executed by the computing system, cause the computing system to provide the transition analysis report via a transition wizard in a user interface.

7. A method, implemented by a computing system comprising at least one hardware processor and at least one memory coupled to the at least one hardware processor, the method comprising:

receiving training data, the training data comprising a first set of a first plurality of code change types in transitioning computing systems between computing system states and a set of actions that can be taken to, for respective code change types of the first plurality of code change types, reduce an effort in transitioning a computing system from a respective first state of a computing system to a respective second state of the computing system;

training a first machine-learning algorithm using at least a portion of the training data to provide a trained classifier;

receiving a request to analyze a transition of code in a first computing system from a first state of the first computing system to a second state of the first computing system, the request comprising one or more code change instances of one or more code change types of the plurality of change types;

submitting at least a first portion of the one or more code change instances to the trained classifier; and

receiving, from the trained classifier, for respective code change instances of at least a second portion of the first portion of the one or more code change instances, one or more actions of the set of actions that will reduce a transition effort associated with the respective code change instance in transitioning the first computing system between the first state and the second state wherein the one or more actions of the set of actions comprise ordering the at least a second portion of the first portion of the one or more code change instances to reduce the transition effort.

8. The method of claim 7 , the method further comprising:

estimating a resource usage to transition the computing system from the respective first state of the computing system to the respective second state of the computing system.

9. The method of claim 7 , the method further comprising:

calculating an estimated downtime to transition the computing system from the respective first state of the computing system to the respective second state of the computing system.

10. The computing system of claim 1 , the operations further comprising:

generating a total time estimate to implement the one or more change instances in transitioning the first computing system between the first state and the second state, and

generating a transition analysis report containing the total time estimate to implement the one or more change instances in transitioning the first computing system between the first state and the second state.

11. The computing system of claim 1 , wherein the custom code is code that is addition to, and different from, standard code for the computing system.

12. The computing system of claim 1 , wherein the custom code is transitioned independently from standard code in the computing system and the custom code is code that is addition to, and different from, standard code for the computing system.

13. The one or more non-transitory computer-readable storage media of claim 3 , wherein the first plurality of code change types comprises code change types for changes to custom code.

14. The one or more non-transitory computer-readable storage media of claim 13 , wherein the custom code is code that is addition to and different from standard code for the computing system and is transitioned independently from standard code in the computing system.

15. The one or more non-transitory computer-readable storage media of claim 13 , wherein the custom code is code that is addition to, and different from, standard code for the computing system.

16. The method of claim 7 , wherein the first plurality of code change types comprises code change types for changes to custom code.

17. The method of claim 16 , wherein the custom code is code that is addition to and different from standard code for the computing system and is transitioned independently from standard code in the computing system.

18. The method of claim 16 , wherein the custom code is code that is addition to and different from standard code for the computing system.

19. The computing system of claim 1 , wherein the reducing a number of computing operations comprises ordering the at least a second portion of the first portion of the one or more code change instances.

20. The computing system of claim 1 , wherein the reducing a number of computing operations comprises prioritizing the at least a second portion of the first portion of the one or more code change instances.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2018
From: SRIVASTAVA, GARIMA; MORE, YESHWANT
To: SAP SE
Reel/Frame 046296/0801 →
Continuity (1)
Related Publication 20200012970A1 · Jan 9, 2020