# US 2018/0165619 A1 · Activity based resource allocation modeling

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

- Number: US 2018/0165619 A1
- Document ID: US20180165619A1
- Status: Published application
- Kind: A1
- Application number: 15/379,267
- Filed: 2016-12-14
- Published: 2018-06-14
- Earliest claimed: 2016-12-14
- Assignees: Apptio, Inc.
- Applicants: Apptio, Inc.
- Inventors: Israel Hilerio; Su Shen; Peter Whitney Goubert; Nikolas Charles Besagno; David Alexander Brokaw; Mikalai Panasiuk
- Web page: https://patentgrep.com/patent/US20180165619A1

## CPC

- G06Q 10/06315: {Needs-based resource requirements planning or analysis}
- G06Q 10/067: Enterprise or organisation modelling
- G06Q 10/0875: Itemisation or classification of parts, supplies or services, e.g. bill of materials
- H04L 41/145: {involving simulating, designing, planning or modelling of a network}
- H04L 41/22: comprising specially adapted graphical user interfaces [GUI]
- 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

Embodiments are directed to modeling resource allocations. A data model may be provided to an activity modeling engine. The activity modeling engine may be employed to provide an activity model based on the data model, such that the activity model may include activity objects that each may be associated with bills-of-materials (BOMs). Resource allocations from source activity objects to target activity objects may be provided based on the BOMs, such that the resource allocations may be modeled using unit values defined by the BOMs. A report visualizing the activity model may be provided and presented on a hardware display.

## Claims

### Claim 1

A method for modeling resource allocations using a network computer that employs one or more processors to execute instructions that perform actions, comprising:
instantiating an activity modeling engine that is provided a data model, wherein the data model is comprised of two or more nodes and one or more edges stored in a self-referential database in a memory of a computer that is configured and arranged to store the data model, and wherein the data model's data objects are stored in the database in a single table that includes different records for different data objects that include references to other different records for other data objects, and wherein each node represents a model object and each edge represents a resource allocation, and wherein the self-referential database provides faster execution of a query of the data model objects than a referential database that executes the same query on the same data model objects more slowly because it also executes database query join instructions;
employing the activity modeling engine to provide an activity model based on the data model, wherein the activity model includes one or more activity objects that each are associated with one or more bills-of-materials (BOMs);
providing one or more resource allocations from one or more source activity objects to one or more target activity objects based on the one or more BOMs, wherein the one or more resource allocations are modeled using unit values or allocation percentage shares defined by the one or more BOMs; and
providing a report visualizing the activity model, wherein the report is presented by a hardware display, and wherein geolocation information based on electronic signals processed by a Global Positioning System (GPS) device is employed to modify the report visualizing the activity model based on a location of one or more users, wherein the localization includes one or more of time zone, currency, calendar format, or language.

### Claim 2 (depends on 1)

The method of claim 1, wherein providing the activity model based on the data model, further comprises:
traversing the data model to identify one or more model objects included in the data model; and
providing the one or more activity objects for the activity model based on the one or more identified model objects.

### Claim 3 (depends on 1)

The method of claim 1, further comprising, when one or more modifications are made to the activity model, modifying the data model based on the one or more modifications.

### Claim 4 (depends on 1)

The method of claim 1, further comprising, when one or more modifications are made to the data model, modifying the activity model based on the one or more modifications.

### Claim 5 (depends on 1)

The method of claim 1, wherein providing the activity model based on the data model, further comprises, providing one or more specialized activity objects that include one or more of a service object, a project object, a department object, a labor pool object, or a business unit object.

### Claim 6 (depends on 1)

The method of claim 1, wherein modeling the one or more resource allocations using unit values or allocation percentage shares defined by the one or more BOMs, further comprises, using two or more different unit values or different allocation percentage shares that are associated with two or more of the one or more activity objects.

### Claim 7

A system for modeling resource allocations, comprising:
a network computer, comprising:
a transceiver that communicates over the network;
a memory that stores at least instructions; and
one or more processor devices that execute instructions that perform actions, including:
instantiating an activity modeling engine that is provided a data model, wherein the data model is comprised of two or more nodes and one or more edges stored in a self-referential database in a memory of a computer that is configured and arranged to store the data model, and wherein the data model's data objects are stored in the database in a single table that includes different records for different data objects that include references to other different records for other data objects, and wherein each node represents a model object and each edge represents a resource allocation, and wherein the self-referential database provides faster execution of a query of the data model objects than a referential database that executes the same query on the same data model objects more slowly because it also executes database query join instructions;
employing the activity modeling engine to provide an activity model based on the data model, wherein the activity model includes one or more activity objects that each are associated with one or more bills-of-materials (BOMs);
providing one or more resource allocations from one or more source activity objects to one or more target activity objects based on the one or more BOMs, wherein the one or more resource allocations are modeled using unit values or allocation percentage shares defined by the one or more BOMs; and
providing a report visualizing the activity model, wherein the report is presented by a hardware display providing a report visualizing the activity model, wherein the report is presented by a hardware display, and wherein geolocation information based on electronic signals processed by a Global Positioning System (GPS) device is employed to modify the report visualizing the activity model based on a location of one or more users, wherein the localization includes one or more of time zone, currency, calendar format, or language; and
a client computer, comprising:
a client computer transceiver that communicates over the network;
a client computer memory that stores at least instructions; and
one or more processor devices that execute instructions that perform actions, including:
displaying the report on another hardware display.

### Claim 8 (depends on 7)

The system of claim 7, wherein providing the activity model based on the data model, further comprises:
traversing the data model to identify one or more model objects included in the data model; and
providing the one or more activity objects for the activity model based on the one or more identified model objects.

### Claim 9 (depends on 7)

The system of claim 7, wherein the one or more network computer processor devices execute instructions that perform actions, further comprising, when one or more modifications are made to the activity model, modifying the data model based on the one or more modifications.

### Claim 10 (depends on 7)

The system of claim 7, wherein the one or more network computer processor devices execute instructions that perform actions, further comprising, when one or more modifications are made to the data model, modifying the activity model based on the one or more modifications.

### Claim 11 (depends on 7)

The system of claim 7, wherein providing the activity model based on the data model, further comprises, providing one or more specialized activity objects that include one or more of a service object, a project object, a department object, a labor pool object, or a business unit object.

### Claim 12 (depends on 7)

The system of claim 7, wherein modeling the one or more resource allocations using unit values or allocation percentage shares defined by the one or more BOMs, further comprises, using two or more different unit values or different allocation percentage shares that are associated with two or more of the one or more activity objects.

### Claim 13

A processor readable non-transitory storage media that includes instructions for modeling resource allocations, wherein execution of the instructions by one or more hardware processors performs actions, comprising:
instantiating an activity modeling engine that is provided a data model, wherein the data model is comprised of two or more nodes and one or more edges stored in a self-referential database in a memory of a computer that is configured and arranged to store the data model, and wherein the data model's data objects are stored in the database in a single table that includes different records for different data objects that include references to other different records for other data objects, and wherein each node represents a model object and each edge represents a resource allocation, and wherein the self-referential database provides faster execution of a query of the data model objects than a referential database that executes the same query on the same data model objects more slowly because it also executes database query join instructions;
employing the activity modeling engine to provide an activity model based on the data model, wherein the activity model includes one or more activity objects that each are associated with one or more bills-of-materials (BOMs);
providing one or more resource allocations from one or more source activity objects to one or more target activity objects based on the one or more BOMs, wherein the one or more resource allocations are modeled using unit values or allocation percentage shares defined by the one or more BOMs; and
providing a report visualizing the activity model, wherein the report is presented by a hardware display, and wherein geolocation information based on electronic signals processed by a Global Positioning System (GPS) device is employed to modify the report visualizing the activity model based on a location of one or more users, wherein the localization includes one or more of time zone, currency, calendar format, or language.

### Claim 14 (depends on 13)

The media of claim 13, wherein providing the activity model based on the data model, further comprises:
traversing the data model to identify one or more model objects included in the data model; and
providing the one or more activity objects for the activity model based on the one or more identified model objects.

### Claim 15 (depends on 13)

The media of claim 13, further comprising, when one or more modifications are made to the activity model, modifying the data model based on the one or more modifications.

### Claim 16 (depends on 13)

The media of claim 13, further comprising, when one or more modifications are made to the data model, modifying the activity model based on the one or more modifications.

### Claim 17 (depends on 13)

The media of claim 13, wherein providing the activity model based on the data model, further comprises, providing one or more specialized activity objects that include one or more of a service object, a project object, a department object, a labor pool object, or a business unit object.

### Claim 18 (depends on 13)

The media of claim 13, wherein modeling the one or more resource allocations using unit values or allocation percentage shares defined by the one or more BOMs, further comprises, using two or more different unit values or different allocation percentage shares that are associated with two or more of the one or more activity objects.

### Claim 19

A network computer for modeling resource allocations, comprising:
a transceiver that communicates over the network;
a memory that stores at least instructions; and
one or more processor devices that execute instructions that perform actions, including:
instantiating an activity modeling engine that is provided a data model, wherein the data model is comprised of two or more nodes and one or more edges stored in a self-referential database in a memory of a computer that is configured and arranged to store the data model, and wherein the data model's data objects are stored in the database in a single table that includes different records for different data objects that include references to other different records for other data objects, and wherein each node represents a model object and each edge represents a resource allocation, and wherein the self-referential database provides faster execution of a query of the data model objects than a referential database that executes the same query on the same data model objects more slowly because it also executes database query join instructions;
employing the activity modeling engine to provide an activity model based on the data model, wherein the activity model includes one or more activity objects that each are associated with one or more bills-of-materials (BOMs);
providing one or more resource allocations from one or more source activity objects to one or more target activity objects based on the one or more BOMs, wherein the one or more resource allocations are modeled using unit values or allocation percentage shares defined by the one or more BOMs; and
providing a report visualizing the activity model, wherein the report is presented by a hardware display, and wherein geolocation information based on electronic signals processed by a Global Positioning System (GPS) device is employed to modify the report visualizing the activity model based on a location of one or more users, wherein the localization includes one or more of time zone, currency, calendar format, or language.

### Claim 20 (depends on 19)

The network computer of claim 19, wherein providing the activity model based on the data model, further comprises:
traversing the data model to identify one or more model objects included in the data model; and
providing the one or more activity objects for the activity model based on the one or more identified model objects.

### Claim 21 (depends on 19)

The network computer of claim 19, further comprising, when one or more modifications are made to the activity model, modifying the data model based on the one or more modifications.

### Claim 22 (depends on 19)

The network computer of claim 19, further comprising, when one or more modifications are made to the data model, modifying the activity model based on the one or more modifications.

### Claim 23 (depends on 19)

The network computer of claim 19, wherein providing the activity model based on the data model, further comprises, providing one or more specialized activity objects that include one or more of a service object, a project object, a department object, a labor pool object, or a business unit object.

### Claim 24 (depends on 19)

The network computer of claim 19, wherein modeling the one or more resource allocations using unit values or allocation percentage shares defined by the one or more BOMs, further comprises, using two or more different unit values or different allocation percentage shares that are associated with two or more of the one or more activity objects.
