Book a Demo

Please note : This help page is not for the latest version of Enterprise Architect. The latest help can be found here.

Prev Next

Composite Structure Diagram

A Composite Structure diagram reflects the internal collaboration of Classes, Interfaces or Components (and their properties) to describe a functionality. Composite Structure diagrams are similar to Class diagrams, but whilst Class diagrams model a static view of Class structures, including their attributes and behaviors, Composite Structure diagrams model a specific usage of the structure. You can use them to express run-time architectures, usage patterns and the participating elements' relationships, which might not be reflected by static diagrams.

In a Composite Structure diagram, Classes are accessed as Parts or run-time instances fulfilling a particular role. These Parts can have multiplicity, if the role filled by the Class requires multiple instances. Ports defined by a Part's Class should be represented in the composite structure, so that all connecting Parts provide the required interfaces specified by the Port. There is extensive flexibility, and a consequent complexity, that come with modeling composite structures. To optimize your modeling, consider building Collaborations to represent reusable Patterns responding to your design issues.

You generate Composite Structure diagram elements and connectors from the 'Composite' pages of the Diagram Toolbox.

Example Diagram

This diagram shows a Collaboration used in a Composite Structure diagram to show a relationship for performing an installation. Collaborations are often used to model common patterns.

An example UML Composite Structure diagram showing a Collaboration element.

The next diagram uses this Install Collaboration in a Collaboration Use, and applies it to the UtilLoad Class via a «represents» relationship. This indicates that the classifier UtilLoad uses the Collaboration Pattern within its implementation.

An example of a UML Composite Structure diagram showing a Collaboration Occurrence.

Composite Structure Diagram Element Toolbox Icons

Icon

Description

See also

Class element

A Class is a representation of a type of object that reflects the structure and behavior of such objects within the system.

Class
Interface element

An Interface is a specification of behavior (or contract) that implementers agree to meet.

Interface
Part element

Parts are run-time instances of Classes or Interfaces.

Part
Port element

Ports define the interaction between a classifier and its environment.

Port
Collaboration element

A Collaboration defines a set of cooperating roles and their connectors.

Collaboration
Collaboration Use element

Use a Collaboration Use to apply a Pattern defined by a Collaboration to a specific situation, in a Composite Structure diagram.

Collaboration Use
Exposed Interface element

The Expose Interface element is a graphical method of depicting the required or supplied interfaces of a Component, Class or Part, in a Component or Composite Structure diagram.

Expose Interface

Composite Structure Diagram Connector Toolbox Icons

Icon

Description

See also

Connector connector

Connectors illustrate communication links between Parts to fulfill the structure's purpose, typically in a Composite Structure diagram.

Connector
Assembly connector

An Assembly connector bridges a component's required interface (Component1) with the provided interface of another component (Component2), typically in a Component diagram.

Assembly
Role Binding connector

Role Binding is the mapping between a Collaboration Use's internal roles and the respective Parts required to implement a specific situation, typically in a Composite Structure diagram.

Role Binding
Represents connector

The Represents connector indicates that a Collaboration is used in a classifier, typically in a Composite Structure diagram.

Represents
Occurrence connector

An Occurrence relationship indicates that a Collaboration represents a classifier, in a Composite Structure diagram.

Occurrence
Delegate connector

A Delegate connector defines the internal assembly of a component's external Ports and Interfaces, on a Component diagram.

Delegate

Learn more