Identify and define dependencies between partitions.
Dependencies and Associations
Dependencies describe a relationship between partitions. You can figure out where the dependencies are by evaluating the associations. One
class is associated with another class because there is some form of communication between them. Objects of one class might query the other
class for information. For example, the ShowSeat might ask the Seat for its location details to print out the Ticket.
Dependencies and Interactions:
One way to find the direction of the dependency is to look for the direction of the communication between the objects. In the sequence and
collaboration diagrams, you documented the way that objects talked to one another. View the series of image below to examine dependencies and interactions. Find the interaction diagrams where the two types of objects communicate. Find out whether the event arrows all go one direction or whether they go both directions. The direction(s) of the event arrows will tell you the direction of the dependency.
UML Dependency Associations
Functional Dependencies
A dependency may also exist between a function and a class or object.
For example, the object model tells you that "Shows" must be part of an Event (composition). In order to create a Show object you should invoke the "Event" object, ask it to create a new Show, and add the new Show object to its composition. The Show Management function (use case) initiates the addition, cancellation, and rescheduling of Shows. But Show Management depends on the Event object from Event Management to do the actual work.
Time dependency:
Yet another way to identify dependencies is to determine which object has to exist first. For example, in the Pricing subsystem there is no
object interaction that would tell you explicitly in which direction to draw the dependency. Both the "Show" and the "pricing plan objects" have to exist before the
Show pricing subsystem can do its job.
Partition Dependencies - Exercise
Click the Exercise link below to work on the course project.
In this exercise you will practice determining the dependencies between domain partitions.
Partition Dependencies - Exercise