How to Create a Matrix for Model Analysis?
A matrix is a table, which shows the existence of relationships among model elements of particular types. By reading a matrix, you can tell easily whether two model elements are related or not and what kind of relationship they have.
- Select Modeling > Impact Analysis > Matrix from the toolbar.
- Configure the matrix.
Configure matrix Field Description Diagram Name The name of diagram which is also the name of matrix. Scope The source of model elements to compare in matrix, in Project (all model elements), Diagram (only model elements in specific diagrams which are selected by users) or under Model/Package. Template Template offers a default setup to Models on Column, Models on Row and By. It is available according to the project content. For example, template "Use Case <-> Requirement" appears for selection when a project have use case and requirement. Available Models All available models in your selected scope are listed here. You can select a model to add it in the target Models on Row and/or Models on Column. Models on Column The type of model element to list at the column side of matrix. In order to list multiple types of model element, select it/them on Available Models and click button to insert it/them in here. Models on Row The type of model element to list at the row side of matrix. In order to list multiple types of model element, select it/them on Available Models and click button to insert it/them in here. By The way how matrix will match against rows and columns.
Sub Diagram - The column/row model element is placed in a sub diagram of the matching model element.
Child - The column/row model element is a child of the matching model element.
Relationship - The column/row model element is related with the matching model element. You can specify the kind of relationship between model element, as well as the stereotype, if any, assigned to the relationship. Besides, if you choose to match by Relationship, you will see the button Skip in Relationship.... This button allows you to ignore specific kind(s) of model elements when considering if two elements are related or not. It's particularly useful when two elements are conceptually connected with each other but with an intermediate element in between. For instance, you may have two components connected with each other, but with an interface in between as the provided and required interface of the components. Without skipping the interface (class) in between, the two components will not be considered to be "related", but by skipping class, which is the real element type of an interface, classes will be ignored and thus, the two components will be considered as "related".
Reference - The column/row model element is referencing the matching model element.
As Classifier - The column/row model element takes the matching model element as classifier.
Transitor - The column/row model element is transited from/to the matching model element.
Dependent - The column/row model element has properties that depend on the matching model element. "Depend" means any of the following: (1) With any kind of relationship such as association, dependency, etc. (2) As a contained element (3) As a link in description content (4) As a selected value for any property.
Using Term - The column/row model element is a term (element) and is indirectly used by the matching model element, either or both as part of its name or in its description.
Structuring View The two ways of grouping and listing elements:
Flat - Elements are all listed at single level
Directory - Elements are listed in a hierarchy, following their placement in model structure. Note that if a parent row does not match with any column, or if a parent column does not match with any row, its children rows or columns will not appear in the matrix (unless you've configured the matrix to show all/non-matched columns and rows.
Fields for matrix configuration
- Click OK button to form the matrix.
Filtering rows and columns by stereotype
Instead of listing all elements with same type in row or column, you can fitler them further by selecting only elements with stereotype(s) assigned by listed. For example, you can form a matrix to visualize the relationships between <<control>> and <<entity>> classes. To fitler, move your mosue pointer over an assigned element type in the configuration screen. Click on the <<>> button and select the stereotypes. Click Apply to confirm your selection.
The following resources may help you to learn more about the topic discussed in this page.
|Chapter 3. Matrix Diagram||Table of Contents||2. Reading a matrix|