Proactive Notifications for Robotic Process Automation
US-2022357940-A1 · Nov 10, 2022 · US
US12288044B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12288044-B2 |
| Application number | US-202318160125-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 26, 2023 |
| Priority date | Jan 26, 2023 |
| Publication date | Apr 29, 2025 |
| Grant date | Apr 29, 2025 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A computer implemented method creates microservices for an application. A number of processor units clusters programs and data structures for the application using runtime metadata to form groups of the programs and data structures. The runtime metadata is obtained from running the application. The number of processor units creates a design for the microservices for the application using the groups of the programs and the data structures.
Opening claim text (preview).
What is claimed is: 1. A computer implemented method for creating microservices for an application, the computer implemented method comprising: clustering, by a number of processor units, programs and data structures for the application using runtime metadata to form groups of the programs and the data structures for the microservices, wherein the runtime metadata is obtained from running the application and wherein the runtime metadata comprises information describing how the programs in the application interacts with data in the data structures in response to running the application; creating, by the number of processor units, a design for the microservices for the application using the groups of the programs and the data structures; recommending, by the number of processor units, updates to the groups to meet a set of objectives; and performing, by the number of process or units, a number of the updates to the groups of the programs and the data structures based a selection of the number of the updates, wherein each group in the groups is for a microservice in the microservices and wherein recommending, by the number of processor units, the updates to the groups to meet the set of objectives comprises: identifying a first number of cross database queries that access a data structure in a source database for the data structure; determining a first execution frequency for the first number of cross database queries; identifies a second number of cross database queries that occur from placing the data structure in a target database; determining a second execution frequency for the second number of cross database queries; and recommending moving the data structure from the source database to the target database in response to the second execution frequency being less than the first execution frequency by a threshold. 2. The computer implemented method of claim 1 , wherein clustering, by the number of processor units, the programs and the data structures for the application using the runtime metadata to form the groups of the programs and the data structures comprises: creating, by the number of processor units, a call graph, wherein nodes in the call graph represent the programs and the data structures in the application and wherein edges between the nodes identify relationships between the programs and between the programs and the data structures; and clustering, by the number of processor units, the programs and the data structures for the application using the call graph and the runtime metadata to form the groups of the programs and the data structures, wherein the runtime metadata is obtained from running the application. 3. The computer implemented method of claim 2 further comprising: setting, by the number of processor units, weights for the edges in the call graph using the runtime metadata. 4. The computer implemented method of claim 3 , wherein the runtime metadata used to set the weights are selected from a group consisting at least one of a frequency a table is accessed by a particular program, an execution frequency of queries on a database, a frequency at which different queries are made by a program, average time to execute a query, change in data schemas, times at which the queries are executed, or an average output size for the query. 5. The computer implemented method of claim 1 , wherein each group in the groups is for a microservice in the microservices and wherein recommending, by the number of processor units, the updates to the groups to meet the set of objectives comprises: recommending, by the number of processor units, the updates to the groups that reduce data access issues in accessing data in the microservices, wherein the updates comprises placement of the programs and data structures in the groups taking into account the runtime metadata using criteria that reduces the data access issues. 6. The computer implemented method of claim 1 , further comprising: determining, by the number of processor units, an order in which to create the microservices for the application based a complexity of each of the microservices. 7. A computer system comprising: a number of processor units, wherein the number of processor units executes program instructions to: cluster programs and data structures for an application using runtime metadata to form groups of the programs and the data structures for microservices, wherein the runtime metadata is obtained from running the application and wherein the runtime metadata comprises information describing how the programs in the application interacts with data in the data structures in response to running the application; create a design for microservices for the application using the groups of the programs and the data structures; recommend updates to the groups to meet a set of objectives; and perform a number of the updates to the groups of the programs and the data structures on a selection of the number of the updates, wherein each group in the groups is for a microservice in the microservices and wherein recommend updates to the groups to meet the set of objectives comprises: identify a first number of cross database queries that access a data structure in a source database for the data structure; determine a first execution frequency for the first number of cross database queries; identify a second number of cross database queries that occur from placing the data structure in a target database; determine a second execution frequency for the second number of cross database queries; and recommend moving the data structure from the source database to the target database in response to the second execution frequency being less than the first execution frequency by a threshold. 8. The computer system of claim 7 , wherein in clustering the programs and the data structures for the application using the runtime metadata to form the groups of the programs and the data structures, the number of processor units executes the program instructions to: create a call graph, wherein nodes in the call graph represent the programs and the data structures in the application and wherein edges between the nodes identify relationships between the programs and between the programs and the data structures; and cluster the programs and the data structures for the application using the call graph and the runtime metadata to form the groups of the programs and the data structures, wherein the runtime metadata is obtained from running the application. 9. The computer system of claim 8 , wherein the number of processor units executes the program instructions to: set weights for the edges in the call graph using the runtime metadata. 10. The computer system of claim 9 , wherein the runtime metadata used to set the weights are selected from a group consisting at least one of a frequency a table is accessed by a particular program, an execution frequency of queries on a database, a frequency at which different queries are made by a program, average time to execute a query, change in data schemas, times at which the queries are executed, or an average output size for the query. 11. The computer system of claim 7 , wherein in recommending the updates to the groups to meet the set of objectives, the number of processor units executes the program instructions to: recommend the updates to the groups that reduce data access issues in accessing data in the microservices. 12. The computer system of claim 7 , wherein the number of processor units executes the program instructions to: determine an order in which to create the microservices for the application based a complexity of each of the microservices.
Related publications grouped by family.
Answers are generated from the same data shown on this page.