# US 12,112,345 B2 · Systems and methods facilitating survey completion and review

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

- Number: US 12,112,345 B2
- Document ID: US12112345B2
- Status: Granted
- Kind: B2
- Application number: 17/744,242
- Filed: 2022-05-13
- Published: 2023-11-16
- Granted: 2024-10-08
- Earliest claimed: 2022-05-13
- Assignees: People Center, Inc.
- Applicants: People Center, Inc.
- Inventors: Cassandra Jia Hui Lim; Katherine Ifeoma Okpara; Paras Rajesh Bheda; Vahid Fazel-Rezai
- Web page: https://patentgrep.com/patent/US12112345B2

## CPC

- G06Q 30/0203: Market surveys; Market polls
- 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

## Abstract

Methods, systems, devices, and tangible non-transitory computer readable media facilitating dynamic restriction of a viewer's access to survey responses provided by respondents of a survey based on the viewer's relationship with each respondent. In an example embodiment, the disclosed technology can: generate a survey data object that specifies a set of participants and a set of delegates associated with a survey; define, for a delegate in the set of delegates, a data access rule that specifies a subset of participants in the set of participants that are constituents of the delegate; receive, from the delegate, a request to access survey response data; evaluate the data access rule to identify the constituents of the delegate; filter the survey response data to extract constituent response data corresponding to the constituents of the delegate; and/or return the constituent response data to the delegate.

## Claims

### Claim 1

A computing system, comprising:
one or more processors; and
one or more non-transitory computer-readable media that store instructions that, when executed by the one or more processors, cause the computing system to perform one or more operations, the one or more operations comprising:
traversing an object graph which comprises a plurality of objects to identify attribute values associated with employees in an organization, wherein the plurality of objects include first objects with first attribute values indicating employees having a first role in the organization and second objects with second attribute values indicating employees having a second role in the organization;
generating a survey data object associated with a survey that specifies a set of participants having the first role in the organization and a set of delegates having the second role in the organization, according to the identified attribute values associated with the employees;
defining a survey distribution rule in a survey distribution object stored in the object graph, the survey distribution rule specifying a trigger event associated with a change in an employee status and specifying a set of survey participants who are to receive the survey from among the set of participants;
in response to detecting the trigger event occurring, distributing the survey to the set of survey participants specified in the survey distribution rule;
defining, for a delegate in the set of delegates specified by the survey data object, a data access rule that specifies a subset of participants who are constituents of the delegate from among the set of survey participants, wherein the data access rule specifies a relationship between the delegate and the constituents, and wherein the data access rule is defined in a delegation object, stored in the object graph, comprising instructions that, when executed, allow an authorized user access to view survey responses of the constituents based at least in part on the relationship;
receiving, from the authorized user, a request to access survey response data;
identifying the authorized user by receiving information relating to the authorized user to authenticate an identity of the authorized user, to determine whether the authorized user is permitted to access the survey responses;
in response to receiving the request and determining the authorized user is permitted to access the survey responses based on the identifying, dynamically evaluating the data access rule to identify the constituents of the delegate by traversing the object graph to identify the constituents of the delegate based on the second role of the delegate;
executing the instructions of the delegation object stored in the object graph to filter the survey response data to extract constituent response data corresponding to the constituents of the delegate identified by traversing the object graph, while omitting survey response data of participants in the set of survey participants who are not identified as constituents of the delegate by traversing the object graph;
returning the constituent response data to the authorized user;
determining whether the constituent response data includes a defined survey response; and
in response to determining the constituent response data includes the defined survey response, executing a computer-implemented task according to a survey response rule associated with the defined survey response, the computer-implemented task including at least one of an execution of an automated workflow or transmitting an electronic notification.

### Claim 2 (depends on 1)

The computing system of claim 1, further comprising applying the survey data object universally with respect to the first role and the second role for employees in the organization.

### Claim 3 (depends on 1)

The computing system of claim 1, wherein the data access rule specifies a general employment relationship between the delegate and the constituents.

### Claim 4 (depends on 1)

The computing system of claim 1, wherein at least one of the survey data object or the data access rule specifies an anonymity threshold criterion that is to be satisfied before the constituent response data is returned to the authorized user, and wherein the anonymity threshold criterion specifies a defined quantity of the constituents that are to respectively return response data for the survey before the constituent response data is returned to the authorized user.

### Claim 5 (depends on 1)

The computing system of claim 1, wherein the trigger event associated with the change in the employee status includes one or more of a new hire event when a new employee is hired by the organization, a separation event when an employee leaves the organization, and a promotion event when an employee is promoted to a new role within the organization.

### Claim 6 (depends on 5)

The computing system of claim 5, wherein the one or more operations further comprise:
generating, based at least in part on the occurrence of the trigger event, the distribution object that specifies at least one of the survey, the set of survey participants who are to receive the survey from among the set of participants, or a lifecycle of the survey.

### Claim 7 (depends on 1)

The computing system of claim 1, wherein the one or more operations further comprise:
defining the survey response rule that specifies the defined survey response in an object; and
wherein
the information relating to the authorized user to authenticate the identity of the authorized user is received via one or more sensors.

### Claim 8 (depends on 1)

The computing system of claim 1, wherein the one or more operations further comprise:
defining a survey lifecycle rule that specifies one or more lifecycle states of the survey, and wherein the one or more lifecycle states comprise a draft state, a scheduled state, an open state, a closed state, and an archived state.

### Claim 9 (depends on 1)

The computing system of claim 1, wherein the one or more operations further comprise:
defining one or more lifecycle states of the survey based on a publication status or an archive status of the survey and one or more survey distribution windows defined for the survey.

### Claim 10 (depends on 1)

The computing system of claim 1, wherein the one or more operations further comprise:
generating, based at least in part on receipt of the request to access the survey response data, the delegation object, and wherein the delegation object specifies at least one of the survey, the delegate, or the constituents.

### Claim 11

A computer-implemented method to grant partial access to survey responses, the computer-implemented method comprising:
traversing, by a computing system operatively coupled to one or more processors, an object graph which comprises a plurality of objects to identify attribute values associated with employees in an organization, wherein the plurality of objects include first objects with first attribute values indicating employees having a first role in the organization and second objects with second attribute values indicating employees having a second role in the organization;
generating, by the computing system, a survey data object associated with a survey that specifies a set of participants having the first role in the organization and a set of delegates having the second role in the organization, according to the identified attribute values associated with the employees;
defining, by the computing system, a survey distribution rule in a survey distribution object stored in the object graph, the survey distribution rule specifying a trigger event associated with a change in an employee status and specifying a set of survey participants who are to receive the survey from among the set of participants;
in response to detecting the trigger event occurring, distributing, by the computing system, the survey to the set of survey participants specified in the survey distribution rule;
defining, by the computing system, for a delegate in the set of delegates specified by the survey data object, a data access rule that specifies a subset of participants who are constituents of the delegate from among the set of survey participants, wherein the data access rule specifies a relationship between the delegate and the constituents, and wherein the data access rule is defined in a delegation object, stored in the object graph, comprising instructions that, when executed, allow an authorized user access to view survey responses of the constituents based at least in part on the relationship;
receiving, by the computing system, from the authorized user, a request to access survey response data;
identifying, by the computing system, the authorized user by receiving information relating to the authorized user to authenticate an identity of the authorized user, to determine whether the authorized user is permitted to access the survey responses;
in response to receiving the request and determining the authorized user is permitted to access the survey responses based on the identifying, dynamically evaluating, by the computing system, the data access rule to identify the constituents of the delegate by traversing the object graph to identify the constituents of the delegate based on the second role of the delegate;
executing, by the computing system, the instructions of the delegation object stored in the object graph to filter the survey response data to extract constituent response data corresponding to the constituents of the delegate identified by traversing the object graph, while omitting survey response data of participants in the set of survey participants who are not identified as constituents of the delegate by traversing the object graph;
returning, by the computing system, the constituent response data to the authorized user;
determining, by the computing system, whether the constituent response data includes a defined survey response; and
in response to determining the constituent response data includes the defined survey response, executing, by the computing system, a computer-implemented task according to a survey response rule associated with the defined survey response, the computer-implemented task including at least one of an execution of an automated workflow or transmitting an electronic notification.

### Claim 12 (depends on 11)

The computer-implemented method of claim 11, further comprising:
applying the survey data object universally with respect to the first role and the second role for employees in the organization.

### Claim 13 (depends on 11)

The computer-implemented method of claim 11, wherein the data access rule specifies a general employment relationship between the delegate and the constituents.

### Claim 14 (depends on 11)

The computer-implemented method of claim 11, wherein at least one of the survey data object or the data access rule specifies an anonymity threshold criterion that is to be satisfied before the constituent response data is returned to the authorized user, and wherein the anonymity threshold criterion specifies a defined quantity of the constituents that are to respectively return response data for the survey before the constituent response data is provided to the authorized user.

### Claim 15 (depends on 11)

The computer-implemented method of claim 11, wherein the trigger event associated with the change in the employee status includes one or more of a new hire event when a new employee is hired by the organization, a separation event when an employee leaves the organization, and a promotion event when an employee is promoted to a new role within the organization.

### Claim 16 (depends on 15)

The computer-implemented method of claim 15, further comprising:
generating, by the computing system, based at least in part on the occurrence of the trigger event, the distribution object that specifies at least one of the survey, the set of survey participants who are to receive the survey from among the set of participants, or a lifecycle of the survey.

### Claim 17 (depends on 11)

The computer-implemented method of claim 11, further comprising:
defining, by the computing system, the survey response rule that specifies the defined survey response in an object.

### Claim 18 (depends on 11)

The computer-implemented method of claim 11, further comprising:
defining, by the computing system, a survey lifecycle rule that specifies one or more lifecycle states of the survey, and wherein the one or more lifecycle states comprise a draft state, a scheduled state, an open state, a closed state, and an archived state.

### Claim 19 (depends on 11)

The computer-implemented method of claim 11, further comprising:
defining, by the computing system, one or more lifecycle states of the survey based on a publication status or an archive status of the survey and one or more survey distribution windows defined for the survey.

### Claim 20

One or more tangible non-transitory computer-readable media storing computer-readable instructions that, when executed by one or more processors, cause the one or more processors to perform operations, the operations comprising:
traversing an object graph which comprises a plurality of objects to identify attribute values associated with employees in an organization, wherein the plurality of objects include first objects with first attribute values indicating employees having a first role in the organization and second objects with second attribute values indicating employees having a second role in the organization;
generating a survey data object associated with a survey that specifies a set of participants having the first role in the organization and a set of delegates having the second role in the organization, according to the identified attribute vales associated with the employees;
defining a survey distribution rule in a survey distribution object stored in the object graph, the survey distribution rule specifying a trigger event associated with a change in an employee status and specifying a set of survey participants who are to receive the survey from among the set of participants;
in response to detecting the trigger event occurring, distributing the survey to the set of survey participants specified in the survey distribution rule;
defining, for a delegate in the set of delegates specified by the survey data object, a data access rule that specifies a subset of participants who are constituents of the delegate from among from among the set of survey participants, wherein the data access rule specifies a relationship between the delegate and the constituents, and wherein the data access rule is defined in a delegation object, stored in the object graph, comprising instructions that, when executed, allow an authorized user access to view survey responses of the constituents based at least in part on the relationship;
receiving, from the authorized user, a request to access survey response data;
identifying the authorized user by receiving information relating to the authorized user to authenticate an identity of the authorized user, to determine whether the authorized user is permitted to access the survey responses;
in response to receiving the request and determining the authorized user is permitted to access the survey responses based on the identifying, dynamically evaluating the data access rule to identify the constituents of the delegate by traversing the object graph to identify the constituents of the delegate based on the second role of the delegate;
executing the instructions of the delegation object stored in the object graph to filter the survey response data to extract constituent response data corresponding to the constituents of the delegate identified by traversing the object graph, while omitting survey response data of participants in the set of survey participants who are not identified as constituents of the delegate by traversing the object graph;
returning the constituent response data to the authorized user;
determining whether the constituent response data includes a defined survey response; and
in response to determining the constituent response data includes the defined survey response, executing a computer-implemented task according to a survey response rule associated with the defined survey response, the computer-implemented task including at least one of an execution of an automated workflow or transmitting an electronic notification.
