1. A method for providing the result of a task list query to a human task database, the method comprising: caching data from the database in a plurality of materialized views, each materialized view including data resulting from a query based on a request for a list of tasks from the database; receiving a new request for a list of tasks from the database, and creating a new query after determining that the new request applies to the data in a particular one of the materialized views; after receiving the new request and before executing the new query, determining whether the particular materialized view includes data that requires updating from more recent data in the database; when determining that updating is required, updating the particular materialized view with more recent data from the database; and executing the new query against the data in the particular materialized view instead of executing the new query against the data stored in tables in the database.