Feature Improvements

Technology support changes

Please see Technology coverage changes in CAST AIP 8.3.x for more detailed discussion of this subject.

Upgrade

CAST Server Manager to be used instead of the CAST Update Tool

Changes have been made to CAST Server Manager in an effort to provide one tool that will meet all upgrade requirements: CAST AIP core upgrade and extension upgrade actions are now available for CAST AIP schemas installed with the Combined Installation option through one single menu option:

As such, the CAST AIP upgrade guide has been modified to take into account these changes, in particular:

  • Step by step upgrade process has been modified and no longer discusses the use of the CAST Update Tool (CUT) to perform the upgrade
  • Step by step upgrade process - workaround method has been added. This page presents the legacy method described in CAST AIP 8.3.0 for performing a CAST AIP core upgrade via the CAST Update Tool (CUT) and CAST Server Manager to upgrade extensions.

Although the CAST AIP upgrade guide prioritises the use of CAST Server Manager to complete all upgrade processes through the new "Upgrade Combined Installation" option, the functionality introduced through this option is still in its infancy and the CAST AIP 8.3.1 release does not contain all required configuration files.

Therefore, to upgrade to CAST AIP 8.3.1, please continue to use the "legacy" method as follows:

  1. CAST Server Manager + Component Update option to upgrade your Measurement Service schema
  2. CAST Update Tool to upgrade your Combined Installation schemas (Management/Analysis/Dashboard Service schemas)
  3. CAST Server Manager + Manage Extensions option to upgrade extensions

However, if you wish to experiment with the new "Upgrade Combined Installation" option in CAST Server Manager, please contact Laurent Windels for more information before starting.

Upgrade batch file

The upgrade batch file (see Automating the CAST AIP Upgrade process) should not be used to upgrade to CAST AIP 8.3.1. The script contains known bugs which are being fixed for a future release.

Extensions

Extensions shipped with CAST AIP 8.3.x and installed as part of the upgrade/new installation

As part of CAST's drive to improve and speed up the frequency of software releases, a process of "externalizing" the source code delivery and analysis capabilities of CAST AIP has begun in CAST AIP 8.3.x. To this end various official CAST AIP extensions are shipped with CAST AIP 8.3.x and are installed automatically as part of the upgrade process and also when installing new CAST AIP "triplets". Please see Technology coverage changes in CAST AIP 8.3.x for more information.

Snapshot management

When deleting a snapshot (whether through the CAST Management Studio GUI or CLI (DeleteSnapshotsInList, DeleteSnapshotsWithinRange)), when changing the capture date on a snapshot (through the CAST Management Studio GUI), when performing a consolidate action on an older snapshot (through the CAST Management Studio GUI) or setting the capture date prior to existing snapshots for a snapshot (whether through the CAST Management Studio GUI or CLI), it is no longer necessary to perform a snapshot re-consolidation action to update data:

ActionNew behavior

Remove one or multiple older snapshots

If you remove an older snapshot (i.e. not the most recent) then the next snapshot will be updated:

  • delta and AEP/EFP metrics are recalculated, and the post process procedures that update schema tables required for dashboards are relaunched.
  • new data is also pushed to the associated Measurement Service schema (if one is associated to the Management Service schema for the Application).

Update Capture Date

If you update the capture date, three snapshots will be updated:

  • the snapshot you updated
  • the previous next snapshot 
  • the new next snapshot

For these three snapshots, CAST AIP will:

  • recalculate the delta and AEP/EFP metrics, the post process procedures are launched
  • new data is also pushed to the associated Measurement Service schema (if one is associated to the Management Service schema for the Application).

If the snapshot you updated was previously the latest, source code and object properties will be removed from the CAST Dashboard Service schema (as they no longer match with the new latest snapshot). Data in the CAST Analysis Service will remain as before. Therefore data in the two schemas will no longer correspond.

Example of impact of changing the capture date:

If three snapshots exist as follows:

S11 Jan 2017
S21 Feb 2017
S31 Mar 2017

An object <OBJECT_LAST> was added in snapshot S3, and so it is marked as ADDED in the snapshot S3 because it was not there in the previous snapshot S2. If the functional date is now changed as follows (capture date changed on S3):

S11 Jan 2017
S21 Feb 2017
S331 Jan 2017

then the snapshots are reordered as follows:

S11 Jan 2017
S331 Jan 2017
S21 Feb 2017

<OBJECT_LAST> will still be marked as ADDED in the snapshot S3 which is no longer the latest snapshot because its functional date has been updated. S2 is now the latest snapshot and it is compared to the previous snapshot which is now S3. Because object <OBJECT_LAST> wasn't present in the S2 snapshot, then it will be shown as 'DELETED' in S2 when compared to S3, even though <OBJECT_LAST> is part of the most recent analysis and version of the source code that exists in the CAST Analysis Service schema.

Consolidate an older snapshot

If you reconsolidate an older (i.e. not the most recent), then the next snapshot will be updated:

  • delta is recalculated, and the post process procedures that update schema tables required for dashboards are relaunched.
  • new data is also pushed to the associated Measurement Service schema (if one is associated to the Management Service schema for the Application).
Snapshot generation with a capture date that is before an existing snapshot

If you generate a snapshot, with a capture date that is before an existing snapshot, the existing snapshot will be updated:

  • delta is recalculated, and the post process procedures that update schema tables required for dashboards are relaunched.
  • new data is also pushed to the associated Measurement Service schema (if one is associated to the Management Service schema for the Application).

Health Dashboard / Engineering Dashboard / Rest API

User authentication / data authorization

An error in the example given in the roles.xml file (delivered with Health Dashboard / Engineering Dashboard and the Rest API) for configuring roles for LDAP groups has been corrected. In addition, the documentation has been updated as a result. The following pages have therefore been updated:

Health Dashboard

Configurable Technical Size indicators

It is now possible to customize the list of Technical Size indicators (Number of Critical Violations, Number of Code Lines, Number of Files etc.) that are displayed for the drill down page available at Application level for the Technical Size tile (click to enlarge):

See Health Dashboard tile management for more information.

The "Can't access" link that was previously available by default on the login screen (this link enables a user who is not able to log in - for example because they have forgotten their login credentials or if they have not yet been granted access - to send an email to the dashboard administrator requesting access) has now been removed by default. If you want to re-enable this option, please set the "requestAccess" option to true in the cmp.json file. See Health Dashboard json configuration options for more information.


Engineering Dashboard

Reset language option

The top user menu now has an additional drop down menu item called "Reset language". This allows a user to change the language of the text items in the dashboard, providing an administrator has configured the language:

Violation details section

A new section has been added to the Source Code display called Violation details to display Violation Name along with the values of the Violation Details (i.e the "Associated Values").

Change in behaviour of Risk Introduced tile

The way the Risk Introduced tile behaves has changed:

  • Clicking the tile will take you directly to the Health Factor in the Quality Investigation view, however, the Quality Investigation view will only show added and removed violation information. Any Health Factor, Technical Criterion or Quality Rule where the number of Added and/or Removed violations is 0, will not be visible. A message will reflect this:

  • If no added or removed Critical Violations or Violations are present in the snapshot, then the tile will display no data and will not be clickable:

Education tab

A new Education tab has been added alongside the existing Action Plan and Exclusion tabs. This tab is designed to list Rules for which particularly bad practice has been seen through violation investigations. Rules can be added to the list to promote best practices or for monitoring purposes.

Note that this feature while present in CAST AIP 8.3.1 is not fully functional and should not be used. It will be available for use in CAST AIP 8.3.2.

Can't access link

The "Can't access" link that was previously available by default on the login screen (this link enables a user who is not able to log in - for example because they have forgotten their login credentials or if they have not yet been granted access - to send an email to the dashboard administrator requesting access) has now been removed by default. If you want to re-enable this option, please set the "requestAccess" option to true in the ced.json file. See ED - Dashboard wide configuration options in json for more information.

CAST Management Studio

GUI

Architecture Models

It is no longer possible to configure the weight and criticality of an Architecture Model's associated Quality Rule in the CAST Management Studio (previously this was possible in the Architecture Model editor or in the Architecture Models tab of the Application editor. Weight and Criticality are now configured directy in CAST Architecture Checker. See GUI: configuring model properties below.

In an upgrade scenario:

  • Weight and Criticality values defined in previous releases of CAST AIP will remain and will be used when computing a new snapshot in the new release of CAST AIP.
  • If a Weight other than 1 - 9 was set via the CAST Management Studio, after upgrade, this value will be reset to the default value of 1.
  • The default values (Weight = 1 and Criticality = No) will be applied if no values for Weight/Criticality were set through the CAST Management Studio in the previous release of CAST AIP.

CLI

ImportAssessmentModel

The ImportAssessmentModel option introduced in CAST AIP 8.3.0 has been modified to remove the constraint on the naming of the .PMX file to be imported (there is now no constraint). See Automating CAST Management Studio tasks.

ConfigurePlatformPreferences

  • It is now possible to use this option to update the license key (licenseKey option) and the logs folder (jobLogRootPath option) with the CLI even if they have been set either via the Startup wizard or via the CLI already. See Automating CAST Management Studio tasks.
  • Two new parameters have been added for this command line option to enable the automatic configuration of the LISA and LTSA folders - see Automating CAST Management Studio tasks:

    • storageWorkingPath (for LISA)
    • temporaryWorkingPath (for LTSA)

ActivateMeasureService

A new option is now available to activate a given Measurement Service (MEASURE schema) for the Management Service (MNGT schema) defined in the connection profile. When the Measurement Service is active, it is the target for any snapshot data that is generated in any Application associated with the parent Management Service (MNGT database), when you chose to upload snapshot data to the Measurement Service. See Automating CAST Management Studio tasks.

CAST Architecture Checker

GUI: configuring model properties

It is now possible to change the properties of a model in CAST Architecture Checker - for example to configure the documentation fields or to set the Weight and/or Criticality of the associated Quality Rule:

Items updated here will then be visible in the Engineering Dashboard (click to enlarge):

Note that it is no longer possible to configure the weight and criticality of the model's associated Quality Rule in the CAST Management Studio.

Log file naming and path changes

A change has been implemented with regard to the naming and path of the CAST Architecture Checker log file:

  • the log file will be named "AC-<date>-<time>.log.txt", where <date> is of the form "YYYYMMDD", and <time> of the form "HHMMSS"
  • the log file will by default be located in %ALLUSERSPROFILE%/CAST/CAST/Logs, or in the folder specified by CAST_LOG_ROOT_PATH if that variable has been defined in the flat's CASTGlobalSettings.ini file.

In previous releases of CAST AIP, the CAST Architecture Checker log files:

  • were named "ArchitectureChecker.<date><time>.log.txt" where <date> was of the form "YYMMDD", where <time> was of the form "HHMMSS"
  • were located in the CAST temp file directory

CAST Transaction Configuration Center

Transaction Graph Adjustment feature now taken into account for Transaction Risk Index (TRI) computation

The Transaction Graph Adjustment feature introduced in CAST AIP 8.3.0 is now taken into account during the computation of Transaction Risk Index (TRI) and during Function Point computation. In CAST AIP 8.3.0, it was only taken into account during Function Point computation.

Log file naming and path changes

A change has been implemented with regard to the naming and path of the CAST Transaction Configuration Center log file:

  • the log file will be named "TCC-<date>-<time>.log.txt", where <date> is of the form "YYYYMMDD", and <time> of the form "HHMMSS"
  • the log file will by default be located in %ALLUSERSPROFILE%/CAST/CAST/Logs, or in the folder specified by CAST_LOG_ROOT_PATH if that variable has been defined in the CASTGlobalSettings.ini file.

In previous releases of CAST AIP, the CAST Transaction Configuration Center log files:

  • were named "TransactionConfigurationCenter.<date><time>.log.txt" where <date> was of the form "YYMMDD", where <time> was of the form "HHMMSS"
  • were located in the CAST temp file directory

Log: Function Points Computation report - includes Transaction Graph Adjustment information

The Function Points Computation report (which is part of the log produced when the "Compute" action is run) now contains information about the use of the Transaction Graph Adjustment feature:

First, these lines display the current statuses of whether Standard and/or Custom TF adjustments are enabled or disabled:

  • Standard TF graph adjustment : enabled or disabled
  • Custom TF graph adjustment : enabled or disabled

Then, if there is at least one link which has been adjusted, the counts of deleted, inverted, and added links are shown:

  • Number of deleted adjusted links : 0 or # of deleted adjusted links
  • Number of inverted adjusted links : 0 or # of inverted adjusted links
  • Number of added adjusted links : 0 or # of added adjusted links

New Show Rules option in the GUI

A new "Show Rules' option has been added to the GUI to display a list of rules that the selected object matches:

This option can be accessed from the Transaction Configuration node when using the "Generate set..." buttons:

Resolved Issues

The following table lists all bugs fixed in CAST AIP 8.3.1

Call IDTechnologyComponent/SFeaturesSituationSymptomsInternal ID
10594; 10595ABAPCMS Snapshot/Analysis - Run Copy Paste Metrics Calculation
When looking at the results of the Quality Rules "Avoid Artifacts with high Commented-out Code Lines/Code Lines ratio" and "Avoid Too Many Copy Pasted Artifacts" for versions Vn and Vn+1.Violation counts for these Quality Rules are inconsistent even though the source code has not changed between versions Vn and Vn+1.SCRAIP-29524
10768.NET - C#CMS Snapshot/Analysis
When looking at the results of the Quality Rules "Avoid Artifacts with high Commented-out Code Lines/Code Lines ratio" and "Avoid Too Many Copy Pasted Artifacts" for versions Vn and Vn+1.Violation counts for these Quality Rules are inconsistent even though the source code has not changed between versions Vn and Vn+1.SCRAIP-29821
10977JEE - JavaCMS Snapshot/Analysis - Run Analyzer
When running a "test" analysis on JEE source code.The analysis fails with the error: "Failed to load action 'JEEAnalyzerActionNew'"SCRAIP-30067
9995Mainframe - CobolCMS Snapshot/Analysis - Run Analyzer
When looking at the results of a Mainframe Cobol analysis and the Quality Rule 5112 "Avoid undocumented sections".The Quality Rule 5112 "Avoid undocumented sections" is being falsely violated due to a bug in the analyzer where comments are not extracted from copybooks when programs are expanded. As such, sections and paragraphs coming from copybooks do not have any comment and are therefore considered as violating the Quality Rule.SCRAIP-28659

JEE - JSP

When attempting to package JEE source code that includes Maven pom.xml configuration files.The CAST Delivery Manager Tool reports the error: "Error Parsing Maven Project". This was caused by the presence of a double BOM character in the pom.xml.SCRAIP-29893

N/A

When attempting to package source code containing Eclipse .project files formatted in UTF-8.The CAST Delivery Manager Tool does not detect the .project file and no explanation is given.SCRAIP-29908