Summary: Information about the Get Start and End Points feature introduced in CAST Imaging ≥ 2.17.

Introduction

Assessing the impact of a change can be a time-consuming task, as it requires:

  • Evaluating the cascading effects
  • Identifying affected areas and components
  • Evaluating the potential risks and benefits

To streamline this process, the start points and end points feature helps developers by providing a comprehensive view of all linked "start points and end points" for the selected element. This view helps determine the extent of necessary regression testing. Additionally, understanding an element's end points and start points is valuable for integrating it into larger connections and identifying suitable interactions for seamless operation.

The feature is available at Object level in all scopes.

Several similar features are available in the UI: Path FinderShow Paths, Start Points, and End Points and Call Hierarchy - the basic differences are as follows:

  • Show Paths (renamed as Highlight Path) displays all paths between the two selected objects based on callee links .
  • Path Finder not only displays all paths between two selected objects using any link type, but also the shortest path. Additional filtering can also be applied to the results, for example, the ability to:
    • choose the specific link types between the source and target objects
    • choose the number of "hops" between the source and target objects
  • Start Points and End Points​ displays the start points and end points linked to a selected element.
  • Call Hierarchy displays a comprehensive call graph for a chosen element, showcasing its callers, callees, or both.

Accessing the feature

To access the Get Start and End points feature, you must be working at Object level in any scope:

Right click an object in the view and select Get Start and End points from the contextual menu - this object will then be designated the Source object:

  • If no start/end point paths are available, the option will be greyed out in the contextual menu.
  • Loader icon is displayed  when the Start and End points are loading.
  • In ≥ 2.18, Graph Navigation (Path Finder, Call Hierarchy, Start and Endpoints) opens in a new tab by default. 

Using the feature

When you click Get Start and End points the following pop-up screen is displayed indicating that the process of identifying the objects has started:

The following screen is displayed when the results are completed - the source object is shown at the top of the screen and all end points at the bottom of the screen, with all possible paths in between to a depth of 1 level:

Updating the results

After the initial results are displayed, you may click on (1) - Start and End points to get details about the Start and End points. (2) Update Hops button opens the Update Start and End Points pop-up. (3) Displays the number of hops in the current view and also lets you update the number of hops. 

Clicking the Update in the dialog box will display a configuration panel on the right hand side enabling you to change the depth level:

ItemDescription
1: Source ObjectIndicates the path to the source object (i.e. the object you chose when you first launched the Get Start and End Point feature).
2: Maximum depths of pathMaximum depth level for path from the source object. This is calculated by CAST Imaging when the configuration dialog box is displayed.
3: ResetReset all options to their default (No. of depths is reset to "1" and not the maximum depth available for the current source object).
4: No. of depths of pathSet the required depth level between the source object and the end points. By default this will be set to the current depth displayed in the view.
5: All depths of path (tick box)Click to set the depth level to the maximum possible (indicated in "Maximum depths of path").
6: Load

Click to reload the view with the new configuration: nodes, edges and reference links will be added or removed on the same view based on number of depths you have chosen. If there are too many objects to display (i.e. the depth value is too high) then the following pop-up is displayed allowing you to cancel the process entirely (CANCEL), or reconfigure your options (REDUCE HOPS):

7: DownloadSee Download below.
  • You can also access this configuration panel by right clicking the source object and selecting Graph Navigation > Update Start and End points:

In the example below, "3" has been entered as a depth level:

Click to enlarge

Download

As an alternative to loading a view (which can sometimes take some time if the view contains many objects), you can download the results (in CSV format). The results provided in the .CSV file are based on the value chosen in the No. of depths for the path option:

Selecting this option will start the generation of the data and a CSV format will be downloaded. This file contains the following information:

  • Source
  • Source FullName
  • Source Name
  • Source Type
  • Tags
  • Documents
  • Caller
  • Callee
  • Linked Objects
  • Cyclomatic Complexity
  • Integration Complexity
  • Raw SQL Complexity
  • Essential Complexity
  • Number of code lines
  • Number of heading comment lines
  • Number of inner comment lines
  • Object File Name
  • Link Type
  • Target
  • Target FullName
  • Target Name
  • Target Type

References link details

A References link with a dashed grey line between two objects indicates that there is an indirect link (escalated) between two objects - see User Guide - Understanding Links for more detailed information about link types:

Clicking this type of link in the result of a Get Start and End Point when the depth is set to 1 (the default) will show a small popup detailing the constituent objects and links including the selected object/extremity node and all objects in between:

Clicking the popup will load the constituent objects in a new view: