IP Library › Granted Patent US 8,825,751
Granted Patent B2
US 8,825,751 · App. 13/401,072 · Granted Sep 2, 2014

Optimization of a software application implemented on a client-server system

Inventors: Lutz Dominick (Eggolsheim, DE); Karlheinz Dorn (Kalchreuth, DE); Vladyslav Ukis (Nürnberg, DE)
Assignee: Siemens Aktiengesellschaft
H04L29/06047
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 8,825,751
App. No.
13/401,072
Granted
Sep 2, 2014
Kind
B2
Abstract

In at least one embodiment, data relating to the usage and the operating status of a frontend module of a software application implemented on the client side is acquired continuously during the execution of the application by way of a monitoring frontend module implemented on the client side of a client/server system. This acquired usage and status data is transmitted by the monitoring frontend module to a monitoring backend module implemented on the server side. The usage and status data is stored by the monitoring backend module in a database on the server side. The usage and status data stored in the database is automatically analyzed by way of an analysis module. In the process, default settings of the software application are automatically modified by way of the analysis module on the basis of the result of the analysis in order to improve the performance of the application.

Claims (82)

1. A method for automatically improving performance of a software application implemented on a client-server system, the method comprising:

continuously acquiring data, during the execution of the application, the data related to the usage and the operating status of a frontend module of the application implemented on the client side, the data being acquired by way of a monitoring frontend module implemented on the client side;

transmitting the acquired usage and status data, via the monitoring frontend module, to a monitoring backend module implemented on the server side;

storing the usage and status data, via the monitoring backend module, in a database on the server side;

automatically analyzing, via an analysis module, the usage and status data stored in the database, the analyzing including identifying which processing routines a client user regularly executes in a segment of a user interface of the application;

automatically modifying, via the analysis module, default settings of the application on the basis of a result of the analysis in order to improve performance of the application such that the identified processing routines are automatically executed in the segment;

determining, via the analysis module, a call frequency, the call frequency being a frequency with which the application is invoked; and

causing the analysis module to start an application backend module of the application independently of an associated application frontend module, if said determined call frequency exceeds a threshold value.

2. The method as claimed in claim 1 , further comprising:

automatically identifying a recurring usage scheme of a client user in the stored usage and status data via the analysis module;

automatically generating, by the analysis module, a usage scheme that automatically executes a command sequence identified within the stored usage and status data; and

automatically storing, by the analysis module, the generated usage scheme in the default settings of the application.

3. The method as claimed in claim 2 , further comprising:

identifying, through the analysis of the stored usage and status data and via the analysis module, that segment of a user interface comprising a plurality of segments with which a client user will first interact after the starting of the application frontend module or when a workflow is performed by way of the application frontend module; and

modifying the default settings of the application, via the analysis module, such that the identified segment is automatically placed in the foreground of the user interface when the application frontend module is started or at the start of processing of the workflow.

4. The method as claimed in claim 2 , further comprising:

identifying, through the analysis of the stored usage and status data and via the analysis module, which processing routines a client user regularly executes in a segment of a user interface of the application or when a workflow is performed by way of the associated application frontend module; and

modifying the default settings of the application via the analysis module such that the identified processing routines are automatically executed in the segment or when the workflow is performed.

5. The method as claimed in claim 2 , further comprising:

determining, through the analysis of the stored usage and status data and via the analysis module, the frequency with which control elements of a user interface of the application are actuated; and

modifying the default settings of the application via the analysis module such that the control elements are arranged on the user interface in accordance with the actuation frequency.

6. The method as claimed in claim 2 , further comprising:

determining, via the analysis module, the frequency with which specific datasets are accessed by way of the application; and

allocating a storage location, determined in accordance with the access frequency, to said datasets.

7. The method as claimed in claim 2 , further comprising:

determining, via the analysis module, the consumption of resources by the application of the client-server system; and

starting the application, in the case of a client-side call, via an application starter only, if sufficient free resources are available on the client-server system.

8. The method as claimed in claim 2 , wherein the usage and status data stored in the database is analyzed discontinuously by way of the analysis module at regular time intervals, in particular once per day.

9. The method as claimed in claim 2 , wherein usage and status data acquired by way of the monitoring frontend module includes details concerning at least one of:

the identity of a client user,

the or each application invoked by the client user,

the attributes of the used layout of the application,

the status of a user interface of the application,

the data loaded by the application,

the user commands directed to the application, and

the start time of the interaction.

10. The method as claimed in claim 1 , further comprising:

identifying, through the analysis of the stored usage and status data and via the analysis module, that segment of a user interface comprising a plurality of segments with which a client user will first interact after the starting of the application frontend module or when a workflow is performed by way of the application frontend module; and

modifying the default settings of the application, via the analysis module, such that the identified segment is automatically placed in the foreground of the user interface when the application frontend module is started or at the start of processing of the workflow.

11. The method as claimed in claim 1 , further comprising:

determining, through the analysis of the stored usage and status data and via the analysis module, the frequency with which control elements of a user interface of the application are actuated; and

modifying the default settings of the application via the analysis module such that the control elements are arranged on the user interface based on the actuation frequency.

12. The method as claimed in claim 1 , further comprising:

determining, via the analysis module, the frequency with which specific datasets are accessed by way of the application; and

allocating a storage location to said datasets based on the access frequency.

13. The method as claimed in claim 1 , further comprising:

determining, via the analysis module, the consumption of resources by the application of the client-server system; and

starting the application, in the case of a client-side call, via an application starter only, if sufficient free resources are available on the client-server system.

14. The method as claimed in claim 1 , wherein the usage and status data stored in the database is analyzed discontinuously by way of the analysis module at regular time intervals, in particular once per day.

15. The method as claimed in claim 14 , wherein the usage and status data stored in the database is analyzed discontinuously by way of the analysis module once per day.

16. The method as claimed in claim 1 , wherein usage and status data acquired by way of the monitoring frontend module includes details at least one of:

the identity of a client user,

the or each application invoked by the client user,

the attributes of the used layout of the application,

the status of a user interface of the application,

the data loaded by the application,

the user commands directed to the application, and

the start time of the interaction.

17. A system for automatically improving performance of a software application implemented on a client-server system, comprising:

a monitoring frontend module implemented by executing instructions from memory on a processor associated with a client side of the client-server system;

a monitoring backend module implemented by executing instructions from memory on a processor associated with a server side of the client-server system,

the monitoring frontend module configured to,

continuously acquire data relating to usage and operating status of a frontend module of the application implemented on the client side during the execution of the application, and

transmit said acquired usage and status data to the monitoring backend module, and

the monitoring backend module configured to store the usage and status data in a database on the server side; and

an analysis module implemented by executing instructions from memory on the processor associated with the server side of the client-server system, the analysis module configured to,

automatically analyze the usage and status data stored in the database, the analyzing including identifying which processing routines a client user regularly executes in a segment of a user interface of the application,

automatically modify default settings of the application on the basis of a result of the analysis in order to improve performance of the application such that the identified processing routines are automatically executed in the segment,

determine a call frequency, the call frequency being a frequency with which the application is invoked, and

start an application backend module of the application independently of an associated application frontend module, if said determined call frequency exceeds a threshold value.

18. A method for automatically improving performance of a software application implemented on a client-server system, the method comprising:

continuously acquiring data, during the execution of the application, the data related to the usage and the operating status of a frontend module of the application implemented on the client side, the data being acquired by way of a monitoring frontend module implemented on the client side;

transmitting the acquired usage and status data, via the monitoring frontend module, to a monitoring backend module implemented on the server side;

storing the usage and status data, via the monitoring backend module, in a database on the server side;

automatically analyzing, via an analysis module, the usage and status data stored in the database, the analyzing including identifying which processing routines a client user regularly executes in a segment of a user interface of the application;

automatically modifying, via the analysis module, default settings of the application on the basis of a result of the analysis in order to improve performance of the application such that the identified processing routines are automatically executed in the segment;

automatically identifying a recurring usage scheme of a client user in the stored usage and status data via the analysis module;

automatically generating, by the analysis module, a usage scheme that automatically executes a command sequence identified within the stored usage and status data; and

automatically storing, by the analysis module, the generated usage scheme in the default settings of the application;

determining, via the analysis module, the frequency with which the application is invoked; and

causing, if said determined call frequency exceeds a threshold value, the analysis module to start an application backend module of the application independently of an associated application frontend module.

19. A non-transitory computer readable medium including program segments for, when executed on a computer device, causing the computer device to implement the method of claim 1 .

Assignments (4)
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE PREVIOUSLY RECORDED AT REEL: 066088 FRAME: 0256. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 17, 2024
From: SIEMENS HEALTHCARE GMBH
To: SIEMENS HEALTHINEERS AG
Reel/Frame 071178/0246 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 20, 2023
From: SIEMENS HEALTHCARE GMBH
To: SIEMENS HEALTHINEERS AG
Reel/Frame 066088/0256 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 28, 2016
From: SIEMENS AKTIENGESELLSCHAFT
To: SIEMENS HEALTHCARE GMBH
Reel/Frame 039271/0561 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 21, 2012
From: DOMINICK, LUTZ; DORN, KARLHEINZ; UKIS, VLADYSLAV
To: SIEMENS AKTIENGESELLSCHAFT
Reel/Frame 027759/0558 →
Priority Claims (1)
EP 11155405 · Feb 22, 2011 · regional
Continuity (1)
Related Publication 20120215838A1 · Aug 23, 2012