Relationships
Introduction
Relationships play a central role in modeling the interaction between model elements. Following the principles of C4 methodology, they can be classified between actors, systems, containers, and components. Each line drawn on a diagram represents a direction that specifies the dependency or data flow through a label. In addition, a scope can be used to determine whether the connection is synchronous or asynchronous. Multiple relationships are also possible to represent complex and multi-layered interactions between model elements.
Overview
This page provides you with an overview of all relationships between the model elements within the project.
You can view the details of a relationship by clicking on the respective row within the table or using the table row action Show details. This opens a second column to the right of the table where the following information can be accessed:
- Details: Master data of the relationship (see also Create a relationship); all writable fields are editable here as well.
- Usages: Displays where the relationship is already in use. This can be Diagrams to which the element has been added.
- Relationships: This tab contains all model elements of the project that are used as “source” and “target”. In a diagram, these relationships are visualized as arrows between the model element cards.
Additionally, you can find the following actions in the overflow menu of the details:
- Delete relationships (see Delete a relationship below)
Create a relationship
Relationships can be created on a diagram. Each model element card has two nodes for adding relationships. Just click on the bottom node and drag the cursor to the top node of the model element you want to connect it to. The Incoming and Outcoming endpoints are immediately reflected within the Relationships tab of the model elements details as well. You can specify the type of relationship between the two elements by clicking on the relationship and entering a label in the sidebar.
Relationships are defined using the following master data:
- Label: The relationship label to indicate the dependency or data flow (optional)
- Scope: A relationship can be marked as Sync or Async for further differentiation. (required)
- Tags: To tag the model element (optional)
Edit a relationship
All editable fields can be directly edited within the details view of a relationship. You can view the details of a relationship by clicking on the respective row within the table or using the table row action Open details. This opens a second column to the right of the table where all information can be accessed and changed.
Delete a relationship
The capability to delete a relationship can be found in overflow menu at the end of each table row, as well as in the overflow menu of the details section of each model element.
When you delete a relationship, it is also removed from all diagrams in which it is used. You will need to confirm the action before the selected relationship is permanently deleted.
Delete unused relationships
To remove the relationships no longer used in the project, click the Delete unused button.