Patent ID: 7379888

Claim:
A computer-implemented method for generating a schedule for a project, the method comprising: receiving resource information describing a plurality of different resources available to tasks of the project, the resources having resource constraints; receiving task information identifying tasks of the project and task constraints, a task specifying one or more resources that are to be used to complete the task, a task constraint for a task specifying dependencies of that task on other tasks; for each task, automatically subdividing the task into one or more assignments, the assignments being subdivisions of the designated task, each assignment completable by only one resource and having an assignment constraint based on the task constraint of the task, wherein at least two tasks are each subdivided into multiple assignments; grouping the assignments of the tasks of the project into groups based on the number of the dependencies of the task constraints of the task from which each assignment was subdivided, each group being assigned a priority; and for each group in priority order, individually scheduling the assignments of that group to start at a start time based at least on the assignment constraint of the assignment and a resource constraint of the resource by which the assignment is completable, wherein at least some of the start times of the assignments of a task are different.