IP Library › Granted Patent US 11,422,790
Granted Patent B1
US 11,422,790 · App. 17/222,728 · Granted Aug 23, 2022

Multiple versions of on-premises legacy application in a microservices environment

Inventors: Henning Zahn (Muehlenbeck, DE); Daniel Kirmse (Berlin, DE)
Assignee: SAP SE
G06F8/65G06N5/04G06N20/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 11,422,790
App. No.
17/222,728
Granted
Aug 23, 2022
Kind
B1
Abstract

A data structure called a product version map is introduced. The product version map contains a catalog of available application versions to be used by the application orchestration services. It can describe the available versions. For each version, there is an image, such as a Docker® container image, that can be used to instantiate the application instance. Furthermore, in some example embodiments, an expiration date can be given, which could be used to enforce upgrades of application instances when their used version expires.

Claims (55)

1. A system comprising:

at least one hardware processor; and

a computer-readable medium storing instructions that, when executed by the at least one hardware processor, cause the at least one hardware processor to perform operations comprising:

receiving an indication regarding an application version of an application operated by a first entity in a microservices environment;

obtaining a product version map stored in the microservices environment, the product version map including, for each of one or more applications, a list of one or more application versions, available for provisioning by entities in the microservices environment and, for each of the one or more application versions, an indication of a location for an image corresponding to the application version;

identifying, from the product version map, one or more newer versions of the application version of the application operated by the first entity;

based on a maturity level for each of the one or more newer versions of the application version of the application operated by the first entity, presenting, in a user interface, an option for the entity to upgrade to one or more newer versions;

receiving a selection, via the user interface, of one of the one or more presented newer versions of the application version of the application operated by the first entity;

retrieving an image corresponding to the selected newer version using the product version map; and

upgrading an application instance for the first entity using the retrieved image.

2. The system of claim 1 , wherein the operations further comprise:

collecting provisioning parameters for the selected newer version; and

upgrading the application instance by provisioning the selected newer version using the provisioning parameters.

3. The system of claim 2 , wherein the provisioning parameters include memory size.

4. The system of claim 1 , wherein the presenting includes presenting only newer application versions of the application operated by the first entity that have a same or higher maturity level than a maturity level of the application version of the application operated by the first entity.

5. The system of claim 1 , wherein the presenting includes presenting the maturity level of each newer application versions of the application operated by the first entity.

6. The system of claim 1 , wherein the operations further comprise:

detecting that an application version associated with the retrieved image is unreliable; and

in response to the detecting, deleting the application version from the product version map.

7. The system of claim 6 , wherein the detecting is performed using a machine learned model trained by a machine learning algorithm using training data, to output a score indicative of reliability of an application version.

8. The system of claim 1 , wherein the maturity level indicates a level of testing performed on a corresponding application instance version.

9. A method comprising:

receiving an indication regarding an application version of an application operated by a first entity in a microservices environment;

obtaining a product version map stored in the microservices environment, the product version map including, for each of one or more applications, a list of one or more application versions, available for provisioning by entities in the microservices environment and, for each of the one or more application versions, an indication of a location for an image corresponding to the application version;

identifying, from the product version map, one or more newer versions of the application version of the application operated by the first entity;

based on a maturity level for each of the one or more newer versions of the application version of the application operated by the first entity, presenting, in a user interface, an option for the entity to upgrade to one or more newer versions;

receiving a selection, via the user interface, of one of the one or more presented newer versions of the application version of the application operated by the first entity;

retrieving an image corresponding to the selected newer version using the product version map; and

upgrading an application instance for the first entity using the retrieved image.

10. The method of claim 9 , further comprising:

collecting provisioning parameters for the selected newer version; and

upgrading the application instance by provisioning the selected newer version using the provisioning parameters.

11. The method of claim 9 , wherein the presenting includes presenting only newer application versions of the application operated by the first entity that have a same or higher maturity level than a maturity level of the application version of the application operated by the first entity.

12. The method of claim 9 , wherein the presenting includes presenting the maturity level of each newer application versions of the application operated by the first entity.

13. The method of claim 9 , further comprising:

detecting that an application version associated with the retrieved image is unreliable; and

in response to the detecting, deleting the application version from the product version map.

14. The method of claim 13 , wherein the detecting is performed using a machine learned model trained by a machine learning algorithm using training data, to output a score indicative of reliability of an application version.

15. A non-transitory machine-readable medium storing instructions which, when executed by one or more processors, cause the one or more processors to perform operations comprising:

receiving an indication regarding an application version of an application operated by a first entity in a microservices environment;

obtaining a product version map stored in the microservices environment, the product version map including, for each of one or more applications, a list of one or more application versions, available for provisioning by entities in the microservices environment and, for each of the one or more application versions, an indication of a location for an image corresponding to the application version;

identifying, from the product version map, one or more newer versions of the application version of the application operated by the first entity;

based on a maturity level for each of the one or more newer versions of the application version of the application operated by the first entity, presenting, in a user interface, an option for the entity to upgrade to one or more newer versions;

receiving a selection, via the user interface, of one of the one or more presented newer versions of the application version of the application operated by the first entity;

retrieving an image corresponding to the selected newer version using the product version map; and

upgrading an application instance for the first entity using the retrieved image.

16. The non-transitory machine-readable medium of claim 15 , wherein the operations further comprise:

collecting provisioning parameters for the selected newer version; and

upgrading the application instance by provisioning the selected newer version using the provisioning parameters.

17. The non-transitory machine-readable medium of claim 16 , wherein the provisioning parameters include memory size.

18. The non-transitory machine-readable medium of claim 15 , wherein the presenting includes presenting only newer application versions of the application operated by the first entity that have a same or higher maturity level than a maturity level of the application version of the application operated by the first entity.

19. The non-transitory machine-readable medium of claim 15 , wherein the presenting includes presenting the maturity level of each newer application versions of the application operated by the first entity.

20. The non-transitory machine-readable medium of claim 15 , wherein the operations further comprise:

detecting that an application version associated with the retrieved image is unreliable; and

in response to the detecting, deleting the application version from the product version map.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 5, 2021
From: ZAHN, HENNING; KIRMSE, DANIEL
To: SAP SE
Reel/Frame 055828/0204 →
Cited By (2)
US 12,271,727 US 12,511,112