Universal task management system, method and product for automatically managing remote workers, including automatically recruiting workers
First Claim
1. A method of automatically managing a plurality of remote workers carrying out a variety of jobs for one or more customers, each job including a process of a set of one or more task steps and a set of units of source data, the method comprising:
- storing in a database information on each remote worker including one or more task skills of the worker that define the types of task steps the worker is certified to carry out;
storing in the database information on the customers;
storing in the database information on each process, including the customer of the process, the order of carrying out the task steps of the process, how the input for each task step is obtained from the results of prior task steps in the process, and any pre-processing and post-processing required;
receiving the units of source data from the customers;
carrying out any defined pre-processing for the received source data;
storing in a task data structure information on tasks to be completed, each task defined by a task step and a unit of input for the task step;
receiving requests from one or more of the remote workers for tasks;
upon receiving a task request from a remote worker, dispatching a task from the stored tasks to be completed to the remote worker according to one or more task dispatch rules;
receiving the task results from the remote workers for the task dispatched to the workers;
carrying out any defined post-processing of the task results corresponding to the tasks of a process for a unit of source data to produce result data for the unit of source data;
sending the result data to the customers;
managing the capacity of the system based on information about the stored tasks, wherein the capacity managing comprises predicting future demand for the remote workers based on the stored tasks;
recruiting potential workers when the predicted future demand is determined to not be met by the remote workers based on a comparison of the predicted future demand and the stored remote worker information in the database;
receiving responses from one or more of the potential workers; and
screening the responding potential workers, each successfully screened potential worker becoming an applicant.
4 Assignments
0 Petitions
Accused Products
Abstract
A computer implemented method, a system, and a software product to automatically manage one or more human workers carrying out a process of manipulating source data provided to produce result data. The process including a set of one or more task steps each having an input and resulting in a task result. The computer implemented method includes receiving units of source data from a customer. For each unit of source data and each task step for the unit of source data, the method includes dispatching the task step and its corresponding input unit to a worker and, after the worker carries out the dispatched task step on the input unit, receiving the task result corresponding to the dispatched task step and input unit from the worker. Each worker is certified to have one or more task skills, wherein each task step requires a corresponding task skill, and wherein the dispatching of any task step occurs automatically substantially without human management to a worker who is certified to have the corresponding task skill of the task step. The method further includes automatically recruiting workers substantially with no human management when a shortfall is predicted. A version of the method further includes generating the result data for the unit of source data from one or more of the task results corresponding to the task steps of the set and sending the result data for the unit of source data to the customer.
252 Citations
9 Claims
-
1. A method of automatically managing a plurality of remote workers carrying out a variety of jobs for one or more customers, each job including a process of a set of one or more task steps and a set of units of source data, the method comprising:
-
storing in a database information on each remote worker including one or more task skills of the worker that define the types of task steps the worker is certified to carry out; storing in the database information on the customers; storing in the database information on each process, including the customer of the process, the order of carrying out the task steps of the process, how the input for each task step is obtained from the results of prior task steps in the process, and any pre-processing and post-processing required; receiving the units of source data from the customers; carrying out any defined pre-processing for the received source data; storing in a task data structure information on tasks to be completed, each task defined by a task step and a unit of input for the task step; receiving requests from one or more of the remote workers for tasks; upon receiving a task request from a remote worker, dispatching a task from the stored tasks to be completed to the remote worker according to one or more task dispatch rules; receiving the task results from the remote workers for the task dispatched to the workers; carrying out any defined post-processing of the task results corresponding to the tasks of a process for a unit of source data to produce result data for the unit of source data; sending the result data to the customers; managing the capacity of the system based on information about the stored tasks, wherein the capacity managing comprises predicting future demand for the remote workers based on the stored tasks; recruiting potential workers when the predicted future demand is determined to not be met by the remote workers based on a comparison of the predicted future demand and the stored remote worker information in the database; receiving responses from one or more of the potential workers; and screening the responding potential workers, each successfully screened potential worker becoming an applicant. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A system for automatically managing a plurality of remote workers carrying out a variety of jobs for one or more customers, each job including a process of a set of one or more task steps and a set of associated source data units, the system connected to a network, each worker having one or more task skills and able to communicate with the system using a worker terminal connectable to network, the system comprising:
-
a storage subsystem containing a task data structure to store tasks to be completed, each task defined by a task step and a unit of input for the task step; a pre-processor coupled to the storage subsystem to accept units of source data from the customers and to carry out any defined pre-processing for the accepted source data; a task dispatcher coupled to the network and to the task data structure to accept requests from one or more of the remote workers for tasks and to dispatch a task from the task data structure to a remote worker requesting tasks, the dispatching according to one or more task dispatch rules; a task submission unit coupled to network to receive the task results from the remote workers for the task dispatched to the workers; a post-processor coupled to the network and to the quality unit to produce result data from the task results corresponding to the tasks of a process for a unit of source data, including any defined post-processing of the task results, and to send the result data to the customer of the process; a capacity manager coupled to the task dispatcher, to the task data structure, and to the evaluation unit to manage the capacity of the system based on task load information on the tasks in the task data structure, on the available workers, and on the available worker task skills; a certification unit coupled to the dispatcher to certify workers as having one or more task skills; and a recruitment and screening unit coupled to the capacity manager and to the network to recruit potential workers, and to screen potential workers, each successfully screened potential worker becoming an applicant; such that the recruiting is based on task load information on the tasks in the task data structure, on the available workers, and on the available worker task skills, and occurs automatically substantially without human management. - View Dependent Claims (7, 8, 9)
-
Specification