This view lets you display the capabilities of your business on a canvas. By default, the layout will follow the order defined and displayed in the navigator, but you will have much more control if you use a dedicated field to define your layout. Read on to find out how to make that happen.
For the sake of this short tutorial, we will take an example where the capabilities are organized by domain and sub-domains. This means subdomains are grouped within domains and capabilities are grouped within subdomains, i.e. a hierarchical model containing three component types. This example without any configuration looks like this:
You have the option to select a list field then the values in the field determine the order in which components are displayed. We highly recommend creating a specific field to use for this arrangement.
It must be a list field type and can contain as many options as needed. The arrangement of the components will match how the value options are presented in the dropdown.
In our example, we have created a list field called “Component order”.
Two components with the same value in the selected field will be displayed in the same row. Here 'Digital and User Experience (UX)' and 'Integration' have the same priority:
These rules apply recursively. Here we have set different values for the subdomains in 'Integration':
This produces this layout:
Additionally, we can define that a container should move to the sides of the canvas, for instance, in order to express that the connected capabilities are of supporting nature. This vertical column value must be one of the list value options in the selected field. The specific value is selected in the dropdown of the modifier bar:
With this selection, the 'Security' moves to the side, and our example view looks like this:
All vertical columns which are selected in this way will be divided into two groups and displayed on the left and right side of the canvas.
This will again also work recursively on any nested container.
Any container or a capability for which no priority is set will be displayed either horizontally or vertically depending on the state of the button on the modifier bar the furthest to the right 'Layout of components without field value'.
Grouping Components
We can now with the above rules, for example, create something like this
Which is almost a standard Business Model Canvas except for the two 'Group' components which have in this view the only purpose of supporting our layout. In the dropdown 'Select grouping type' we can choose a type with this purpose:
This will have the effect that these types are only used to structure the layout but will otherwise not be visible at all so that we get our standard Business Model Canvas:
Collapsing Component Tree
An additional way to control the layout is the dropdown to set the max depth of the component tree:
In this example, the max depth is set to 4 (the depth of a tree is the number of ancestors a given component has). That means all components which are nested deeper will not be displayed. This is mainly interesting in conjunction with showing incoming or outgoing linked components. While the deeper nested components are not displayed, all the linked components of these hidden components are allocated and displayed as children of the last visible ancestor.
Pro tip:
If you use for the domain, sub-domain, and the capability the same type, you can still create a view with some depth by using a transparent color for the component type. To do that go to 'Manage component types and model' in the sidebar editor in the 'Workspace' tab and click the color of the according to type. This opens the color selector:
Regarding the Layout strategy
The width of the elements is calculated with the following rules, with the goal to create a map with about 4:3 ratio based on the layout rules. You can define on which row and on which position the element is placed, but everything else is calculated.
/*** Layout strategy** For each core row calculate all the variations, e.g. a block with 6 leafs* can be layed out as 1x6, 2*5, 2*4, 2*3, 3*2, 4*2 or 6*1. That means get* the max count of rows and then calculate for each row hight:** - the empty cells (as an indicator of the compactness of the variation)* - the deviation of the target column count* - the deviation of the target row count** Based on these numbers (with according weighing) choose the best fit.*/