# US 11,443,267 B2 · Intelligent edge state optimization within enterprise with zero data exhaust

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

- Number: US 11,443,267 B2
- Document ID: US11443267B2
- Status: Granted
- Kind: B2
- Application number: 17/075,555
- Filed: 2020-10-20
- Published: 2022-04-21
- Granted: 2022-09-13
- Earliest claimed: 2020-10-20
- Assignees: Microsoft Technology Licensing, LLC
- Applicants: Microsoft Technology Licensing, LLC
- Inventors: David Mowatt; Venkat Pradeep Chilakamarri; Ramesh Thimmarajarasu Bangalore
- Web page: https://patentgrep.com/patent/US11443267B2

## CPC

- G06F 8/61: Installation
- G06Q 10/067: Enterprise or organisation modelling
- G06F 8/62: {Uninstallation}
- G06F 8/65: Updates (security arrangements therefor G06F21/57)
- G06F 8/77: Software metrics
- G06F 16/24556: {Aggregation; Duplicate elimination}
- G06F 16/285: {Clustering or classification}
- G06Q 10/06: Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q 10/105: Human resources
- G06Q 30/0185: {Product, service or business identity fraud}
- G06Q 30/02: Marketing; Price estimation or determination; Fundraising
- G06Q 30/0201: Market modelling; Market analysis; Collecting market data
- G06Q 30/0205: {based on location or geographical consideration}
- H04L 67/535: {Tracking the activity of the user (network monitoring arrangements H04L43/00; recording of computer activity G06F11/34)}
- G06Q 10/04: Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem" (market predictions or forecasting for commercial activities G06Q30/0202)
- G06Q 10/06395: {Quality analysis or management}
- G06Q 50/265: {Personal security, identity or safety}
- 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
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Systems and methods for optimizing application experiences on devices in an enterprise while maintaining privacy compliance are provided. An enterprise model management service of the enterprise accesses, from a centralized software service, a model comprising one or more rules to be applied to an application. The model is provided to devices of a first cohort, whereby a rule of the model causes an action associated with the application to occur at each device. User metrics associated with the action at each device of the first cohort is aggregated. The user metrics indicate a result of the action at each device. The aggregated user metrics are analyzed, whereby the analyzing includes determining a second cohort at the enterprise. The model is then provided to devices of at least a portion of the second cohort. No user metrics are returned to the centralized software service thus maintaining privacy compliance.

## Claims

### Claim 1

A method comprising:
accessing, by an enterprise model management service of an enterprise from a centralized software service, a model comprising one or more rules to be applied to an application or service;
providing, by the enterprise model management service, the model to each device of a first cohort at the enterprise to test the model, a rule of the one or more rules causing an action associated with the application to occur at each device;
responsive to providing the model, aggregating, in an enterprise metrics database, user metrics associated with the action at each device of the first cohort, the user metrics indicating a result of the action at each device of the first cohort;
analyzing, by the enterprise model management service, the aggregated user metrics, the analyzing occurring within an enterprise data boundary of the enterprise and excludes transmission of the aggregated user metrics back to the centralized software service to maintain privacy compliance, the analyzing including determining a second cohort at the enterprise that comprises a different set of users than the first cohort, at least a portion of the second cohort having similar characteristics as members of the first cohort for which the aggregated user metrics indicated positive results; and
based on the analyzing, providing, by the enterprise model management service, the model to devices of at least the portion of the second cohort.

### Claim 2 (depends on 1)

The method of claim 1, further comprising revising the model prior to providing the model to the first cohort based on enterprise-level attributes associated with the model, the revising comprising enabling, disabling, or modifying at least one rule of the model.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
receiving, via a model editor at the enterprise, one or more edits to the model; and
based on the received one or more edits, modifying the model prior to providing the model to each device of the first cohort.

### Claim 4 (depends on 1)

The method of claim 1, further comprising determining the first cohort comprises selecting devices based on one or more attributes associated with each user of the devices, the attributes comprising one or more of geography, department, device specification, application installation, usage metrics, or position in organization.

### Claim 5 (depends on 1)

The method of claim 1, wherein the model is generated by the centralized software service by merging input from one or more partners with general rules of the centralized software service and performing a license check to confirm that the enterprise has authorization to use rules associated with the one or more partners.

### Claim 6 (depends on 1)

The method of claim 1, wherein the analyzing comprises:
splitting the first cohort into a negative group that has a negative result to the at least one rule of the model and a positive group that had a positive result to the at least one rule of the model;
examining attributes of the negative group and the positive group; and
based on the attributes of the negative group and the positive group, splitting the second cohort into a first group that has similar attributes as the negative group and a second group that has similar attributes as the positive group, the second group being provided the model.

### Claim 7 (depends on 1)

The method of claim 1, wherein the analyzing comprises:
determining a rule in the model that failed to reach a positivity threshold;
removing the rule from the model to derive a variant model, wherein the providing the model to devices of at least the portion of the second cohort comprises providing the variant model; and
undoing, with the first cohort, application of the rule in the model that failed to reach the positivity threshold.

### Claim 8 (depends on 1)

The method of claim 1, wherein the action associated with the application comprises one or more of changing a device state, changing an application state, modifying data, or displaying a message.

### Claim 9 (depends on 1)

The method of claim 1, further comprising causing display of a message to a user of each device providing an option to block or dismiss the action or to take explicit steps to enable the action.

### Claim 10

A system comprising:
one or more hardware processors; and
a storage device storing instructions that, when executed by the one or more hardware processors, causes the one or more hardware processors to perform operations comprising:
accessing, by an enterprise model management service of an enterprise from a centralized software service, a model comprising one or more rules to be applied to an application or service;
providing, by the enterprise model management service, the model to each device of a first cohort at the enterprise to test the model, a rule of the one or more rules causing an action associated with the application to occur at each device;
responsive to providing the model, aggregating, in an enterprise metrics database, user metrics associated with the action at each device of the first cohort, the user metrics indicating a result of the action at each device of the first cohort;
analyzing, by the enterprise model management service, the aggregated user metrics, the analyzing occurring within an enterprise data boundary of the enterprise and excludes transmission of the aggregated user metrics back to the centralized software service to maintain privacy compliance, the analyzing including determining a second cohort at the enterprise that comprises a different set of users than the first cohort, at least a portion of the second cohort having similar characteristics as members of the first cohort for which the aggregated user metrics indicated positive results; and
based on the analyzing, providing, by the enterprise model management service, the model to devices of at least the portion of the second cohort.

### Claim 11 (depends on 10)

The system of claim 10, wherein the operations further comprise revising the model prior to providing the model to the first cohort based on enterprise-level attributes associated with the model, the revising comprising enabling, disabling, or modifying at least one rule of the model.

### Claim 12 (depends on 10)

The system of claim 10, wherein the operations further comprise:
receiving, via a model editor at the enterprise, one or more edits to the model; and
based on the received one or more edits, modifying the model prior to providing the model to each device of the first cohort.

### Claim 13 (depends on 10)

The system of claim 10, wherein the determining the first cohort comprises selecting devices based on one or more attributes associated with each user of the devices, the attributes comprising one or more of geography, department, device specification, application installation, usage metrics, or position in organization.

### Claim 14 (depends on 10)

The system of claim 10, wherein the model is generated by the centralized software service by merging input from one or more partners with general rules of the centralized software service and performing a license check to confirm that the enterprise has authorization to use rules associated with the one or more partners.

### Claim 15 (depends on 10)

The system of claim 10, wherein the analyzing comprises:
splitting the first cohort into a negative group that has a negative result to the at least one rule of the model and a positive group that had a positive result to the at least one rule of the model;
examining attributes of the negative group and the positive group; and
based on the attributes of the negative group and the positive group, splitting the second cohort into a first group that has similar attributes as the negative group and a second group that has similar attributes as the positive group, the second group being provided the model.

### Claim 16 (depends on 10)

The system of claim 10, wherein the analyzing comprises:
determining a rule in the model that failed to reach a positivity threshold;
removing the rule from the model to derive a variant model, wherein the providing the model to devices of at least the portion of the second cohort comprises providing the variant model; and
undoing, with the first cohort, application of the rule in the model that failed to reach the positivity threshold.

### Claim 17 (depends on 10)

The system of claim 10, wherein the action associated with the application comprises one or more of changing a device state, changing an application state, modifying data, or displaying a message.

### Claim 18 (depends on 10)

The system of claim 10, wherein the operations further comprise causing display of a message to a user of each device providing an option to block or dismiss the action or to take explicit steps to enable the action.

### Claim 19

A machine-storage medium storing instructions that, when executed by one or more processors of a machine, cause the one or more processors to perform operations comprising:
accessing, by an enterprise model management service of an enterprise from a centralized software service, a model comprising one or more rules to be applied to an application or service;
providing, by the enterprise model management service, the model to each device of a first cohort at the enterprise to test the model, a rule of the one or more rules causing an action associated with the application to occur at each device;
responsive to providing the model, aggregating, in an enterprise metrics database, user metrics associated with the action at each device of the first cohort, the user metrics indicating a result of the action at each device of the first cohort;
analyzing, by the enterprise model management service, the aggregated user metrics, the analyzing occurring within an enterprise data boundary of the enterprise and excludes transmission of the aggregated user metrics back to the centralized software service to maintain privacy compliance, the analyzing including determining a second cohort at the enterprise that comprises a different set of users than the first cohort, at least a portion of the second cohort having similar characteristics as members of the first cohort for which the aggregated user metrics indicated positive results; and
based on the analyzing, providing, by the enterprise model management service, the model to devices of at least the portion of the second cohort.

### Claim 20 (depends on 19)

The machine-storage medium of claim 19, wherein the operations further comprise revising the model prior to providing the model to the first cohort based on enterprise-level attributes associated with the model, the revising comprising enabling, disabling, or modifying at least one rule of the model.
