PROJECT TASK DRIVERS PANE
A task driver system for explaining the factors contributing to a task's scheduling for a project to a project manager and for displaying and navigating between related tasks is provided. The system receives information defining a set of tasks for the project. For each task, the system first analyzes scheduling considerations for the task. Based on the analysis, the task driver system determines a schedule for the task that satisfies the scheduling considerations. Finally, the system stores information identifying the factors that contributed to the schedule for the task as task drivers.
1 . A method performed by a computing system for identifying drivers affecting the scheduling of tasks within a project, comprising:
receiving information defining each of a set of tasks for the project; and
for each task,
identifying scheduling considerations for the task;
determining a schedule for the task based on the identified considerations; and
storing information identifying a consideration that impacts the determined schedule for the task as a driver for the task.
2 . The method of claim 1 wherein storing information includes adding the driver to an existing set of drivers when the driver produces the same scheduling date for the task as the existing drivers.
3 . The method of claim 2 wherein the scheduling date is a start date.
4 . The method of claim 2 wherein the scheduling date is an end date.
5 . The method of claim 1 wherein storing information identifying a consideration as a driver comprises inspecting an existing set of drivers, and if the identified consideration produces a different scheduling date for the task, discarding the existing set of drivers.
6 . The method of claim 5 wherein the scheduling date is a start date.
7 . The method of claim 5 wherein the scheduling date is an end date.
8 . The method of claim 1 wherein the identified consideration is selected from the set consisting of a constraint on the task, an actual start date for the task, and a predecessor task.
9 . The method of claim 1 including displaying drivers of tasks so that a user can navigate through the drivers.
10 . A user interface system for navigating tasks in a project having multiple tasks, comprising:
a task selection component for selecting a task; and
a task driver information component for displaying the drivers contributing to the schedule of the selected task.
11 . The system of claim 10 wherein the task selection component receives input from a user indicating the currently selected task.
12 . The system of claim 10 wherein the task driver information component displays multiple categories of drivers.
13 . The system of claim 10 wherein the task driver information component only displays a maximum number of task drivers.
14 . The system of claim 10 wherein the task driver information component receives a selection of a task driver and displays additional details about the selected task driver.
15 . The system of claim 10 further comprising a task driver navigation component that maintains a chain of drivers that allows a user to navigate forward and backward through a list of related tasks affecting the scheduling of the selected task.
16 . The system of claim 10 further comprising a scheduling component wherein the task driver information component registers a listener with the scheduling component to receive notification when a new task driver is identified for a task.
17 . The system of claim 10 wherein the task driver information component provides a programmable object model such that programs can access task driver information programmatically.
18 . A computer-readable medium containing a data structure employed for storing scheduling considerations for a project, the project having multiple tasks, the computer-readable medium comprising:
for each task,
a description for the task;
a list of constraints for the task;
a schedule for the task; and
a list of drivers contributing to the schedule for the task.
19 . The computer-readable medium of claim 18 wherein the list of drivers includes multiple categories of drivers.
20 . The computer-readable medium of claim 18 wherein each driver in the list of drivers includes a reference to a data structure comprising additional information about the task driver.