A robust schedule can handle different scenarios and accommodates that the changes are reflected in the right direction. However, MS Project talks about predecessors and successors, but we feel that it is easier to think about 'driving tasks' and 'driven tasks' instead. In the below examples the arrow goes from the driving task into the driven task, meaning the driven task will be rescheduled based on the move of the driving task.
MS Project knows four link types
FS: Finish to Start.
- Task A must finish before Task B can start. Example: the supporting walls must be ready before the roof can be placed.
SS: Start to Start.
- Task B cannot start unless Task A starts, irrespective of when they finish. Example: When writing and reviewing a lot of documents, the writing task starts and when it starts the reviewing task starts as well. This one can also be used with a lag or lead time.
FF: Finish to Finish.
- Task B cannot finish unless Task A finishes, irrespective of when they start. Example: supervising a task is a task that can only finish when the task it supervises finishes.
SF: Start to Finish.
- The start of task B determines the end of task A. Example: The start of my exam determines when I will end my preparation.