After a while, clusters of classes that strongly interact and form
a unit will start to peel out from the architecture. To express this,
the corresponding clusters can be represented as components. If taken
far enough, this can lead to a highly reusable component architecture.
But such an architecture is hard to design from scratch and usually
evolves over time. As mentioned above, component diagrams are, like
object diagrams, edited with the deployment diagram editor and
therefore the corresponding model elements are explained in that
section.
Nodes and
Instances
of Nodes - Nodes represent the hardware elements of the
deployment system.
Components and
Instances
of Components - Components stand for software elements
that are deployed to the hardware system.
Links - Links are used to connect instances
of nodes or objects.
Dependencies - Dependencies exist between
components and can be specified by utilizing predefined or
user-defined stereotypes.
Associations - Associations are used to
display communication relations between nodes. They can be
specified by utilizing predefined or user-defined stereotypes.
Objects,
Classes,
Interfaces - Components and nodes can
include objects, classes or interfaces.