Introduction

The Investigate panel is a slide-in panel that provides navigation options for the current view. 

≥ 2.19

The app navigation is moved to the header. You can navigate the across apps from the new header dropdown.


  • Graph layout options (previously under Arrange Display) is moved to the Tool bar. It helps to choose an auto-layout for the nodes. You can also define a preferred layout at global level via the display preferences - see Preferred Graph Layout in Configuring display preferencesIn Hierarchical, Sequential and Force layouts, additional options are available.

     

  • Graph display options are moved from Investigate menu to the new toolbar under Graph display options. Display of Object, Relationship labels and badges are removed from Graph Display Options. However, Scope of Caller and Callee, Transaction Mode and Update Hops are retained in Investigate menu.

     

  • Graph info option/icon is moved to the bottom right corner of the canvas.

     

≥ 2.18

The Investigate panel is a slide in panel that provides navigation options for the current view. To toggle the panel, use the  icon in the top left corner. This option opens or closes the slide in panel:


  • All the sections are collapsible and the collapsed options are persisted. By default, only the PERIMETER section is kept open.
  • GRAPH and VIEW options are segregated into toggles and actions. Scope of caller/callee is moved under “GRAPH OPTIONS”.

 

  • "Transaction Mode" shows the different modes available for the respective transaction view. Transaction Mode includes Full call graph, Reduced call graph and Simplified call graph. Functionality and behavior of Full call graph, Reduced call graph and Simplified call graph remains the same.

  • A tooltip is provided which explains the different transaction modes.

≤ 2.17

The position of the Investigate panel is stored in memory and persists between logins. Note that the panel can be manually resized by dragging the divider and will lock to a "minimized" display:

Perimeter options

The Perimeter options determine what is displayed in the view:

OptionDescription

Scope


Enables you to switch between the various available scopes. For example:

For all Scopes (except Application), a sub scope selector is available, for example for Data Call Graph mode - this allows you to select specific items within that scope:

Perspective options

The Perspective options largely govern how the selected Scope is displayed:

OptionDescription

Aggregated by


Enables you to choose how to group the objects in the scope you are looking at, for example:

CAST Taxonomy

This is the standard grouping option determined by CAST Imaging (and is equivalent to the grouping used in previous releases of CAST Imaging). It is available across all Scopes:

Click to enlarge

Module

Displays the scope by individual Modules - these Modules are determined during source code delivery/analysis using CAST Console:

Click to enlarge

The User Guide - Module scope displays similar, but only individual Modules can be selected.

Service

Displays the scope by individual Microservices - these Microservices are determined when the Application in question has been analyzed with a specific extension installed, before it is exported/imported into CAST Imaging:

Click to enlarge

The User Guide - Service scope displays similar, but only individual Services can be selected.

<...> (name of Architecture layer)

Provides a choice of Architecture Models available in the selected Application (these are configured using CAST AIP Console). When one is selected, the view displays all Architecture Model layers available in the selected Architecture Model:

Click to enlarge

The User Guide - Service scope displays similar, but only individual Services can be selected.

ABAP Packages

Available only in CAST Imaging ≥ 2.6 and when the imported Application contains SAP ABAP source code.

Displays only ABAP Package objects and shows the interdependencies between them:

Click to enlarge

In addition, this aggregation mode can be customized using the Custom Aggregation option (unlike other default Aggregation Modes such as CAST Taxonomy).

Database Structure

Available only in CAST Imaging ≥ 2.17 and when the application contains SQL code delivered for analysis as .SQL files - applications will need to be re-imported before the tile will display.

Provides access to a view dedicated to database table objectsshows their interactions and provides access to their constituent column names. Can also be accessed directly from a tile in the User Guide - GUI - Welcome Page under User Guide - GUI - Welcome Page - Are you new to the application:

Classes inheritance

Available in CAST Imaging ≥ 2.17.

Insufficient knowledge about class inheritance poses the risk of compromising code structure, introducing complexity, and limiting flexibility within the codebase.

Understanding the inheritance relationships between classes enhances code comprehension and enables efficient code reuse by leveraging existing functionality from parent classes. Access to this view empowers software developers by providing a clear understanding of parent-child relationships and inheritance behaviors promoting efficient development and more maintainable code. This functionality could also be beneficial for architects who can evaluate the smooth integration of legacy code with modern tools, frameworks, and architecture.

A dedicated view showing the inheritance that exists between different classes in the application. The view exists for all technologies where a "class" object type exists, for example JEE (Java class) and .NET (VB.NET or C# class). Also available as a tile in the User Guide - GUI - Welcome Page:

Project Structure

Available only in CAST Imaging ≥ 2.17 and when the Application has been analyzed with a specific extensionbefore it is exported/imported into CAST Imaging.

Displays all the projects identified by the extension during the analysis - see User Guide - Project Structure scope:

Custom aggregation modes


Additional entries may be visible. These are custom aggregation nodes - see User Guide - Creating a custom aggregation mode.
Levels

Use this option to further refine the aggregation using the levels mechanism. The levels available differ according to the scope/aggregation mode you are working in:

LevelContainsAggregation mode
CAST TaxonomyModulesArchitecture Model
Level 1

Highest level, objects grouped into nodes such as:

  • Data Services
  • Services
  • System Interaction
  • User Interaction
(tick)(tick)(tick)
Level 2
  • Communication Services
  • Database Services
  • Logic Services
  • Monitoring Services
  • Output Services
  • Screen Interaction
  • Web Interaction
(tick)(error)(error)
Level 3
  • Business Logic
  • Business Logic Coordination
  • Data Access Services
  • Exposed API
  • Logger
  • RDBMS Services
  • Reporting Services
  • Rich Client Presentation
  • Web Coordination
  • Web Presentation
(tick)(error)(error)
Level 4

Specific object groupings such as:

  • Hibernate Data Access
  • HTML Presentation
  • Jackson
  • Jasper Reports
  • Java Business Logic
  • Java Core
(tick)(error)(error)
Level 5

More detailed object groupings such as: 

  • HTML Pages
  • J2EE Scoped Bean
  • Java Class
  • Java Class DAO
(tick)(error)(error)
Objects

Individual object display in vignette mode:

Click to enlarge

(tick)(tick)(tick)
Scope of callers/callees

Available only in CAST Imaging ≥ 2.12.0

This option allows you to change the scope of objects that are considered for the Add Caller/Callees/Add Linked Objects options. In other words, before you use the Add Caller/Callee/Add Linked Objects options, you can decide which objects will be included in the scope of those that will be offered to you. By default, the current view scope (Transaction or Data Call Graph or Module, etc) of caller/callee will always be selected and only objects linked to those in the current view will be offered. Switching the scope of the caller/callees to the Application level (clicking the Application option) will change the scope and all objects in the application will be offered.

The option is available only when you drill down to object level in the following scopes:

  • Transactions
  • Data Call Graph
  • Modules
  • Architecture layer
  • Services
  • Project Structure

Drill down / Communities mode options

These options are only available when drilling down beyond Level 5 in the Application scope with the CAST Taxonomy Perspective:

Icon/OptionDescription

Determines the type of "expand" action that is performed when drilling down beyond Level 5:

  • Children only, group by communities
  • Children + caller/callee, group by communities
  • Children + caller/callee
  • Children only

These options are available for parent nodes that group together package based objects, for example Java Classes, some database objects etc. On selecting any of the options, all child and/or caller/callee objects of the objects in the selected node will be displayed in a new view.

When a "group by communities" option is chosen, the objects are grouped in the new view based on their packages (i.e. their "Community).

Click to enlarge

Note about Children + Caller/Callee drill downs

When the Children + Caller/Callee option is selected, some callers/callees are automatically grouped into special "grouped nodes" depicted using a pentagon shaped node:

Starting CAST Imaging 2.12, an "Expand all" option is available for grouped nodes (this also functions when multiple "grouped nodes" (pentagon shaped nodes) are selected):

Note about Communities drill downs

In Object Views, CAST Imaging uses Communities to regroup objects according to the code organization used during the development process. For instance, packages in Java, classes in .NET, programs in Cobol... Communities are automatically created by CAST Imaging during the analysis process for supported technologies and cannot be customized.

Communities simplify the display of views: they reduce the number of objects in an Object View. As this organization often represents the functional/business part of an application, it can help when investigating a specific functional part or when trying to obtain clearer adherence between functional areas.

Communities are only available in when drilling down from Level 5 and when the Perspective is set to CAST Taxonomy. The following icon depicts a community node:

Where the Children + caller/callee, group by communities mode is used, any caller/callee nodes that are also communities will feature the communities badge in the bottom left corner as well as the technology badge:


Only visible when a drill down option that includes the "group by communities" is chosen.
  • Keep All (default option) > displays the child objects or other child community nodes. All other community nodes (not double-clicked) will be kept in the view:

Click to expand

  • Group Others > displays the child objects or other child community nodes. All other nodes will be grouped in a single node. 

  • Keep Immediate > displays the child objects or other child community nodes. All first connected nodes will be grouped in a single node and all other objects will be grouped in another node. 

Layout options

≥ 2.18

All the layout options in versions ≥ 2.18 remains the same as in versions ≤ 2.17, except the below mentioned options.

Icon/OptionActionDescription

Graph options

Hide External libraries

This option when enabled displays the "External Libraries".

Show BelongsTo Links

This option when enabled displays the "BelongsTo Links" between Objects and SubObjects in a view. You may now show or hide BelongsTo Links for any view wherever applicable. The BelongsTo Links are shown in pink color making it distinct from other links.

The "BelongsTo Links" will also be displayed in Legends, and can be hidden or shown in the View like any other relationship legends functionality.

≤ 2.17

Icon/OptionActionDescription


Graph layout feature

Use these options to choose an auto-layout for the nodes. You can also define a preferred layout at global level via the display preferences - see Preferred Graph Layout in Configuring display preferencesIn Hierarchical, Sequential and Force layouts, additional options are available:

Preferred Automatic layout (available in 2.17)

The best layout will be rendered and displayed with a prefix - "Automatic" and the other layout options will be available in the drop-down. For all the scopes (Application/Module/Transaction/Data Call Graph), aggregated by the CAST Taxonomy (Level 1 to Level 5) the default/automatic layout is Sequential.

When you manually change the Graph Layout, the prefix - Automatic does not persist.

Hierarchical and Sequential (available in ≥ 2.11)

  • Node Distance (Horizontally): change the distance (in pixels) between nodes, horizontally
  • Node Distance (Vertically): change the distance (in pixels) between nodes, vertically
  • "TB"|"BT"|"LR"|"RL" - top-bottom/bottom-top, left-right/right-left: change the ranking direction

Force (available in ≥ 2.11)

  • Elasticity: Node collision elasticity. Smaller values may result in incomplete node overlap removal.
  • Gravity: Force that attracts nodes to the center of the graph.
  • Align Siblings : Align nodes that are linked to the same two nodes only (enabled by default).

A Custom layout is available only for Saved Views. When you visit a Saved View for the first time, the Custom option is displayed indicating that no layout is applied by default. Custom option is just to view and it cannot be applied.











 Show list view

Available in ≥ 2.16.

Presents the data (i.e. all objects/nodes) in the current Graphical view in tabular format:

  • Object/Node Name
  • Object/Node Type
  • Number of children
  • whether the object/node is considered external (i.e. a third-party library).

Functions at all levels in CAST Imaging:

 You may filter the objects based on its type, count of children and external type.

Lets you select the Object type(s) from the drop-down. RESET button lets go back to the list of objects. 
Lets you set the Value of the children count.
Lets you select the state of the object external/internal (True or False).

Click on Hide List View button  to close the tabular view.

In ≥ 2.19,

  • You can select the objects from the object list and switch to the “Graph View”. The selected objects from the “List View” are highlighted in the “Graph View” and vice versa.
  • Properties panel is enabled for List View.

 Annotate view

See User Guide - Using the Annotate feature for more information.

 Hide external libraries

Allows you to filter on the type of objects that are displayed in the view. Toggling the options will remove and re-display corresponding objects from the view:

  • External > External objects are those originating in third-party libraries or system assemblies.
  • Isolated Nodes > Nodes that are not linked to any other node.

 Hide isolated nodes

This option hides any nodes that entirely isolated, i.e. do not have any links to other nodes:

 Full Call Graph

Only available when:

  • working with an Application that has been exported/imported into CAST Imaging ≥ 2.9.1.
  • you have selected a Transaction for display.
  • you are working at Objects level.

This option (when clicked) will update the view to display the selected Transaction's call graph in full mode. By default a simplified transaction call graph (reduced call graph) is always displayed so that view loading time is kept as short as possible (particularly useful when the standard call graph is very large): specific nodes and links that are less important are automatically hidden from the view. The nodes/links that are displayed when in simplified/reduced mode are determined automatically during the Application export process.

Before using the option (default simplified/reduced mode):

After switching to full call graph mode:

  • Note that in CAST Imaging ≥ 2.7.0 - 2.9.0 the option is called Reduced Call Graph and the behaviour is reversed, in other words, by default a full call graph is always displayed:

      

  • From CAST Imaging ≥ 2.10.0 the number displayed in brackets is the total object count, i.e. the total number of objects involved in the full call graph.

     

  • In Imaging relese ≥ 2.17.0-beta1, an info icon is provided for Full Call Graph button.

      

  • In Imaging relese ≥ 2.17.0-beta1, an improved the toast message is displayed when you shift to Full call Graph due to no/unavailability of reduced call graph.

 Shortest path

  • Only functions when working in drill down investigation mode, beyond Level 5 in Transaction view and Data Call Graph view.
  • Multiple shortest paths may be displayed in ≥ 2.3.x.

This displays the critical (i.e. shortest) path between two objects (source and target). The view will show the critical (i.e. shortest) path between the input node (i.e. the selected transaction/node) and a "dummy" output node (any nodes/objects not involved will be temporarily hidden). For example, a JSP transaction is selected in the Investigation panel and the critical path is highlighted on drill down beyond Level 5:

Click to enlarge

Disabling the option will return to the main layout.

 Main objects only

Only available:

  • in CAST Imaging ≥2.7.0.
  • you have selected a Transaction or a Data Call Graph for display.
  • you are working at Objects level.

Toggles the view to show main objects and sub-objects (default when not enabled) and main objects only (when enabled):

Before using the option - note the nodes highlighted in red - these are the nodes that are displayed after enabling the option:

After:

Note that some right click options on nodes are disabled when Main objects only is enabled:

In Imaging relese ≥ 2.17.0-beta1, an info icon is provided for Main objects only button.

 Simplified Call Graph

Available in Imaging release ≥ 2.17.0-fucnrel.

If the number of objects  500 then by default the transaction call graph displayed is in a "Simplified call graph" mode. The simplified call graph is displayed with only one level of objects along with associated Start and End points.

See User Guide - Transaction scope#Simplifiedcallgraph.

 Export all objects and links

Exports the current view to a number of different output formats. See Export views.

 Save a view / Updated saved view

To save the current view with a view name (available in all view types across all levels in ≥ 1.10.0). To view the saved view, see Saved views.

When you are viewing an existing saved view, additional options are available:

  • Save As > Save the existing view with a different name
  • Save A View > Save the existing view again - i.e. if you make any changes
  • Remove A Saved View > Delete the existing saved view (this cannot be undone).

Removed saved view

Only available:

  • in the Search view - allows you to clear the Search view of all objects.
  • in a Saved view - allows you to delete the Saved view (cannot be reversed)

 View information

Only available when you click on any tab/link from the Welcome page. This option redisplays the Welcome Guide popup which explains the custom layout you are using.