This tab is used to manage the Modules (both automatic and user defined) for your current Application. Modules are used extensively in the CAST Dashboard as a means to configure analysis results into meaningful groups or sets for display purposes - indeed objects cannot be seen in the CAST Dashboard if they are not part of a Module. The content of a module is based on source code.
CAST offers three automatic modules for display of source code in the CAST Dashboard:
|Full Content||This Module is selected by default. It corresponds to all the source code for all Analysis Units configured in your Application. It will be called "<Application name> full content". If this content is sufficient for your needs, you do not need to select any other automatic or User Defined Modules.|
|Analysis Unit Content||If you select this option, the CAST Management Studio will create one Module per Analysis Unit in your Application. Each Module will be called "<Analysis Unit name> content".|
|Unassigned Objects Content||This option should be activated when you are exclusively using User Defined Modules (i.e. the Full Content and Analysis Unit Content are not ticked). When ticked, an automatic Module will be created containing any objects that were not assigned to one of your User Defined Modules, enabling you to see them in the CAST Engineering Dashboard.|
CAST has a built in feature which can automatically attach server objects used by client source code to a specific project (known as a database subset) in the CAST Analysis Service. The subset can then be visualized in CAST Enlighten as shown below (outlined in red):
These subset projects are supplementary to the server "projects" created via standard analysis of your server objects, but the objects they contain are simply "display copies" of the actual server side objects and are not stored in the CAST Analysis Service as duplicate objects.
Several conditions and options must be met and selected before a subset project will be created. The following is a list of options/scenarios that affect the creation of a subset project and the objects that are contained in it:
- Whether the "client" objects target the "server" objects in the Dependencies tab or not: if there are no dependency rules defined between client and server technologies, then no database subsets will be created.
- If there are dependency rules defined in the Dependencies tab between client and server technologies, then the creation of a database subset depends on the current mode: Full, Interface, Inactive - see below.
In the default Full mode, the CAST Management Studio will function as follows: server objects used by client objects are attached to a specific project (known as a database subset) in the CAST Analysis Service if the called server-side objects are specified in the Dependencies tab.
In this mode, server objects that are NOT directly called by the client objects may also be displayed in the subset project (for example server objects that are called by server objects that are called by a client object). Note that this situation can be disabled by switching to Interface mode.
|Interface||In Interface mode, the CAST Management Studio will function in exactly the same way as FULL mode, except that only the server objects directly used by the client objects will be added to the database subset. In this way, there are always less objects in the database subset than when using FULL mode.|
This option is enabled by default.
In Inactive mode, no subset projects are created.
- If you change an option after a successful analysis, make sure you re-run analysis in order to see the changes.
- If you change the mode to Inactive (when it has previously been in Full or Interface mode), any existing subset projects will not be deleted automatically during the next analysis/snapshot generation. However you can force their removal manually using the Drop Analysis Results option.
User Defined Modules
In addition to automatic Modules, the CAST Management Studio offers you the option to create User Defined Modules - these Modules can be configured to contain the content you require for display in the CAST Engineering Dashboard. Content is configured via an Object Filter on your analysis results (using the Technology, Analysis Units, Object Types and Object Names filter criteria) in order to define the content you require.
- Click the run an analysis or having generated a Snapshot (this enables you to view the contents of the User Defined Module before you put it into production). button to add a User Defined Module - CAST recommends having first
- If one of the Automatic Module creation options is selected and you do not have any existing User Defined Modules, you will be prompted to choose whether to disable the Automatic Module(s):
- If you choose Disable (click Yes), all Automatic Module creation options will be unticked and none will be created during the next snapshot generation (but any existing Automatic Modules will not be removed). If you choose No, any Automatic Module creation selections will be retained during the next snapshot.
- The User Defined Module editor will then be displayed enabling you to configure the module.
- To edit an existing User Defined Module, click the button - the User Defined Module editor will then be displayed.
- To remove a User Defined Module from an Application click the button.
- Note that auto-generated modules will also be displayed in this User Defined Modules list following a snapshot generation.
- Note that the name you give to a User Defined Module will form the name of the Module in the CAST Engineering Dashboard.
- It is NOT mandatory to create a User Defined Module prior to the generation of a Snapshot.
Tools after module generation
Use this section to configure an SQL Tool to run immediately after the the Modules have been configured and run during a snapshot generation:
|Use this option to add a new SQL Tool. Selecting a Tool will then display the Tool editor.|
|Use this option to edit an existing Tool configuration. The relevant configuration window will be displayed enabling you to modify the Tool.|
|Use these options to alter the placement of the Tool in the list. Tools are executed in the order in which they are listed.|
|Use this option to remove an existing Tool. When a Tool is removed it will no longer be run or be available for configuration.|
|Use this option to run the Tool - note that this is not a simulation - the tool will be run exactly as configured.|