We will be looking at following constraints,

1. Start / Finish On or After
2. Start / Finish On or Before

Start / Finish On or After:

Applying this constraint fixes the Early Dates of the activity. Hence during Forward Pass the Early Date (Start or Finish) of the activity is fixed and the Early Date ≥ Constraint Date. An activity’s late dates are not affected by this constraint. This constraint is particularly useful when an activity cannot happen before a particular date. For example – Delivery dates or certain release milestones



In the above example, we apply constraint “Start on or after = 6″. During forward pass the ES= 6 instead of 3, and the Early Dates of the subsequent activities are calculated according to this date. Hence, the floats of the activities change after applying this particular constraint.

Start / Finish On or Before:

Applying this constraint fixes the Late Dates of the activity. Hence during Backward Pass the Late Date (Start or Finish) of the activity is fixed and the Late Date ≤ Constraint Date. An activity’s Early dates are not affected by this constraint. This constraint is particularly useful when an activity cannot happen after a particular date. Example – Completion milestones etc.. It can be used to highlight delays in completion activities as when an activity gets delayed, it starts getting a negative float equal to amount of days delay from the constraint date. Hence, it helps us in judging the impact of delay on activity.



In the above example, we apply constraint “Finish on or After = 3″. During Backward Pass the LF= 3 instead of 4, and the Late Dates of the subsequent activities are calculated according to this date. Hence, the floats of the activities change after applying this particular constraint.