IP Library › Granted Patent US 12,299,418
Granted Patent B2
US 12,299,418 · App. 18/172,854 · Granted May 13, 2025

Static analysis for cloud integration flows using machine learning

Inventors: Vipul Khullar (New Delhi, IN); Kirti Sinha (Delhi, IN)
Assignee: SAP SE
G06F8/34G06F8/10
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,299,418
App. No.
18/172,854
Granted
May 13, 2025
Kind
B2
Abstract

In an implementation, a computer-implemented method, includes collecting, as collected integration flows (iFlows), published iFlows. Descriptions of the collected iFlows are extracted as extracted descriptions and the extracted descriptions are parsed. A list of one or more interchangeable operators is created. The collected iFlows are iterated through. Automated performance recommendations for a new iFlow are provided.

Claims (66)

1. A computer-implemented method, comprising:

collecting, as collected integration flows (iFlows), published iFlows;

extracting, as extracted descriptions, descriptions of the collected iFlows;

parsing the extracted descriptions;

creating a list of one or more interchangeable operators;

iterating through the collected iFlows, wherein iterating through the collected iFlows:

computes performance parameters and performance bottlenecks for newly generated iFlows;

chooses, as a chosen iFlow, an iFlow which fulfills a maximum of performance requirements or an iFlow with most efficient values for performance parameters;

calculates delta details between a published iFlow and the chosen iFlow; or

stores information about delta details for user reference; and

providing automated performance recommendations for a new iFlow.

2. The computer-implemented method of claim 1 , wherein parsing the extracted descriptions, comprises:

creating, as an operator list, a list of all operators used in each iFlow of the collected iFlows;

creating, using the operator list, a log of a probable configuration of each operator and a probability of the probable configuration; and

creating a list containing a next two probable operators.

3. The computer-implemented method of claim 2 , comprising:

generating a table containing each operator of the operator list, probable configuration of the operator, and the next two probably operators.

4. The computer-implemented method of claim 1 , wherein an operator set of the one or more interchangeable operators can include one or more of Parallel Multicast vs. Sequential Multicast, General Splitter vs. Iterating Splitter, or PGPEncryptor vs. PKCS7Encryptor.

5. The computer-implemented method of claim 1 , wherein iterating through the collected iFlows generates new iFlows with similar input/output combinations.

6. The computer-implemented method of claim 5 , wherein generating a plurality of new iFlows with similar input/output combinations includes: 1) replacing an operator/combination of operators with other operators having a same input/output data result and 2) replacing a configuration according to the list for a most probable configuration.

7. A non-transitory, computer-readable medium storing one or more instructions executable by a computer system to perform operations comprising:

collecting, as collected integration flows (iFlows), published iFlows;

extracting, as extracted descriptions, descriptions of the collected iFlows;

parsing the extracted descriptions;

creating a list of one or more interchangeable operators;

iterating through the collected iFlows, wherein iterating through the collected iFlows:

computes performance parameters and performance bottlenecks for newly generated iFlows;

chooses, as a chosen iFlow, an iFlow which fulfills a maximum of performance requirements or an iFlow with most efficient values for performance parameters;

calculates delta details between a published iFlow and the chosen iFlow; or

stores information about delta details for user reference; and

providing automated performance recommendations for a new iFlow.

8. The non-transitory, computer-readable medium of claim 7 , wherein parsing the extracted descriptions, comprises:

creating, as an operator list, a list of all operators used in each iFlow of the collected iFlows;

creating, using the operator list, a log of a probable configuration of each operator and a probability of the probable configuration; and

creating a list containing a next two probable operators.

9. The non-transitory, computer-readable medium of claim 8 , comprising:

generating a table containing each operator of the operator list, probable configuration of the operator, and the next two probably operators.

10. The non-transitory, computer-readable medium of claim 7 , wherein an operator set of the one or more interchangeable operators can include one or more of Parallel Multicast vs. Sequential Multicast, General Splitter vs. Iterating Splitter, or PGPEncryptor vs. PKCS7Encryptor.

11. The non-transitory, computer-readable medium of claim 7 , wherein iterating through the collected iFlows generates new iFlows with similar input/output combinations.

12. The non-transitory, computer-readable medium of claim 11 , wherein generating a plurality of new iFlows with similar input/output combinations includes:

1) replacing an operator/combination of operators with other operators having a same input/output data result and

2) replacing a configuration according to the list for a most probable configuration.

13. A computer-implemented system, comprising:

one or more computers; and

one or more computer memory devices interoperably coupled with the one or more computers and having tangible, non-transitory, machine-readable media storing one or more instructions that, when executed by the one or more computers, perform one or more operations comprising:

collecting, as collected integration flows (iFlows), published iFlows;

extracting, as extracted descriptions, descriptions of the collected iFlows;

parsing the extracted descriptions;

creating a list of one or more interchangeable operators;

iterating through the collected iFlows, wherein iterating through the collected iFlows:

computes performance parameters and performance bottlenecks for newly generated iFlows;

chooses, as a chosen iFlow, an iFlow which fulfills a maximum of performance requirements or an iFlow with most efficient values for performance parameters;

calculates delta details between a published iFlow and the chosen iFlow; or

stores information about delta details for user reference; and

providing automated performance recommendations for a new iFlow.

14. The computer-implemented system of claim 13 , wherein parsing the extracted descriptions, comprises:

creating, as an operator list, a list of all operators used in each iFlow of the collected iFlows;

creating, using the operator list, a log of a probable configuration of each operator and a probability of the probable configuration; and

creating a list containing a next two probable operators.

15. The computer-implemented system of claim 14 , comprising:

generating a table containing each operator of the operator list, probable configuration of the operator, and the next two probably operators.

16. The computer-implemented system of claim 13 , wherein an operator set of the one or more interchangeable operators can include one or more of Parallel Multicast vs. Sequential Multicast, General Splitter vs. Iterating Splitter, or PGPEncryptor vs. PKCS7Encryptor.

17. The computer-implemented system of claim 13 , wherein iterating through the collected iFlows generates new iFlows with similar input/output combinations.

18. The computer-implemented system of claim 17 , wherein generating a plurality of new iFlows with similar input/output combinations includes:

1) replacing an operator/combination of operators with other operators having a same input/output data result and

2) replacing a configuration according to the list for a most probable configuration.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 22, 2023
From: KHULLAR, VIPUL; SINHA, KIRTI
To: SAP SE
Reel/Frame 062772/0001 →
Continuity (1)
Related Publication 20240281221A1 · Aug 22, 2024
References Cited (13)
US 10432707B2 · Hosie · 2019 [cited by examiner]
US 10726040B2 · Kapoor et al. · 2020 [cited by applicant]
US 11195054B2 · Sinha et al. · 2021 [cited by applicant]
US 11379218B2 · Khullar · 2022 [cited by applicant]
US 11514044B2 · Tiwary et al. · 2022 [cited by applicant]
US 11514275B2 · Tiwary et al. · 2022 [cited by applicant]
US 11790224B2 · Modi · 2023 [cited by examiner]
US 20200177476A1 · Agarwal · 2020 [cited by examiner]
US 20210240750A1 · Schwartz · 2021 [cited by examiner]
US 20220067207A1 · Lindsay · 2022 [cited by examiner]
US 20220318222A1 · Khullar et al. · 2022 [cited by applicant]
US 20220405091A1 · Mahanta et al. · 2022 [cited by applicant]
CN 110688213A · 2020 [cited by examiner]