Chapter 11. Modeling a Class’s Internal Structure: Composite Structures

Sometimes the primary UML diagrams, such as class and sequence diagrams, aren’t a perfect match for capturing certain details about your system. Composite structures help fill some of those gaps. Composite structures show how objects create a big picture. They model how objects work together inside a class, or how objects achieve a goal. Composite structures are fairly advanced, but they’re good to have in your bag of tricks because they are perfectly suited for specific modeling situations, such as showing:

Internal structures

Show the parts contained by a class and the relationships between the parts; this allows you to show context-sensitive relationships, or relationships that hold in the context of a containing class

Ports

Show how a class is used on your system with ports

Collaborations

Show design patterns in your software and, more generally, objects cooperating to achieve a goal

Composite structures provide a view of your system’s parts and form part of the logical view of your system’s model, as shown in Figure 11-1.

Internal Structure

Chapter 5 introduced possession-related relationships between classes, including association (“has a”) and composition (“contains a”). Composite structures offer an alternate way of showing these relationships; when you show the internal structure of a class, you draw the items it possesses directly inside the class. Relationships between items in a class’s internal structure ...

Get Learning UML 2.0 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.