Let's look at the Dependency types between the project activities in this PMP tutorial video.
There are four types of dependencies and they are mandatory, discretionary, external and internal
Mandatory
Inherent in the nature of the work. cannot be done any other way. Sometimes referred as hard logic
Example: Software application development can't be started before collecting the requirements.
Discretionary
Based on the preference of the team. can be changed if needed. Process oriented. Sometimes referred as soft logic.
Example: Order of developing an application's various modules
External
Something outside the project, impacts something internal to the project.
Example: Application deployment team can't install the application until infrastructure team provides the required setup.
Internal
Dependencies that are within the project team’s control.
Example: Testing team depends on the development team to deliver the product to test