Application Relationships in Configuration Manager.
Dependencies make it easy to specify the software prerequisites of an Application. This can be multiple things and it can even contain AND and OR statements. For example it’s possible to say that Adobe Reader needs to be present. Besides that it’s also possible to define what needs to be done when neither of them is present. It’s possible to specify which version needs to be auto-installed.
Supersedence makes it easy for an administrator to create a relationship between two Applications and “declare” one Application newer than another previous Application. The supersedence – relationship needs to be specified on an Application–level, but the actions can be specified on a Deployment Type–level. This makes it possible to specify per Deployment Type what the new Deployment Type will be and whether the old version needs to be uninstalled, or that the new version will do an upgrade to the old version (default is upgrade).
Global Conditions are the most “variable” relationship, because these conditions can be almost everything. The relation between these two is that a Global Condition has to be added to a Requirement Rule to be evaluated. Besides this a Global Condition can contain one or more System Attributes, which can be anything from WMI Queries until Registry Values. Global Conditions can be assigned per Deployment Type. This makes it possible to deploy multiple Deployment Types to the same (User) Collection, but only the one which has all requirements met will be truly deployed.