Constraint, Task constraint is a generic term used for factors that are affecting the start and finish date of an activity. Project constraints generally apply for things like the scope, budget, schedule of the project while task constraints, on the other hand, are restrictions that are imposed on tasks to start or finish on a certain date.

Generally there are three types of constraints: soft constraints, hard constraints and constraints that offer a certain degree of flexibility.

A soft constraint does not have any date restriction associated to it and allow the greatest flexibility. Basically they can be used to schedule tasks As Soon As Possible (ASAP) or As Late As Possible (ALAP) relative to the start and the end of the project.

Hard constraints impose a date restriction and can be seen as a “must” constraint that is the task Must Start On (MSO) or Must Finish On (MFO) the given date. These constraints are useful when the task depends on external factors and are strictly connected to certain dates.

Examples of external factors: availability of equipment, contractors milestones, budget availability etc.

Flexible constraints also impose a date restriction but as opposed to hard ones they only control the earliest or latest start or finish dates for a task. They act like some deadlines:

  • a task can Start No Earlier Than (SNET) or Finish No Earlier Than (FNET) the given date; it is limited to start or finish after that date but not earlier
  • a task can Start No Later Than (SNLT) or Finish No Later Than (FNLT) the given date; it is limited in the upfront and can not pass that date but can be moved to a previous date

A good project plan is the one that uses hard constraints as less as possible. This ensures a smooth shift in time of the whole project and this is mostly useful when creating project templates. Once a project template is created the project managers can just change the project estimated start date and all the schedule gets shifted and ready to be used.