Dependencies
Figure 5-1 shows components associated with the project management system, and Figure 5-3 shows nodes associated with the project management system, but how are components related to undifferentiated and differentiated classes, packages, subsystems, and to other components and nodes? Specialized types of dependencies — called reside, use, and deploy dependencies — address these questions. The next few sections in this chapter discuss these specialized types of dependencies. Dependences in general are discussed in Chapter 3.
Reside Dependencies
A reside dependency from a component to any UML element indicates that the component is a client of the element, which is itself considered a supplier, and that the element resides in the component. The element may be an undifferentiated or differentiated class, package, or subsystem. An element may reside in any number of components, and a component may have any number of elements that reside in it.
A reside dependency is shown as a dashed arrow from a client
component to a supplier element marked with the
reside
keyword. Figure 5-5 shows
that the User
Interface
and
Utility
packages reside in the
User
Interface
component.
Because the User Interface
package depends on the
Utility
package, the User
Interface
and Utility
packages
must reside in the same component; otherwise, the
User
Interface
package would
not be able to use the Utility
package.
Figure 5-5. Reside dependencies for packages
Figure 5-6 shows that the
Business
Processing ...
Get Learning UML now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.