In this post I will write about constraints
There are three types of constraints:
- Flexible constraints. This is a default type of constraint in MS PROJECT. It means that a task can start As Soon As Possible
- Semi-flexible constraints. A task must begin or end no later than the defined date
- Inflexible constraint. A task must begin or end on a certain date.
Flexible
As Soon As Possible
Project will schedule a task to occur as soon as it can occur. This is the default constraint type applied to all new tasks when scheduling from the project start date. There is no constraint date for an ASAP constraint.
As Late As Possible
Project will schedule a task tooccur as late as it can occur. This is the default constraint type applied to all new tasks when scheduling from the project finish date. There is no constraint date for an ALAP constraint.
Semi-flexible
Start No Earlier Than
Project will schedule a task to start on or after the constraint date that you specify. Use this constraint type to ensure that a task will not start before a specific date.
Start No Later Than
Project will schedule a task to start on or before the constraint date that you specify. Use this constraint type to ensure that a task will not start after a specificdate.
Finish No Earlier Than
Project will schedule a task to finish on or after the constraint date that you specify. Use this constraint type to ensure that a task will not finish before a specific date.
Finish No Later Than
Project will schedule a task to finish on or before the constraint date that you specify. Use this constraint type to ensure that a task will not finish after a specific date.
Inflexible
Must Start On
Project will schedule a task to start on the constraint date that you specify. Use this constraint type to ensure that a task will start on an exact date.
Must Finish On
Project will schedule a task to finish on the constraint date that you specify. Use this constraint type to ensure that a task will finish on an exact date.
Which type to choose? Well, the best approach is to use Flexible constraint.
This type of constraint lets MS PROJECT to schedule task with only one limitation and that is, predecessor and successor relationship. In previous picture you can see that TASK 2 will start immediately after TASK 1 ends.
If you use semi-flexible constraint like, for example, Start no Earlier Than, task will start no earlier than date you have entered in the Constraint date field, but it can start later than this date if its predecessor ends later than given date.
If you use inflexible constraint like, for example, Must start on, task will start on specific date (no prior and no later than given date). In my next example I have TASK 1 which will start on 31.03.2011 and finish on 01.04.2011 (2 day duration), and its successor TASK 2
which will start on 04.04.2011 and finish on 06.04.2011 (3 day duration). Now I
will put the inflexible constraint Must Start On and the constraint date will be 01.04.2011 (see the picture below):
When I click on OK button I get this:
This is a warning screen. It asks you: “What do you want to do?”
If you choose: “Cancel. No constraint will be set on ‘TASK 2’” you are actually cancelling the whole thing
If you choose: “Continue, but avoid the conflict using a Start No Earlier Than constraint instead” the constraint will be changed from Inflexible->Must Start On to Semi-flexible-Start No Earlier than
If you choose: “Continue. A Must Star On constraint will be set.” You will get (from my example) this:
If you choose: “Cancel. Avoid the scheduling conflict” you are actually cancelling the whole thing
If you choose: “Continue. Allow the scheduling conflict” you will get negative slack (see
the picture below):
For a Task you can enter duration, start or finish date:
If you enter a Duration (and only duration) you are setting flexible constraint->As soon as possible (when scheduling from the project start date). If you enter a Start date you are applying a Start No Earlier constraint. If you enter a Finish date you are applying a Finish No Earlier constraint.
If you know that your task has a deadline one common mistake is to put inflexible constraint -> must finish on. Suppose that you have a task with 1 day duration and the deadline is 01.04.2011. If you put Must finish on constraint with 01.04.2011 you are increasing the risk for this task. Why? Because you are telling MS PROJECT that this task MUST finish on that date and NOT BEFORE. What if your required resource is sick?Better approach is to let MS PROJECT to handle start date with As Soon As possible constraint and put the deadline information about the task.
Here is the example: We have the TASK with 3 day duration:
We have the deadline for this task and it is 05.04.2011.
We will put it here:
And we will get the Deadline indicator in our Gantt diagram:
See you!
Thank you for this post. I am having an issue where MS Project will automatically set constraints to my tasks. Typically is sets is as “start no earlier than,” and it gives me a very hard time in changing this. Whether I’m trying to adjust the date that is set, or simply remove the constraint all together, it usually makes me do it several times before it allows the change to take place. Do you have any advice on how I can avoid this issue? Thank you 🙂
Plaesa sent me example (mpp file) to neneadtrajk@gmail.com. It will make a Task to Start noi earlier automatically if you enter start date by yourself!
Hi Nenad
I have the exact same issue as Sarah explained on this post. My tasks are all set to automatically scheduled. I update actuals weekly and once completed I update the project and select ‘reschedule uncompleted work to start after xxxxx’ . MS project then automatically sets a ‘start no earlier’ constraint with date date(xxxxx) on some of my tasks. I then manually need to remove them the next time i want to update the schedule. Any ideas what is driving this behaviour would be appreciated.
Thanks
Carol
Read my Blog post wrote at Feb 4th
Pingback: Start and Finish Date with Auto Scheduled Task | Nenad Trajkovski
Please can you help me. I would like to know how I can ask MS project to set one task ALAP without causing successors to move ALAP as well. In other words, I like to keep all tasks as MS default setting (ASAP) except one task to be set as ALAP.
Your response will greatly be appreciated.
I’ll write a post about that in next 1 hour!
Who is the individual who published this posting? What is the easiest way to get in touch?
I prefer by phone, but e-mail is okay too.
ntrajkovski@gmail.com
What is the preferred way to communicate with the individual that
created this content? Can you please provide either a phone
number or private e-mail address? Thank you so much.
nenadtrajk@gmail.com
Is there a commentary form where we can get in touch
with the creator of this post? What’s the most effective way to reach out?
nenadtrajk@gmail.com
Really it is great blog for both Ms project 2010 and Project Server 2010
Thanks for a great Blog…just a quick queston…Is it good practise to put a “Finish No Later Than
” constraint as well as a setting the task with deadline with the same date
Thanks for a great Blog…just a quick queston…Is it good practise to put a “Finish No Later Than
” constraint as well as a setting the task with deadline with the same date
Well, deadline gives you more flexibility, but if you want to make a semi flexibile constarint use FINISH NO LATER. In that case you don’t need deadline!
I am motivated by your achievements Nenad T, I can now start dreaming.
I’m glad that You like it 🙂
are you on linkedin?
Yes I am. Nenad Trajkovski
I just joined link in.