IP Library Granted Patent US 12,277,453
Granted Patent B2
US 12,277,453 · App. 17/380,428 · Granted Apr 15, 2025

Application management using information captured via emulating execution of tasks in graphical user interfaces

Inventors: Chirag Oza (Richmond, TX); Jignesh Patel (Calgary, CA); Nalin Shah (Duluth, GA); Diptiman Mukherjee (Bengaluru, IN); Siddesh K. Gunaji (Bengaluru, IN); Sitaram Kotnis (Bangalore, IN)
Assignee: Virtustream IP Holding Company LLC
G06F9/5088G06F9/44505G06F9/45529G06F9/4881G06F9/5077
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,277,453
App. No.
17/380,428
Granted
Apr 15, 2025
Kind
B2
Abstract

An apparatus comprises a processing device configured to receive a request to collect configuration information for a source application and to establish a connection to an application session associated with the source application. The processing device is also configured to emulate, via the application session, execution of tasks in the source application, wherein emulating the execution of at least one of the tasks comprises automatically navigating to at least one view of a graphical user interface of the source application and executing at least one function that updates an output of the at least one view. The processing device is further configured to capture at least a portion of the configuration information for the source application from the output of the at least one view, and to perform one or more management actions for the source application utilizing the captured portion of the configuration information.

Claims (43)

1. An apparatus comprising:

at least one processing device comprising a processor coupled to a memory;

the at least one processing device being configured to perform steps of:

receiving a request to collect configuration information for a source application;

establishing a connection to an application session associated with the source application;

emulating, via the application session associated with the source application, execution of two or more tasks in the source application, wherein emulating the execution of at least one of the two or more tasks comprises automatically navigating to two or more views of a graphical user interface of the source application and executing at least one function that updates an output of each of the two or more views;

capturing, from the output of each of the two or more views, two or more portions of the configuration information for the source application; and

performing one or more management actions for the source application utilizing the captured two or more portions of the configuration information for the source application;

wherein emulating the execution of the two or more tasks in the source application comprises emulating execution of a sequence of two or more transaction codes via the application session associated with the source application, the two or more transaction codes causing the graphical user interface of the source application to automatically navigate to the two or more views while bypassing one or more menus of the graphical user interface of the source application.

2. The apparatus of claim 1 wherein the source application comprises a plurality of instances operating on respective ones of a plurality of application servers, and wherein emulating the execution of the two or more tasks in the source application comprises emulating the execution of at least a given one of the two or more tasks on each of the plurality of application servers.

3. The apparatus of claim 1 wherein the request specifies at least one of:

a target path where the configuration information for the source application is to be saved; and

access credentials for the source application.

4. The apparatus of claim 1 wherein establishing the connection to the application session associated with the source application comprises utilizing one or more scripting libraries associated with the graphical user interface of the source application.

5. The apparatus of claim 1 wherein capturing the two or more portions of the configuration information for the source application from the output of each of the two or more views comprises capturing screenshots of each of the two or more views.

6. The apparatus of claim 5 wherein establishing the connection to the application session associated with the source application comprises configuring one or more parameters of the application session that maintain the graphical user interface of the source application in a full screen mode for capturing the screenshots.

7. The apparatus of claim 5 wherein establishing the connection to the application session associated with the source application comprises configuring one or more parameters of the application session that select a graphical theme of the graphical user interface of the source application that facilitates capturing the screenshots.

8. The apparatus of claim 1 wherein establishing the connection to the application session associated with the source application comprises closing any other existing application sessions associated the source application.

9. The apparatus of claim 1 wherein performing one or more management actions for the source application utilizing the captured two or more portions of the configuration information for the source application comprises transmitting the captured two or more portions of the configuration information to a support platform providing support services for the source application.

10. The apparatus of claim 1 wherein performing one or more management actions for the source application utilizing the captured two or more portions of the configuration information for the source application comprises performing migration of the source application from a source computing resource to a target computing resource.

11. The apparatus of claim 10 wherein the source computing resource comprises a first cloud operated by a first cloud service provider and the target computing resource comprises a second cloud operated by a second cloud service provider.

12. The apparatus of claim 1 wherein performing one or more management actions for the source application utilizing the captured two or more portions of the configuration information for the source application comprises provisioning a target application at a target computing resource.

13. The apparatus of claim 12 wherein the source application comprises a first piece of software and the target application comprises a second piece of software different than the first piece of software.

14. The apparatus of claim 1 wherein the at least one processing device is further configured to perform the step of capturing at least one additional portion of the configuration from the source application from one or more tables maintained by the source application.

15. A computer program product comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes the at least one processing device to perform steps of:

receiving a request to collect configuration information for a source application;

establishing a connection to an application session associated with the source application;

emulating, via the application session associated with the source application, execution of two or more tasks in the source application, wherein emulating the execution of at least one of the two or more tasks comprises automatically navigating to two or more views of a graphical user interface of the source application and executing at least one function that updates an output of each of the two or more views;

capturing, from the output of each of the two or more views, two or more portions of the configuration information for the source application; and

performing one or more management actions for the source application utilizing the captured two or more portions of the configuration information for the source application;

wherein emulating the execution of the two or more tasks in the source application comprises emulating execution of a sequence of two or more transaction codes via the application session associated with the source application, the two or more transaction codes causing the graphical user interface of the source application to automatically navigate to the two or more views while bypassing one or more menus of the graphical user interface of the source application.

16. The computer program product of claim 15 wherein capturing the two or more portions of the configuration information for the source application from the output of each of the two or more views comprises capturing screenshots of each of the two or more views.

17. The computer program product of claim 15 wherein performing one or more management actions for the source application utilizing the captured two or more portions of the configuration information for the source application comprises at least one of performing migration of the source application from a source computing resource to a target computing resource and provisioning a target application at the target computing resource.

18. A method comprising:

receiving a request to collect configuration information for a source application;

establishing a connection to an application session associated with the source application;

emulating, via the application session associated with the source application, execution of two or more tasks in the source application, wherein emulating the execution of at least one of the two or more tasks comprises automatically navigating to two or more views of a graphical user interface of the source application and executing at least one function that updates an output of each of the two or more views;

capturing, from the output of each of the two or more views, two or more portions of the configuration information for the source application; and

performing one or more management actions for the source application utilizing the captured two or more portions of the configuration information for the source application;

wherein emulating the execution of the two or more tasks in the source application comprises emulating execution of a sequence of two or more transaction codes via the application session associated with the source application, the two or more transaction codes causing the graphical user interface of the source application to automatically navigate to the two or more views while bypassing one or more menus of the graphical user interface of the source application; and

wherein the method is performed by at least one processing device comprising a processor coupled to a memory.

19. The method of claim 18 wherein capturing the two or more portions of the configuration information for the source application from the output of each of the two or more views comprises capturing screenshots of each of the two or more views.

20. The method of claim 18 wherein performing one or more management actions for the source application utilizing the captured two or more portions of the configuration information for the source application comprises at least one of performing migration of the source application from a source computing resource to a target computing resource and provisioning a target application at the target computing resource.

Assignments (2)
MERGER Recorded Sep 16, 2025
From: VIRTUSTREAM IP HOLDING COMPANY LLC
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 072878/0578 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 20, 2021
From: OZA, CHIRAG; PATEL, JIGNESH; SHAH, NALIN; MUKHERJEE, DIPTIMAN; GUNAJI, SIDDESH K.; KOTNIS, SITARAM
To: VIRTUSTREAM IP HOLDING COMPANY LLC
Reel/Frame 056915/0076 →
Priority Claims (1)
IN 202141025219 · Jun 7, 2021 · national
Continuity (1)
Related Publication 20220391261A1 · Dec 8, 2022
References Cited (8)
US 10963731B1 · Sarkar · 2021 [cited by examiner]
US 20090198769A1 · Keller · 2009 [cited by examiner]
US 20130332442A1 · Liu · 2013 [cited by examiner]
US 20200304571A1 · Ranjan · 2020 [cited by examiner]
US 20210390010A1 · Moessle · 2021 [cited by examiner]
SAP, “SAP GUI Scripting API,” Developer Guide, Document Version: 7.60, Mar. 28, 2019, 302 pages. [cited by applicant]
System Overload, “SAP Transaction Codes,” https://www.system-overload.org/sap/transaction-codes.html, Accessed Jul. 16, 2021, 2 pages. [cited by applicant]
SAP Brains Online, “All about transaction codes in SAP,” https://sapbrainsonline.com/help/transaction-codes-in-sap.html, Accessed Jul. 16, 2021, 11 pages. [cited by applicant]