As a user I want to understand the cause and Impact relations between datasets and be able to navigate to other datasets to broaden my exploration of the data journey on a field level.
Cause and impact datasets
Datasets are organized in two columns, cause dataset are displayed on the left of the target dataset, impact on the right.
A description is displayed above them reads:
Datasets used as [cause or impact] by “[target_dataset_name]”
Viewing x to y of [total#] datasets
Each dataset displays the name of the dataset and the number of related fields.
The maximum number of characters for the dataset name that can be displayed is 20. If the dataset name has more than 20 characters, ellipsis are displayed in the middle of the name (9 characters ... 9 characters)
By default, cause or impact datasets display all the related fields.
The size of the dataset is to maximize the vertical space and display the largest number of fields (this is holds true even when there are more than one dataset for either column).
More than one dataset can be displayed in either column (cause or impact). When the number of datasets is too large to be displayed within the vertical space allocated, a pagination widget is displayed.
Cause and impact fields
At state Zero, cause and impact datasets display all the fields that are related to the target dataset.
The number of fields displayed for each dataset is optimized based on the vertical space available. When related fields cannot be displayed due to space restriction, the last row of that dataset will display ellipsis.
When the user selects to view "cause and impact" from the drop down, the view changes to display only the fields that are directly related to the field selected.
In the "cause and impact" view, datasets that don't contain at least one related fields are not displayed. All related fields are displayed, and no ellipsis are displayed. For space management issues, datasets can be paginated.
Node edges and edges
Node edges are the visual representation of the relations between fields. They are displayed every time there is a relation between the cause or impact field and the target field. This means that rows with ellipsis will have a node (and relative edges).
If a node doesn't have an outgoing or incoming edge, it may means that the target field is not displayed (e.g. pagination).
In general, we want to have all fields with relations to the target fields/dataset prioritized to be displayed in the default view. In cases when this is not possible, some of the nodes will not have outgoing/incomming edges.
Changing target dataset
As a user, I can navigate to any dataset and inspect their field level lineage.
There are two actions that I can take:
- Select the name of the dataset,
- Select a specific field,
Select a dataset: on hover, the background of the dataset header changes to $grey-08: #f5f5f5. A link is displayed "View lineage". Anywhere in the header is selectable.
On selection, the dataset become the target. The view is at zero state (no connections are highlighted).
Select a field: on hover, the background of the field row changes to $grey-08: #f5f5f5. A link is displayed "View lineage". Anywhere the row is clickable
On selection, the dataset become the target, and the selected field is highlighted (row field background is yellow, [view] link is displayed, edges and nodes are highlighted).