Weighted Hierarchy
Containment plays a central role in enabling abstraction in software engineering. It describes the relationship between two objects where one object is a part of – or belongs to – the other. It creates hierarchical structures where the parent objects (the containers) contain child objects (the containees). Conceptually, the lifespan of the containees is contingent on that of the container: when the container is deleted, so are the containees. The Weighted Hierarchy SMS exploits the support of composition (a restrictive form of association) in many DSLs to visualise recursive containment relationships, where each element can be attributed an importance or weight.
Intent
The Weighted Hierarchy SMS aims to understand (multi-level) hierarchies emerging from containment relationships, and the relevance of their elements. The main sensemaking tasks to answer are:
- What is the structure of the examined component?
- What is the relevance of the components?
Presentation metaphor
This is a structural-based SMS. The other SMS that belongs to this group is Connectivity, which relaxes the composition to an association.
Context meta-model
The strategy fuses the concepts of containers and containees into a single class, HierarchicalElement
. These have a name
and an optional numeric weight
which, by default is the size of the children
collection. What characterises the SMS is that hierarchical elements are related with themselves via a children
composition, supporting recursive containment relationships.
Visualisation variants
- The SMS can be visualised with Treemaps spanning multiple levels.
Properties
title
: string [1..1]. Title of the visualisation.