# US 2019/0317819 A1 · Methods and devices for enabling distributed computers to communicate more effectively in an enterprise requiring flexible approval notifications

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

- Number: US 2019/0317819 A1
- Document ID: US20190317819A1
- Status: Published application
- Kind: A1
- Application number: 15/955,562
- Filed: 2018-04-17
- Published: 2019-10-17
- Earliest claimed: 2018-04-17
- Assignees: ADP, Inc.
- Applicants: Adp, LLC
- Inventors: Michael F. Brown; Robert Tucker; Kuntal Roy; Annelise Levitt; Edgardo Aviles Lopez; Kevin A. Miller; Lauren Miller; Lohit J. Sarma
- Web page: https://patentgrep.com/patent/US20190317819A1

## CPC

- G06F 9/5038: {considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration (scheduling strategies G06F9/4881 and subgroups)}
- G06Q 10/06311: {Scheduling, planning or task assignment for a person or group}
- G06F 9/4843: {by program, e.g. task dispatcher, supervisor, operating system}
- G06F 9/5027: {the resource being a machine, e.g. CPUs, Servers, Terminals}
- G06F 9/542: {Event management; Broadcasting; Multicasting; Notifications}
- G06F 16/9024: {Graphs; Linked lists (G06F16/9027 takes precedence)}
- G06Q 10/06313: {Resource planning in a project environment}
- G06Q 10/103: {Workflow collaboration or project 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

## Abstract

A computer-implemented method of enabling distributed computers to communicate more effectively in an enterprise that provides flexible approval notifications in an organization, wherein at least one of the distributed computers stores a graph database in which attributes regarding individuals of the organization are stored. The computer-implemented method includes receiving, at a server computer in the distributed computers, a request for a task to be performed, wherein the task requires approval by at least a first person in the organization who has authority to approve the request. The computer-implemented method also includes traversing, by the server computer, the graph database, to determine an identity of the first person, wherein traversing is performed based on criteria determined at least partially by information automatically extracted from the request. The computer-implemented method also includes transmitting, automatically by the server computer, the request to a client computer to which the first person has access.

## Claims

### Claim 1

A computer-implemented method of enabling distributed computers to communicate more effectively in an enterprise that provides flexible approval notifications in an organization, wherein at least one of the distributed computers stores a graph database in which attributes regarding individuals of the organization are stored, the computer-implemented method comprising:
receiving, at a server computer in the distributed computers, a request for a task to be performed, wherein the task requires approval by at least a first person in the organization who has authority to approve the request;
traversing, by the server computer, the graph database, to determine an identity of the first person, wherein traversing is performed based on criteria determined at least partially by information automatically extracted from the request; and
transmitting, automatically by the server computer, the request to a client computer to which the first person has access.

### Claim 2 (depends on 1)

The method of claim 1, wherein the first person is unknown to a client computer to which a second person who initiated the request has access.

### Claim 3 (depends on 1)

The method of claim 1 further comprising:
after transmitting, receiving at the server computer, an approval from the client computer; and
performing, automatically according to a command by the server computer, the task.

### Claim 4 (depends on 3)

The method of claim 3 further comprising:
notifying, by the server computer, a second client computer to which a second person has access and who initiated the request, that the task has been performed.

### Claim 5 (depends on 1)

The method of claim 1 further comprising:
transmitting, by the server computer to a second client computer to which a second person has access and who initiated request, a notification that the task has been requested for approval.

### Claim 6 (depends on 1)

The method of claim 1, wherein traversing is also performed based on additional rules supplied by the server computer.

### Claim 7 (depends on 1)

The method of claim 1, wherein traversing is also performed based on additional criteria supplied by the server computer.

### Claim 8 (depends on 1)

The method of claim 1, wherein an additional person is required for approval, wherein traversing further includes identifying the additional person from within the graph database, and wherein the method further comprises:
transmitting, automatically by the server computer, the request to a second client computer to which the additional person has access.

### Claim 9 (depends on 1)

The method of claim 1, wherein traversing includes:
determining whether additional rules should be applied to traversing, wherein determining is performed by using metadata associated with the request; and
responsive to determining that an additional rule is to be applied to traversing, adding the additional rule to limit the traversing.

### Claim 10 (depends on 9)

The method of claim 9 further comprising:
supplying additional criteria to traversing based on metadata associated with the request.

### Claim 11 (depends on 1)

The method of claim 1, wherein traversing is further based on relationships among individuals in the organization.

### Claim 12 (depends on 1)

The method of claim 1, wherein access to source data to which the graph database is avoided while traversing.

### Claim 13 (depends on 12)

The method of claim 12 further comprising:
transmitting from the server computer a request to access a plurality of different ones of the source data.

### Claim 14 (depends on 13)

The method of claim 13 further comprising:
aggregating, by the server computer, the plurality of different ones of the source data.

### Claim 15 (depends on 1)

The method of claim 1 further comprising:
prior to traversing, configuring a route that traversing will take in the graph database.

### Claim 16

A non-transitory computer readable storage medium storing program code which, when implemented by a processor, performs computer-implemented method of enabling distributed computers to communicate more effectively in an enterprise that provides flexible approval notifications in an organization, wherein at least one of the distributed computers stores a graph database in which attributes regarding individuals of the organization are stored, the program code comprising:
program code for receiving, at a server computer in the distributed computers, a request for a task to be performed, wherein the task requires approval by at least a first person in the organization who has authority to approve the request;
program code for traversing, by the server computer, the graph database, to determine an identity of the first person, wherein traversing is performed based on criteria determined at least partially by information automatically extracted from the request; and
program code for transmitting, automatically by the server computer, the request to a client computer to which the first person has access.

### Claim 17 (depends on 16)

The non-transitory computer readable storage medium of claim 16, wherein the program code for traversing includes:
program code for determining whether additional rules should be applied to traversing, wherein determining is performed by using metadata associated with the request; and
program code for responsive to determining that an additional rule is to be applied to traversing, adding the additional rule to limit the traversing.

### Claim 18 (depends on 17)

The non-transitory computer readable storage medium of claim 17, wherein the program code further comprises:
program code for supplying additional criteria to traversing based on metadata associated with the request.

### Claim 19

A computer comprising:
a processor; and
a non-transitory computer readable storage medium connected to the processor and storing program code which, when implemented by the processor, performs computer-implemented method of enabling distributed computers to communicate more effectively in an enterprise that provides flexible approval notifications in an organization, wherein at least one of the distributed computers stores a graph database in which attributes regarding individuals of the organization are stored, the program code comprising:
program code for receiving, at a server computer in the distributed computers, a request for a task to be performed, wherein the task requires approval by at least a first person in the organization who has authority to approve the request;
program code for traversing, by the server computer, the graph database, to determine an identity of the first person, wherein traversing is performed based on criteria determined at least partially by information automatically extracted from the request; and
program code for transmitting, automatically by the server computer, the request to a client computer to which the first person has access.

### Claim 20 (depends on 19)

The computer of claim 19, wherein the program code for traversing includes:
program code for determining whether additional rules should be applied to traversing, wherein determining is performed by using metadata associated with the request;
program code for responsive to determining that an additional rule is to be applied to traversing, adding the additional rule to limit the traversing; and
program code for supplying additional criteria to traversing based on metadata associated with the request.
