Patent ID: 7945466

Claim:
A method for scheduling comprising: receiving information relating to activities to be performed and information relating to the availability of resources needed to perform the activities; and processing the information with a processor to create a schedule with a sequence of activities and a selection of resources for each activity, including: performing a backward scheduling process to schedule activities based on a target period defined for each activity as a last time that each activity can be started to meet a desired completion time for the activity, the backward scheduling process starting with activities that have earlier target periods, and further determining the availability of resources to perform the activities for each of a number of time periods, the backward scheduling process producing a list of activities arranged at least in part based on a latest resource period defined for each activity as a later of the target period and latest period resources have been allocated to the activity, and automatically proceeding from the backward scheduling process to a forward scheduling process using the results of the backward scheduling process, including defining a scheduling zone for a set of activities that use a resource, with activities to be performed during each zone and determining an order in which the activities should be scheduled during each zone starting with activities with earlier latest resource periods and allocating resources forward in time.