How scheduling works in Project

In past versions of Project, users have sometimes been bewildered by how Project automatically performs scheduling calculations. This article demystifies the complexities of the Project scheduling engine.

This article also introduces a new scheduling method at your disposal. Welcome to manually scheduled tasks. With manually scheduled tasks, Project 2010 provides the project manager even more control over the schedule.

In this article


The big picture: How is a project scheduled?

Project 2010 introduces a new mode that gives users complete control over how tasks are scheduled — manual scheduling. Let's look at this more closely so that you don't miss any key features.

Project can schedule tasks using two methods: manual scheduling and automatic scheduling With manual scheduling, changes to factors such as task dependencies, constraints, and project calendars do not automatically adjust task dates.

 Note   .Tasks are manually scheduled by default. Project managers who are accustomed to automatic scheduling with past versions of Project can turn the manual scheduling feature off for specific tasks or for the entire project. Some projects, especially complicated ones, may require Project's powerful scheduling engine to take care of scheduling for you.

task mode graphic

Callout 1 Two manually scheduled tasks. The Duration is a text value, not a number. Since the duration is a text value, a start date hasn't been set automatically by Project.
Callout 2 Two automatically scheduled tasks. The Duration is a number value. Since the duration is a number value, a start date has been automatically set by Project, and a bar is displayed.

Manually scheduled tasks

You can place a manually scheduled task placed anywhere in your schedule, and Project won't move it. This new feature gives you greater flexibility and control over planning and managing their schedule.

Why would you care? Well, at times project schedules are often very informal. They begin as simple lists of dates from e-mails, meeting with stakeholders, or a hallway conversation. Project managers very often do not have complete information on work items. For example, they may only be aware of when a task needs to be started, but not its duration until they have an estimate from their team members. Also, they may know how long a task will take, but they do not know it can be started until they have approval from the resource manager.

Here are some things to keep in mind with manually scheduled tasks.

  • You'll never be left in the dark. Manually scheduled tasks have their own indicators and task bars to help you distinguish them from the "classic" automatically scheduled tasks.
  • Anything goes. When a task is in manually scheduled mode, the Start, Finish, and Duration columns can be blank or include text values in addition to recognizable dates.
  • Switching scheduling modes You can change a task back and forth from manually scheduled to automatically scheduled. Be careful, though. When you change a task from manually scheduled to automatically scheduled, Project is going to have to make some decisions. If a task's duration was "A fortnight", Project will by default use an estimated duration of "1 day?" if the task is set to automatically scheduled. After all, you can expect project to know that a fortnight is two weeks long.
  • Control slippage If a manually scheduled task has to be delayed due to a slippage, its successor tasks will not be automatically pushed out. Project managers can decide to keep the original dates if their resources are able to proceed as planned, or delay the successor tasks if there are hard dependencies.
  • Effort-driven impacts    Manually scheduled tasks cannot be set to effort-driven. The duration of a manually scheduled task will not change as resources are assigned to it

The following table shows how Project attributes are defined and used for scheduling manually and automatically scheduled tasks.

item Manually Scheduled Automatically Scheduled
Duration Can be number, date, or text information, such as "14d" or "fortnight". Not used by Project to Help schedule the project. Only numbers representing time length and units can be used, such as "14d" or "2 months".
Work Only numbers representing time length and units can be used, such as "14d" or "2 months". Only numbers representing time length and units can be used, such as "14d" or "2 months".
Resources Can be assigned to tasks. Not used by Project to help schedule the project. Can be assigned to tasks. Used by Project to Help determine best schedule. Will change the duration of tasks if tasks are set to effort-driven, unlike manually scheduled tasks.
Start date Can be a number, date or text information, such as "Jan 30" or "Sometime soon." Not used by Project to Help schedule the project. Only date information can be used.
Finish date Can be a date or text information, such as "Jan 30" or "Sometime soon." Not used by Project to Help schedule the project. Only date information can be used.
Constraints Ignored by Project. Used by Project to Help determine best schedule.
Dependencies (links) Can be used, but won't change the scheduling of the task. Can be used, but won't change scheduling of the task.
Project and resource calendars Ignored by Project. Used by Project to Help determine best schedule.

Automatically scheduled tasks

Automatically scheduled tasks are the classic way Project schedules your tasks. Automatic scheduling provides a highly structured, systematic means of managing project schedules. Based on users’ input, such as task duration, planned work, number of resources, and constraint dates, Project calculates the earliest and latest dates for tasks for the optimal schedule.

Project schedules a project from the information that you enter about the following:

  • The overall project.
  • The individual work items (called tasks) required to complete the project.
  • If necessary, the resources needed to complete those tasks.

If anything about your project changes after you create your schedule, you can update the tasks or resources and Project adjusts the schedule for you.

For each task, you might enter one or all of the following:

Using this information, Project calculates the start date (start date: The date when a task is scheduled to begin. This date is based on the duration, calendars, and constraints of predecessor and successor tasks. A task's start date is also based on its own calendars and constraints.) and finish date (finish date: The date that a task is scheduled to be completed. This date is based on the task's start date, duration, calendars, predecessor dates, task dependencies, and constraints.) for each task.

You can enter resources in your project and then assign them to tasks to indicate which resource is responsible for completing each assignment (assignment: A specific resource that is assigned to a particular task.). Not only does this help you plan project staffing, it can also help you to calculate the number of machines needed or the quantity of material to be consumed. If you enter resources, task schedules are further refined according to the following resource information:

Other elements, such as lead time (lead time: An overlap between tasks that have a dependency. For example, if a task can start when its predecessor is half-finished, you can specify a finish-to-start dependency with a lead time of 50 percent for its successor [has a negative lag value].) and lag time (lag time: A delay between tasks that have a dependency. For example, if you need a two-day delay between the finish of one task and the start of another, you can establish a finish-to-start dependency and specify a two-day lag time [has a positive value].), task types (task type: A characterization of a task based on which aspect of the task is fixed and which aspects are variable. There are three task types: Fixed Units, Fixed Work, and Fixed Duration. The default task type in Project is Fixed Units.), resource availability (availability: Indicates when and how much of a resource's time can be scheduled for assigned work. Availability is determined by project and resource calendars, resource start and finish dates, or the level at which the resource is available for work.), and the driving resource (driving resource: The resource whose assignment to a task determines the finish date of the task.), can affect scheduling, so understanding the effects of these elements can help you to maintain and adjust your schedule as needed.

 Note   Project calculates the duration of automatically scheduled tasks based on the definitions of the duration units on the Calendar tab of the Options dialog box. Just like a normal monthly calendar, the year begins in January and each week begins on Sunday or Monday. By default, when Project calculates duration units, one day equals 8 hours, one week equals 40 hours, and one month equals 20 working days. If you enter start and finish dates for tasks and don't enter start and finish times, Project uses 8:00 A.M. as the default start time and 5:00 P.M. as the default end time.

Changing task scheduling modes

You can change a task's scheduling back and forth from automatic to manual. When you change task modes, keep the following in mind.

  • A task that is changed to automatic scheduling will have duration and dates set to Project's default settings. For example, Project will change a manually scheduled task with a duration of "A couple weeks" the default of "1 day?" A task with a manually entered start date of "tomorrow," will have the start changed to the project start date when it is changed to an automatically scheduled task.
  • A task that is changed to manually scheduled will retain its duration and dates. However, after the task is set to manually scheduled, the duration and dates can be any number, text, or date value.

Top of Page Top of Page

How does the project start date affect the schedule?

If you enter a start date for the project, by default, Project schedules tasks to begin on the project's start date and calculates the project's finish date (finish date: The date that a task is scheduled to be completed. This date is based on the task's start date, duration, calendars, predecessor dates, task dependencies, and constraints.) based on the last task to finish.

For automatically scheduled tasks, as you enter more information about tasks, such as task dependencies, durations, and constraints, Project adjusts the schedule to reflect more accurate dates for tasks.

 Note   Manually scheduled tasks will not be moved if the project start date changes.

Before and after creating task dependency

Callout 1 When you create a new project, you first enter the project's start date. When you schedule a project from the start date, all tasks start at the project start date unless you specify otherwise.

Callout 2 For both manually scheduled tasks and automatically scheduled tasks, with no task dependencies or constraints applied, the project's duration is the same as the duration of the longest task. In other words, the project finish date is the same as the longest task's finish date.

Callout 3 Task dependencies, such as the finish-to-start dependency between the first and second tasks (as shown here), can change the project's finish date.

Nearly all projects should be scheduled from a known start date. Even if you know the date that a project must be completed, scheduling from a start date gives you maximum flexibility.

However, you might want to schedule from a finish date when:

  • You need to determine when a project must start so that it finishes on a specific required date.
  • You are not sure when your project will begin (for example, you are receiving work from another source that could be delayed).
  • Your project management methodology requires you to schedule from a finish date.

As you work with your project that is scheduled from a finish date, be aware of differences in the way that Project handles some actions:

Top of Page Top of Page

How do constraints on automatically scheduled tasks affect the schedule?

When you need to control the start or finish date of an automatically schedule task, you can change the constraint on the task. Flexible constraints (flexible constraint: A constraint that is flexible and does not tie a task to a single date. Flexible constraints are As Soon As Possible, As Late As Possible, Finish No Earlier Than, Finish No Later Than, Start No Earlier Than, and Start No Later Than.) work with task dependencies to make a task occur as soon or as late as the task dependency will allow. For example, a task with an As Soon As Possible (ASAP) constraint and a finish-to-start dependency will be scheduled as soon as the predecessor task finishes. By default, all tasks in a project that is scheduled from the start date have the ASAP constraint applied. Likewise, by default, all tasks in a project that is scheduled from the finish date have the As Late As Possible (ALAP) constraint applied.

 Note   Manually scheduled tasks are not affected by task constraints. If you change a task scheduling mode from manually scheduled to automatically scheduled, the task constraint will be set to As Late as Possible (ALAP).

Constraints with moderate scheduling flexibility will restrict a task from starting or finishing before or after a date you choose. For example, a task with a Start No Earlier Than (SNET) constraint for June 15 and a finish-to-start dependency to another task can begin June 15 if its predecessor is finished by June 15 (or later if its predecessor finishes after June 15), but it can't be scheduled before June 15.

Before and after applying constraint

Callout 1 With the default finish-to-start task relationship and an ASAP constraint applied to these tasks, the successor task (the second one) is scheduled to begin as soon as the predecessor task (the first one) is scheduled to finish.

Callout 2 With a SNET constraint applied, the successor task cannot begin before the constraint date, even if (as shown here) the predecessor task is completed before the constraint date.

Inflexible constraints (inflexible constraint: A constraint that is inflexible because it ties a task to a date. The inflexible constraints are Must Finish On and Must Start On.) override any task dependencies by default and restrict a task to a date you choose. For example, a task with a Must Start On (MSO) constraint for September 30 and a finish-to-start dependency to another task will always be scheduled for September 30 no matter whether its predecessor finishes early or late.

If a task that is constrained to a date has a predecessor that finishes too late for the successor to begin on the date specified in the constraint, negative slack (slack: The amount of time that a task can slip before it affects another task or the project's finish date. Free slack is how much a task can slip before it delays another task. Total slack is how much a task can slip before it delays the project.) can occur.

To review or change the constraint on a task, right-click on the task, click Task Information , and then click the Advanced tab. Constraint information is in the Constraint type and Constraint date boxes.

Top of Page Top of Page

How do deadline dates affect the schedule?

Deadline dates (deadline: A target date indicating when you want a task to be completed. If the deadline date passes and the task is not completed, Project displays an indicator.) don't usually affect task scheduling. They are used to indicate a target date you don't want to miss, without requiring you to set a task constraint that could affect scheduling if predecessor (predecessor: A task that must start or finish before another task can start or finish.) tasks change. A task with a deadline is scheduled just like any other task, but when a task finishes after its deadline, Project displays a task indicator (indicators: Small icons representing information for a task or resource that are displayed in the Indicators field. The Indicators field is located to the right of the ID field and appears in a number of tables.) notifying you that the task missed its deadline.

Deadline dates can affect the total slack on tasks. If you enter a deadline date before the end of the task's total slack, total slack will be recalculated by using the deadline date rather than the task's late finish date. The task becomes critical if the total slack reaches zero.

You can set deadlines for summary tasks (summary task: A task that is made up of subtasks and summarizes those subtasks. Use outlining to create summary tasks. Project automatically determines summary task information [such as duration and cost] by using information from the subtasks.) as well as individual tasks. If the summary task's deadline conflicts with any of the subtasks (subtask: A task that is part of a summary task. The subtask information is consolidated into the summary task. You can designate subtasks by using the Project outlining feature.), the deadline indicator signifies a missed deadline among the subtasks.

But deadline dates can affect how tasks are scheduled if you set a deadline date on a task with an As Late As Possible (ALAP) constraint. The task is scheduled to finish on the deadline date, though the task could still finish after its deadline if its predecessors slipped.

To review or change a task deadline, right-click on the task, click Task Information, and then click the Advanced tab. Use the Deadline box.

Top of Page Top of Page

How do calendars affect the schedule?

Calendars determine the standard working time (working time: Hours designated in a resource or project calendar during which work can occur.) and nonworking time (nonworking time: Hours or days designated in a resource or project calendar when Project should not schedule tasks because work is not done. Nonworking time can include lunch breaks, weekends, and holidays, for example.), such as weekends and holidays, for the project.

 Note   Manually scheduled tasks are not affected by project or resource calendars.

Project calendars are used to determine the resource availability, how resources that are assigned to tasks are scheduled, and how the tasks themselves are scheduled. Project and task calendars are used in scheduling the tasks, and if resources are assigned to tasks, resource calendars are used as well.

The calendars referred to in Project are:

  • Base calendars    These are the foundations for the other types of calendars. You can also choose a base calendar to be the project calendar, and you can apply a base calendar to tasks as a task calendar or as the default hours for a resource calendar. Project provides three base calendars: the Standard, 24-Hours, and Night Shift calendars. You can customize your own base calendar by using any of the base calendars provided.
  • Project calendars    These set the standard working and nonworking times for the project as a whole. If resource calendars or task calendars are not used, tasks are scheduled during the working time on the project calendar by default.
  • Resource calendars    These are based on the Standard calendar by default. You can change working time or nonworking time for specific resources or a set of resources, ensuring that resources are scheduled only when they are available for work. If you have changed working or nonworking time on a resource calendar and the resource is assigned to a task, the task is scheduled during the working time on the resource calendar.
  • Task calendars    These can be used to define working times for tasks outside the working times in the project calendar. When a task calendar is assigned to a task and the resource assigned to the task has different working times in its resource calendar, the task is scheduled for the overlapping working time of the two calendars. But you can set a task option to ignore resource calendars and schedule the task through the resource's nonworking time.

To work with calendars, click the Project tab, and then click Change Working Time.

Top of Page Top of Page

How do resource assignments drive the schedule?

If you don't assign resources to tasks in your project, Project calculates the schedule using durations, task dependencies, constraints, and project and task calendar information. If you do assign resources, the tasks are also scheduled according to resources' calendars and assignment units (assignment units: The percentage of a work resource's time, or units, that the resource is assigned to a task.), providing for more accurate scheduling.

 Note   Manually scheduled tasks are not affected by resource calendars. When a resource is assigned to a manually scheduled task, the scheduling of the task will not change.

An assignment is the association of a specific task with a specific resource that is responsible for completing the task. More than one resource can be assigned to a task. Work resources (work resource: People and equipment resources that perform work to accomplish a task. Work resources consume time [hours or days] to accomplish tasks.), material resources (material resource: The supplies or other consumable items that are used to complete tasks in a project.), and cost resources (cost resources: Resources that don't depend on the amount of work on a task or the duration of a task, such as airfare or lodging.) can be assigned to tasks. Unlike work resources, assigning material resources or cost resources to a task does not affect task scheduling.

For example, in your project you have a task named Develop specifications. You also have an engineering resource, Sean. If you assign Sean to the Develop specifications task, the scheduling of this task depends on Sean's resource calendar and assignment units, in addition to task information such as duration, task dependencies, constraints, and calendars.

In addition to scheduling according to task information, after you assign resources to the tasks in your project, Project has additional resource and assignment information to use in calculating schedule information, including:

  • Resource calendars. Project schedules the assigned resources based on the working and nonworking times indicated on their resource calendars.

To assign resources to tasks, click the Resource tab, and then click Assign Resources .

Top of Page Top of Page

 
 
Maikakapit sa: