1. A task management system for assigning a plurality of tasks to a plurality of workers, comprising: a database for storing task records and worker records, each task record corresponding to a task and including task parameters, and each worker record corresponding to a worker and including worker parameters; and a management module operable to access the database and compare the task records to the worker records and for each worker create a set of assigned tasks to the worker prioritized according to a corresponding dispatch order, and dispatch the set of assigned tasks to the worker based on the corresponding dispatch order, and further operable to receive an immediate next task request for a requested task and a requested worker and, if no other task is designated an immediate next task for the requested worker, designate the requested task as an immediate next task for the requested worker and prioritize the immediate next task first in the corresponding dispatch order of the set assigned tasks to the requested worker.