# US 12,223,340 B2 · Systems and methods to implement microapps in digital workspaces

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,223,340 B2
- Document ID: US12223340B2
- Status: Granted
- Kind: B2
- Application number: 17/375,410
- Filed: 2021-07-14
- Published: 2022-11-10
- Granted: 2025-02-11
- Earliest claimed: 2021-05-05
- Applicants: Citrix Systems, Inc.
- Inventors: Aikaterini Kalou; Abirami Sukumaran
- Web page: https://patentgrep.com/patent/US12223340B2

## CPC

- G06F 9/46: Multiprogramming arrangements
- G06Q 10/06393: {Score-carding, benchmarking or key performance indicator [KPI] analysis}
- G06F 9/451: Execution arrangements for user interfaces
- G06F 11/302: {where the computing system component is a software system}
- G06F 11/3438: {monitoring of user actions (tracking the activity of the user H04L67/535)}
- G06N 20/00: Machine learning
- G06Q 10/10: Office automation; Time management
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS

## Abstract

Described embodiments provide systems and methods for enhancing user engagement with micro applications. A computing device can include one or more processors and memory. The computing device can receive an indication of an action to be completed with use of a micro application. The computing device can be in communication with a client device and one or more computing systems of record to execute the micro application. The computing device can values for one or more attributes of the micro application. The computing device can generate, based on the identified values, a score for the micro application. The computing device can provide the score to the client device for display within a user interface. The user interface can be configured to initiate the action with use of the micro application.

## Claims

### Claim 1

A method for enhancing user engagement with micro applications, comprising:
receiving, by a computing device comprising one or more processors and memory, an indication of an action to be completed with use of a micro application, the computing device in communication with a client device and one or more computing systems of record to execute the micro application;
identifying, by the computing device, values for one or more attributes of the micro application;
generating, by the computing device, based on the identified values, a score for the micro application;
providing, by the computing device, the score to the client device for display within a user interface, the user interface configured to initiate the action with use of the micro application;
receiving, by the computing device from the client device, a request to terminate the micro application;
determining, by the computing device, that activities performed by the client device with the micro application do not satisfy an activity threshold for the micro application; and
transmitting, by the computing device responsive to the determination, a notification indicating that the client device did not obtain at least a portion of the generated score for the micro application.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
monitoring, by the computing device, use of the micro application for an activity of the client device;
determining, by the computing device, that the activity of the client device with the micro application satisfies an activity threshold; and
incrementing, by the computing device, responsive to satisfying the activity threshold, a counter displayed within the user interface by the generated score for the micro application.

### Claim 3 (depends on 1)

The method of claim 1, wherein identifying values for the one or more attributes of the micro application further comprises:
providing, by the computing device, to the client device, an interface comprising the one or more attributes for the micro application; and
receiving, by the computing device from the client device, the values for the one or more attributes of the micro application.

### Claim 4 (depends on 1)

The method of claim 1, wherein identifying values for the one or more attributes of the micro application further comprises:
generating, by the computing device, the values for the one or more attributes for the micro application based on a log of historical use of the micro application by one or more client devices.

### Claim 5 (depends on 4)

The method of claim 4, wherein generating the values for the one or more attributes and generating the score for the micro application is performed at a first time, and further comprising:
receiving, by the computing device, a request from a second client device to access the micro application;
generating, by the computing device at a second time, values for the one or more attributes for the micro application, at least one of the values generated at the second time different from at least one of the corresponding values generated at the first time;
generating, by the computing device at the second time, a second score for the micro application, the second score different from the score generated at the first time; and
providing, by the computing device, the generated second score to the second client device for display within a second user interface of the second client device.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
generating, by the computing device, a corresponding subscore for each of the one or more attributes of the micro application; and
identifying, by the computing device, a plurality of activity thresholds, each activity threshold associated with a score based on a sum of subscores of the one or more attributes associated with corresponding activities performed with the micro application;
wherein a score associated with an activity threshold is provided to the client device performing activities with the micro application satisfying the activity threshold.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
identifying, by the computing device, a score for each client device of a plurality of client devices; and
generating, by the computing device, a list of the plurality of client devices in order according to their respective scores.

### Claim 8 (depends on 1)

The method of claim 1, wherein generating the score associated with the micro application further comprises:
training, by the computing device, a machine learning model from a log of historical use of the micro application by one or more client devices and respective scores for the one or more client devices;
determining, by the computing device, using the machine learning model, a weight associated with each of the one or more attributes; and
generating, by the computing device based on the weight of each of the one or more attributes, the score associated with the micro application.

### Claim 9

A system for enhancing user engagement with micro applications, the system comprising:
one or more processors and memory in communication with a client device and one or more computing systems of record to execute the micro application, wherein the one or more processors are configured to:
receive an indication of an action to be completed with use of a micro application;
identify values for one or more attributes of the micro application;
generate, based on the identified values, a score for the micro application;
provide the score to the client device for display within a user interface, the user interface configured to initiate the action with use of the micro application;
receive a request to terminate the micro application;
determine that activities performed by the client device with the micro application do not satisfy an activity threshold for the micro application; and
transmit, responsive to the determination, a notification indicating that the client device did not obtain the generated score for the micro application.

### Claim 10 (depends on 9)

The system of claim 9, wherein the one or more processors are further configured to:
monitor the use of the micro application for an activity of the client device;
determine that the activity of the client device with the micro application satisfies an activity threshold; and
increment, responsive to satisfying the activity threshold, a counter displayed within the user interface by the generated score for the micro application.

### Claim 11 (depends on 9)

The system of claim 9, wherein the one or more processors are further configured to:
provide, to the client device, an interface comprising the one or more attributes for the micro application; and
receive, from the client device, the values for the one or more attributes of the micro application.

### Claim 12 (depends on 9)

The system of claim 9, wherein the one or more processors are further configured to:
generate the values for the one or more attributes for the micro application based on a log of historical use of the micro application by one or more client devices.

### Claim 13 (depends on 12)

The system of claim 12, wherein generating the values for the one or more attributes and generating the score for the micro application is performed at a first time, and wherein the one or more processors are further configured to:
receive a request from a second client device to access the micro application;
generate, at a second time, values for the one or more attributes for the micro application, at least one of the values generated at the second time different from at least one of the corresponding values generated at the first time;
generate, at the second time, a second score for the micro application, the second score different from the score generated at the first time; and
provide the generated second score to the second client device for display within a second user interface of the second client device, the second user interface configured to initiate a different action with use of the micro application.

### Claim 14 (depends on 9)

The system of claim 9, wherein the one or more processors are further configured to:
generate a corresponding subscore for each of the one or more attributes of the micro application; and
identify a plurality of activity thresholds, each activity threshold associated with a score based on a sum of subscores of the one or more attributes associated with corresponding activities performed with the micro application;
wherein a score associated with an activity threshold is provided to the client device performing activities with the micro application satisfying the activity threshold.

### Claim 15 (depends on 9)

The system of claim 9, wherein the one or more processors are further configured to:
identify a score for each client device of a plurality of client devices; and
generate a list of the plurality of client devices in order according to their respective scores.

### Claim 16 (depends on 9)

The system of claim 9, wherein the one or more processors are further configured to:
train a machine learning model from a log of historical use of the micro application by one or more client devices and respective scores for the one or more client devices;
determine, using the machine learning model, a weight associated with each of the one or more attributes; and
generate, based on the weight of each of the one or more attributes, the score associated with the micro application.

### Claim 17

A non-transitory computer-readable medium comprising instructions that, when executed by a processor of a computing device, cause the computing device to perform actions comprising:
receiving an indication of an action to be completed with use of a micro application, the computing device in communication with a client device and one or more computing systems of record to execute the micro application;
identifying values for one or more attributes of the micro application;
generating, based on the identified values, a score for the micro application;
providing, the score to the client device for display within a user interface, the user interface configured to initiate the action with use of the micro application;
receiving, by the computing device from the client device, a request to terminate the micro application;
determining, by the computing device, that activities performed by the client device with the micro application do not satisfy an activity threshold for the micro application; and
transmitting, by the computing device responsive to the determination, a notification indicating that the client device did not obtain at least a portion of the generated score for the micro application.

### Claim 18 (depends on 17)

The non-transitory computer-readable medium of claim 17, wherein the instructions further comprise instructions to:
monitor the use of the micro application for an activity of the client device;
determine that the activity of the client device with the micro application satisfies an activity threshold; and
increment, responsive to satisfying the activity threshold, a counter displayed within the user interface by the generated score for the micro application.
