How Task Dates Are Automatically Set in Microsoft Project (Part 2)
Have you ever been unable to change the start date of a task in Microsoft Project? You type in 11/2 for the start date and it changes back to 11/19. In most cases, Project is not misbehaving; you need to understand what Project assumes when it schedules tasks. In this three-part series, we’ll explore how Project’s scheduling algorithms use links, constraints, preset options, and dates to automatically set your task start and finish dates.
As we covered in our last post, there are several things that can be going on when Microsoft Project sets dates in a way that goes against your expectation. In this series, we cover several of the most common considerations to make that should shed some light on the logic and priorities of Project’s engine:
- How does the Project Start Date affect a Task Start Date? (Part 1)
- How can a Task Date Constraint affect a Task Start Date? (Part 1)
- How do Task Links override a date that I enter? (covered in this article)
- How do Linked Summary Tasks affect my ability to set a task date? (covered in this article)
- How does an Actual Start Date affect a linked task? (covered in this article)
- How can setting Calculate to Manual affect my task dates? (Part 3)
- How do calendars affect the schedule calculation? (Part 3)
- How does Resource Leveling affect the schedule calculation? (Part 3)
There are several options and features that can help you through this process. Two of these features–Show scheduling messages and the Planning Wizard–are alert options that are set by default, but if you want to make sure that they are selected, Part 1 (“Alert Settings”) covers where to find those options.
Another feature in MS Project is the Task Inspector, which explains some of the logic behind the automatic scheduling engine. This tool can be helpful when you are truly confounded, but this article is meant to make these considerations much more intuitive so that you don’t have to refer to the Task Inspector for every single task date that you set. Part 1 (“Enlisting Help from Task Inspector”) covers the basics of using the Task Inspector.
Consideration #3: How do Task Links override a date that I enter?
In the last consideration (in Part 1), we covered how a Start No Earlier Than (SNET) date can override a finish-to-start date, but the opposite can sometimes happen to linked tasks. You may enter a start date for a task, and Project changes the date back to what it was before. In Figure 1, the Task Information dialog shows that Tasks 9 and 10 are linked.
Note: You can get to the Task Information dialog box in one of two ways. You can either highlight a task and go to Task:Properties:Information in the ribbon, or you can simply double click the task.
In the example below, when we key in a start date of 10/1 for Task 10 and press Enter, Project keeps its start date as 10/3. Keying a date for Task 3 again changed the default constraint from As Soon As Possible (ASAP) to SNET for the date you keyed. In this case, the task link appears to have won the link-versus-constraint battle. In fact, the Start No Earlier Than constraint of 10/1 is still set, but the link causes Task 10 to start later, which makes sense for the SNET constraint.
The easiest way to understand these constraints is to read them like a logical English sentence. If a task has a constraint of SNET 11/1, it can’t start earlier than 11/1, but that doesn’t necessarily mean it can’t start later.
Hard and Soft Date Constraints
While on the subject of date constraints, we should say a word about the different kinds that exist. So far, we have mentioned Start As Soon As Possible (ASAP), Start No Earlier Than (SNET) and Start No Later Than (SNLT). The latter two are regarded as “soft” constraints because they do not impact the schedule’s tendency to be pushed out into the future. As we saw above, a SNET constraint gets superseded by other scheduling influences. A task with a soft date constraint has an indicator consisting of a calendar icon with a blue dot in it.
By contrast, a task with a “hard” date constraint has a calendar indicator with a red dot. These constraints prevent the calculation from scheduling tasks later than the constraint date. The hard constraint types are Start No Later Than (SNLT), Finish No Later Than (FNLT), Must Start On (MSO) and Must Finish On (MFO). Figure 2 shows the two different type of indicators for constraints:
Consideration #4: How do Linked Summary Tasks affect my ability to set a task date?
One of the more difficult restrictions to understand is how Linked Summary Tasks affect your ability to set a start date for related tasks. If you link the summary tasks Design and Development phases (Tasks 1 and 11 in Figure 3) with Development as the successor, then none of the tasks in Development can start before Design is complete.
What if Design ends on 10/3? If you set a SNET constraint before 10/3 for any task in the Development phase, the start date based on the summary task dependency will take precedence: no task in the Development phase will begin until at least 10/3. Similarly, as the example in Figure 3 shows, the summary task dependency will supersede the detailed task dependency between tasks 9 and 13.
This situation can be hard to spot because you may not realize that the detailed tasks in Development are part of a linked summary, unless you specifically look for the link between Design and Development.
Figure 4 shows another example. In this case, the affected detailed task (Task 5) has predecessors in the same phase (Tasks 3 and 4). The Design summary task (Task 1) has a Finish-to-Start (FS) predecessor (Task 25) with a finish date of 9/24. Tasks 2, 3 and 4 are not affected by this dependency because they have Actual Start Dates. But Task 5–which has Tasks 3 and 4 as FS predecessors–is not scheduled to start until 9/24, even though you might have expected it to start on 9/21. This is because Task 24 is a predecessor to the summary task that includes Task 5.
This situation can be even more difficult to see when the summary task does not appear on the same screen as the detail task that you’re trying to update. This can happen when a task is buried deep in the task outline (Work Breakdown Structure), so the related summary task is many tasks higher in your outline. It’s also hard to see when the task is more than one outline level lower than the linked summary task. You may have to view every summary task in the task outline to find the linked summary task that’s restricting you from modifying the Task Start Date.
Consideration #5: How does an Actual Start Date affect a linked task?
Sometimes a task link and the associated start date for a task may appear to misbehave due to a task that contains an Actual Start Date. The “Reference source not found” error shows that Task 6 appears to have a negative lag, causing it to start before the start of Task 5. A further investigation shows that Task 8 has a constraint of As Soon As Possible and the lag between Tasks 5 and 6 is zero days (0d). This can be puzzling.
The Update Tasks dialog can help with this. Go to Task:Schedule in the ribbon, click on the drop-down arrow next to Mark on Track, and select Update Tasks. The Update Tasks dialog in the figure above reveals that Task 6 has an Actual Start Date of 9/20, which overrides the predecessor link to Task 5. This can happen either because you keyed in an Actual Start Date, or because the task’s %Complete field is greater than 0%. If you forget that the task has already begun, you may be confused as to why the links don’t appear to be functioning as expected.
If you think a date or a link is acting strangely, then don’t give up. Project is doing what it was designed to do; you just need to understand the inner-workings of how Project deals with dates, links, and constraints as it schedules your tasks. Chances are pretty good that once you understand the mechanics behind it, you’ll agree with the automation.
In Part 3 we will delve into the final three reasons why the task settings in Microsoft Project might work outside of your expectation.