When a “mandatory dependency” is set between 2 tasks, the 1st task to be accomplished (the “predecessor”) must be set to completed before the 2nd (the “successor”) may be started.
On the other hand, a “nonmandatory dependency” allows you to begin work on the successor task even if its predecessor(s) is/are not completed.
When tasks linked with dependencies are scheduled, it is very easy to change the task schedule. A modification to the Estimated End Date of a task will trigger the rescheduling of subsequent tasks, whether the dependencies are mandatory or nonmandatory.