Setting Task Constraints in Microsoft Project
Our last post introduced constraints, including a rundown of each of the different types in Microsoft Project. This post will demonstrate how to enter and set constraints on tasks.
Entering Task Constraints
You can set the default constraint for new tasks with the Schedule from option. You can find this in the Project Information dialog box as shown in the following figure.
| Figure 1.
Schedule from options
If you choose to schedule from the Project Start Date, the default constraint for new tasks will be As soon as possible. If you choose to schedule from the Project Finish Date, the default constraint for new tasks will be As late as possible.
The Microsoft Project scheduling algorithms automatically update the schedule each time the schedule changes. Once you set a constraint, you can change it according to how you’d like the algorithm to behave. Microsoft Project can also set some constraints automatically reflecting user input.
If you enter a start or finish date into Microsoft Project, there’s a good chance that you are also setting a soft constraint. The soft constraints are Start no earlier than (SNET) and Finish no earlier than (FNET).
- If you schedule from the Project Start Date and you enter a task start date, Microsoft Project will change your constraint from ASAP to SNET (i.e. a “soft” constraint from scheduled start).
- If you schedule from the Project Start Date and you enter a task finish date, Microsoft Project will change your constraint from ASAP to FNET (i.e. a “soft” constraint from scheduled finish).
Once you set these constraints, the operation of Microsoft Project’s scheduling algorithms may confuse some users. Because many Microsoft Project users don’t notice or understand why this scheduling behavior is happening, the constraint field in Microsoft Project is widely misunderstood. As a result, it’s often avoided because of fear of unpredictable behavior.
The hard constraints—Start No Later Than, Finish No Later Than, Must Start On and Must Finish On—can only be set by the end user. Hard constraints cause even more unpredictable behavior when set, which is why Microsoft Project does not automatically set these constraints for you.
The best way to handle task constraints’ effects (or non-effects) on task scheduling behavior is to take the time to familiarize yourself with this feature of Microsoft Project.
Setting Task Constraints
Let’s say a team assigned to create a project plan has to wait until all the management review comments have been received. If they start the task before the comments are in, they will have to throw out their work and repeat it. In a case like this, starting early will waste effort, not save time. We want to make sure the task information in the plan reflects this practical constraint.
- In the example project, we enter the Start date “10/26” for the task Create project plan (ID 4). A dialog box appears with an option to Move the task, keep the link. The Planning Wizard presents this question because we are moving a linked task to a later date. The Microsoft Project scheduling engine had set the finish date set to “11/6” based on the default constraint of As early as possible and the end of its predecessor task.
| Figure 2.
Planning Wizard constraint warning
2. Click OK.
3. Notice the icon that appears in the Indicator field for Task 4—a calendar icon with a blue square . Hover your mouse pointer over it to read the note.
Constraint indicator message
4. Double click on a task to see the Task Information dialog box. In the example project, we click on the task Create project plan (ID 4).
5. Click the Advanced tab.
6. Microsoft Project automatically set the Constraint type to Start No Earlier Than. Also, the Constraint date was automatically set to “10/26”. The dialog box will resemble the following:
Viewing SNET constraint in Task Information
7. Look at the Gantt Chart to see what appears to be a lag between Tasks 3 & 4. The gap between these tasks are a result of the SNET constraint you set by entering a different start date than what the scheduling had calculated.