The Matrix, or 'Data Warehouse Bus Matrix', is a key element used to design a Data Warehouse and the central design element of the SchemaSight approach.
Originally developed by Ralph Kimball and the team at the Kimball Group, the Matrix layout and design is a technology- and database-independent approach and industry standard.
The SchemaSight Bus Matrix follows the same industry standard design layout, with some additional elements for extra functionality and accountability.
The Menu Options
The menu bar above the Matrix provides the following functions:
- Undo/Redo - every action performed within the current session of editing the Matrix is recorded, and can be undone and redone, as desired.
- Estimates - this toggle switch will activate the Estimates Breakdown, a calculated display showing the amount of work expected to complete the build using the current state of the Matrix. These calculations use the elements found on the Settings page.
- Sort - beginning with the Custom sort, the Matrix is displayed in whatever order the designer wishes. The other sort options available are "Alphabetical order" (up or down) and "Status" order (up or down).
- Help - loads the Help screen you are currently viewing.
- Tour - activates a tour of the Matrix design tool.
- Share - allows the Matrix design to be shared with others, providing them access to this current design in SchemaSight. When you share the matrix, the recipient will be added to your tenant as a user and will receive an email notification. They will need to set their password the first time they log in.
- Export - generate an Excel spreadsheet with the Matrix design as it appears on screen, reflecting the current sort order and Estimate Breakdowns. Once the generation of the Excel spreadsheet is complete it will automatically appear as a browser download.
The Matrix Layout
The Matrix consists of Dimensions as column headers and Facts as rows. Where these Facts and Dimensions (or rows and columns) connect are the Relationship values, specifying the number of relationships between the Fact and Dimension.
Each Entity (Fact or Dimension) has a Name, Complexity level and Status and can be dragged to a chosen position within the Matrix.
An Entity's complexity level describes how difficult it will be to build the Entity and is denoted by a one or two-character value, seen at the far end of the Entity's row or column. The complexity indicator values can be modified on the Settings page.
An Entity's status value describes its current development state and is denoted by the color of the Fact or Dimension name box. These values and colors can be seen in the Status Legend and cannot be modified. the Status Legend box can be dragged anywhere on the page.
The numbers in the Matrix cells represent the relationship(s) between the Fact and the Dimension. Where there is no relationship, there is no number. The number of relationships (i.e. Role Plays) between the Facts and Dimensions can be modified by clicking the + or - buttons presented when hovering your mouse over the relationship box. The status color is determined automatically by the lowest status value of the Fact or Dimension.
The Process
To begin developing your own Bus Matrix with SchemaSight, you will initially be presented with a simple, editable Matrix, containing sample Facts, Dimensions and Relationships.
To Add a new Fact or Dimension, click the 'Add New Fact' or 'Add New Dimension' button. This will insert a new Fact or Dimension at the end of the existing Entities.
To change the Name of a Fact or Dimension, click on the current Name and type whatever name you would like to give it. To finish editing, click out or press Enter.
Modifying the Status or Complexity of an Entity (Fact or Dimension), or Deleting, is done via the Context Menu.
Context Menu
This Context Menu provides the functionality to:
- Delete the selected Fact or Dimension. Click the delete menu item and confirm in the dialog that appears.
- Change the current Complexity level. Select from the available values under the Complexity menu item.
- Change the current Status. Select from the available values under the Status menu item.
To open the Context Menu, three different ways for each Fact or Dimension:
- right-click anywhere in the Entity box (the Fact or Dimension Name box);
- left-click the ellipsis (three dots in the Name box next to the relationships)
- left-click the Complexity value (at the far end of the relationships, outside the totals box)
Drag and Drop
Use the 'drag and drop' feature to reposition a Fact or Dimension. To drag an Entity to another position, click the drag handle (three lines with small arrows) and drag it up or down (for Facts), left or right (for Dimensions). Once you have reached a highlighted spot where you want the Entity to move to, release your mouse. The drag handle for Facts is at the end of the name for Facts and above the name for Dimension is at the far end of the name, away from the relationships.
Estimate Breakdown
The Estimate Breakdown is a calculated breakdown of the expected effort required to finish the build of the Data Warehouse. The view of the Estimate Breakdown can be toggled on or off from the menu bar.
You can use the Settings page to adjust the estimated effort for each Complexity and build Task breakdown to customize estimating for your project.
The Project estimated effort for each complexity, Task breakdown and assigned Entity Complexity are used to calculate a task breakdown and estimated effort for each Entity. A total project estimate in days is calculated from the sum of estimates for each entity.
The number of relationships between each Fact and Dimension does not change the calculated value in the Estimate Breakdown; this is determined by the Complexity value assigned (how many relationships can help the designer decide what Complexity level to assign to each Entity).