The used project switch impact analysis enables you to review impacting changes before switching a used project version. In other words, this tool enables early insights over version changes that would have an impact on the main project once the switch is complete. You can use the analysis to inspect impacting changes at different granularity levels, allowing you to see the impact on element-to-element usages or to dive deeper into specific affecting/affected element properties. 


To invoke the used project switch impact analysis


  1. Right-click the used project version you want to change. The shortcut menu appears. 
  2. Click Project usages > Change version. The Edit branches dialog opens. 
  3. Select the Show impact of changes before changing versions check box, as shown below. 

  4. Choose the used project version and click OK. The Impact analysis window opens shortly.

You can also invoke the used project impact analysis window using the following method:

  1. Go to the Project usages dialog, reached either from the context menu by choosing Project usages > Project Usage Options... or from the main menu Options > Project usages.
  2. The Edit Branches dialog opens. Select Show impact of changes before changing versions check box.
  3. Select the used project version and click OK. The Impact analysis window opens.

When the tool finds any impacting changes to be caused by a used project version switch the Impact analysis window shows up. Otherwise, you will get a notification that there are no impacting changes and used project version will be changed without invoking the dialog

Used project switch impact analysis window

The Impact analysis window consists of three panels:

  • Affecting Element Changes - the first panel, showing the changes in used project elements between the current used project version and the one that is to-be-switched to. Next to the panel title there are a number of elements that affect the main (using) project. This panel is separated into two columns: 
    • The first column shows used project elements. It can be displayed as a tree or in list form.
    • The second column is named Affecting.  This column shows how many elements are affected by the changed element and what kind of impact it might have (composition integrity errors or no errors).

The Affecting Element Changes panel covers both direct and indirect usages, that is, if affecting change comes from an indirectly used project, it will be taken into account as well.

  • Affected Elements - the second panel, which shows elements from the main project that are directly affected by element change(s) from the Affecting Element Changes panel. Next to the panel title are a number of elements that are affected in the main project by the selected element in the first panel.
  • Element specification - the third panel, showing the properties of selected element either from the Affecting Element Changes (changed element properties are shown) or Affected Elements (directly affected element properties are shown) panel. This panel works similarly to quick diff and is separated into three columns:

    • The first column shows the properties name.

    • The second column shows the properties value from the current used project version when an element is selected in Affecting Element ChangesWhen an element is selected from Affected Elementsthis column will show the current property value before the used project version switch.

    • The third column shows properties value changes in the new used project version when an element is selected in Affecting Element Changes. When an element is selected from Affected Elementsthis column will show the to-be property value after the used project version switch.


Impact analysis window for the Alarm system used project.

Derived properties are not considered in the impact analysis.

There are certain cases when element selection either in Affecting Element Changes or Affected Elements panels are not followed by a quick diff in the Element Specification panel:

  • Whenever an element is deleted in the Affecting elements panel, its properties will no longer exist. Following this logic, the Element Specification panel will only show a notification indicating that the element is deleted and there are no properties to show. 
  • Whenever an affecting/affected element is selected in either of the first two panels against which a quick diff does not work, such as a diagram. In this case, you will be notified that there are no property changes for this type of element. 

Toolbar

All three panels have toolbars to ease navigation through changes. 

IconNameFunctionality

Expand AllClick to expand all the elements in the tree.

Collapse AllClick to collapse all the elements in the tree.
Specific for Element specification panel toolbar

Categorized viewClick to show all property names in a category.

Alphabetical viewClick to show all property names in alphabetical order.

Compare valuesClick to compare property values.

Strip Multiline TextClick to strip multiline text. If the text in the property cell (e.g., ToDo)  covers more than five rows, it is finished with ... showing only those five rows. The complete text is available in the tooltip or in the cell edit mode.

Affecting Element Changes and Affected Elements panels have a List view tab. Use this to list all changed elements. You can search for a specific element in these List views.

Summary/Legend

The Summary/Legend section introduces change types, the number of different affecting changes and the number of affected elements. It also includes marking composition integrity errors and a green tick to notify you that changes will not invoke any new composition integrity errors.

Understanding changes

The following definitions show the different change types. 

Addition change
In the context of used project impact analysis, an addition change is treated to be the one when an element is restored from a recovered state to a normal one. Such element change is represented in the green rectangle in the Affected elements panel.

Deletion change
If an element has been removed, a deletion change occurs. The deletion change usually results in composition integrity errors, i.e., it causes the appearance of recovered elements, since the deleted element is still used in the main project.

Modification change
If an element property has been modified, a modification change occurs.

Accept Changes or Reject Changes

The Accept Changes button switches the used project version to the selected one. You will be warned if the selected version will cause or leave unresolved references. 

Reject Changes restores the project to the state before invoking the Impact analysis with all of the local changes you had as well. The same applies for X (closing the dialog).