IP Library Granted Patent US 11,636,156
Granted Patent B2
US 11,636,156 · App. 16/894,662 · Granted Apr 25, 2023

Flexible baselines in a forecasting system

Inventors: Kim Orumchian (Santa Clara, CA); Art Stabenow (Santa Clara, CA); Dean Skelton (Santa Clara, CA); David Petiot (Santa Clara, CA)
Assignee: Ignite Enterprise Software Solutions, Inc.
G06F16/90335G06F16/2228G06F16/254G06F16/283G06Q10/04G06Q10/063G06Q10/0631G06Q30/02G06Q30/0202G06Q30/06G06Q40/04G06Q40/06G06F2216/03Y10S707/99933Y10S707/99956
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,636,156
App. No.
16/894,662
Granted
Apr 25, 2023
Kind
B2
Abstract

In an embodiment, the a method is provided. The method includes receiving forecast data in a database with an associated window value. The method also includes accessing data based on associated window values. The method further includes comparing the data accessed based on associated window values to other data.

Claims (53)

1. A computer implemented method, of maintaining information in a database of a computer and propagating information in real-time through to reduce delays in generating an updated baseline forecast, the method comprising:

executing code by a computer to perform operations comprising:

receiving a set of initial forecast data representing a prediction or judgment for a future event by the computer;

for each organization, storing the forecast data in the database;

incorporating the set of initial forecast data into the database for analytical processing dedicated to the organization;

processing the initial forecast data by the computer to determine the prediction or judgment for the future event and generating an initial baseline forecast from information stored in the database, including the initial forecast data;

receiving updates to the information stored in the database on an asynchronous or random basis, the updates including changes to the initial forecast data and comments about the initial forecast data;

updating the database every time T 1 , wherein T 1 is an amount of time;

identifying some updated information as private and remaining updated information is non-private;

identifying some updated information as allowed and the remaining updated information as denied;

processing the updates by the computer to incorporate the non-private and allowed updates into the database, the database including updates to the initial forecast data for any changes to the initial forecast data;

associating any comments about the initial forecast data, including any comments about the updated forecast data, with the forecast data;

propagating the processed updates, the received comments, and the received changes to the initial forecast data in essentially real-time throughout the database to (i) associate the received comments and changes with the forecast information and (ii) asynchronously update the baseline forecast with the received updated non-private information changes of the forecast information in essentially real-time;

associating the received comments and changes with the forecast information;

asynchronously updating the baseline forecast with the received changes of the forecast information in essentially real-time;

storing the updates in the database; and

generating an updated baseline forecast from the updated database and the initial baseline forecast.

2. The method of claim 1 , executing the code by the computer to further perform operations comprising:

comparing data of the baseline forecast with data of the updated baseline forecast;

analyzing differences between the data of the baseline forecast and the data of the updated baseline forecast; and

presenting the differences to a user.

3. The method of claim 1 , executing the code by the computer to further perform operations comprising:

for each of multiple organizations, dedicating an instance of one of the OLAP cubes to each of the organizations;

for each of the multiple organizations, further performing operations by the computer when the code is executed comprising:

partitioning each of the OLAP cubes of the database into at least a first partition and a second partition;

receiving a set of initial forecast data representing a prediction or judgment for a future event by the computer;

for each organization, storing the forecast data in the first partition of the OLAP cube of the database dedicated to the organization;

incorporating the set of initial forecast data into the database through the instance of the OLAP cube for analytical processing dedicated to the organization;

processing the initial forecast data by the computer to determine the prediction or judgment for the future event and generating an initial baseline forecast from information stored in the database, including the initial forecast data;

receiving updates to the information stored in the database on an asynchronous or random basis, the updates including changes to the initial forecast data and comments about the initial forecast data;

for each organization, updating the first partition of the OLAP cube of the computer database every time T 1 , wherein T 1 is an amount of time;

propagating the processed updates, the received comments, and the received changes to the initial forecast data in essentially real-time throughout the database through the instance of the OLAP cube dedicated to the organization to (i) associate the received comments and changes with the forecast information and (ii) asynchronously update the baseline forecast with the received updated non-private information changes of the forecast information in essentially real-time;

for each organization, storing the updates in the second partition of the OLAP cube dedicated to the organization;

for each organization, updating the second partition of the OLAP cube dedicated to the organization every time T 2 , wherein T 2 is an amount of time and T 2 is less than T 1 for each organization; and

generating an updated baseline forecast from the updated OLAP cube and the initial baseline forecast.

4. The method of claim 3 , further for each organization executing the code by the computer to further perform operations comprising:

receiving a request for a private baseline from a user; and

generating the OLAP cube dedicated to the organization a private baseline forecast from the database and the baseline forecast in response to the received request, extracting the private baseline forecast from the database, the private baseline forecast derived from the baseline forecast.

5. The method of claim 4 , wherein, for each organization, each user has a set of forecast targets that are associated with the user's particular responsibilities in a company for use in generating personal private forecasts, shared private, forecasts, and optionally public forecasts.

6. The method of claim 4 , wherein data are stored in the database and processed by the OLAP cube to efficiently generate updated private baselines.

7. The method of claim 4 , wherein, for each organization, the private baseline from a user includes a company private baseline for the company, and the company private baseline is generated using a combination of: (i) an analyst forecast target, (ii) an internal target forecast, and (iii) an official target regional sales manager forecast target.

8. The method of claim 4 , wherein, for each organization, the private baseline from a user includes a sales private baseline for the company, and the sales baseline is generated using a combination of: (i) a sales manager forecast target, (ii) a sales representative target forecast, and (iii) an official target regional sales manager forecast target.

9. The method of claim 4 , further for each organization executing the code by the computer to further perform operations comprising:

issuing an alert to at least one user based on a change of an identified amount from a private baseline forecast.

10. The method of claim 3 , further comprising, for each organization, issuing an alert to at least one user based on a change of an identified amount from a baseline forecast.

11. The method of claim 1 , further executing the code by the computer to further perform operations comprising:

receiving a request for a private baseline from a user; and

extracting the private baseline forecast from the database, the private baseline forecast derived from the updated baseline forecast.

12. The method of claim 1 , executing the code by the computer to further perform operations comprising:

segregating at least one of forecast data and baseline data based on a customer or user identity; and

receiving forecast information from users associated with a first customer identity and with different users associated with a second customer identity.

13. The method of claim 1 , executing the code by the computer to further perform operations comprising:

notifying a user of changes in a set of watched data points responsive to the propagating and receiving updates.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 20, 2021
From: RIGHT90, INC.
To: IGNITE ENTERPRISE SOFTWARE SOLUTIONS, INC.
Reel/Frame 058438/0074 →