Page tree
Skip to end of metadata
Go to start of metadata

On this page:

Target audience:

CAST AI Administrator

Summary: this page lists:

  • impacts of changes made in CAST AIP 8.2.14 on Quality Model results
  • other impacts of changes made in CAST AIP 8.2.14

The changes listed assume that an upgrade from CAST AIP 8.2.13 to CAST AIP 8.2.14 has taken place.

Introduction

Each CAST AIP release provides new features which improve the value of the platform and justify an upgrade. However, there are a number of changes or improvements which can impact the measurement results/grades:

  • New or improved Quality Rules to perform deeper analysis
  • Updates to the Assessment Model, e.g. changes to rule weights, severity or thresholds. This can be mitigated by using the "Preserve assessment model" option during the upgrade.
  • Improvements of the language analysis, e.g. more fine-grained detection of objects or links
  • Extended automatic discovery of files included in the analysis
  • Bug fixes to improve the precision of results
  • And, unfortunately, a new release may also introduce new bugs which may impact the results until they are discovered and removed

Below is a list of changes made to the current release of CAST AIP that are known to cause impacts to results. You can also consult Case Study - Measurement changes after upgrade for selected customer applications which provides a more detailed analysis based on a few sample applications.

Analyzing the root causes of impacts to measurement results/grades

The following is a general description of the steps that should be taken in order to compare pre and post upgrade results:

  • Step 1: Take a snapshot (including a source code analysis) with the previous release of CAST AIP before upgrading to the new release of CAST AIP
    • Check the list of applications to be analyzed, the list of files per application and list of SQL objects from the Analysis Service.
  • Step 2: Compare the source code in version 1 (before upgrade) with the source code in the new version 2 (after upgrade)
    • Compare the list of analyzed files, list of files per application and list of SQL objects between the two Analysis Services
  • Step 3: Compare the results of the application analysis and snapshot post upgrade. This can be done by comparing the snapshots available in the Dashboard Service to find the differences in:
    • Quality rules
    • Violations

    • Grades at Business Criteria level

    • Function Points

    • Transactions

    • Lines of code

  • Step 4: Compare the data functions and transactions across the source Analysis Service and the target Analysis Service post upgrade.

Impacts of changes made in CAST AIP 8.2.14 on Quality Model results post upgrade

JEE

SCRAIP-32621 - Violations for multiple rules are incorrectly raised on List<File>

A bug has been discovered which is causing false violations to be reported for objects that are an instantiation of a class (JV_INST_CLASS type) AND that are associated to an external class. The following rules are impacted:

4594

Avoid using 'java.io.File'
4596Avoid using 'java.lang.System.getenv()'
4598Avoid using 'java.lang.Runtime.exec()'
4600Avoid using 'java.System.exit()'
4604Avoid using 'java.lang.Error'"
4606Avoid using 'sun.*' Classes
4618Avoid instantiating Boolean
4694Avoid using 'System.gc'
4704Avoid using Vector

This bug is now fixed therefore, after an upgrade to CAST AIP 8.2.14 and the generation of a post-upgrade consistency snapshot on the same source code, results may differ: no false violations for this specific situation.

Mainframe Cobol

SCRAIP-33064 - Missing link between COBOL Program and CopyBook

A bug has been discovered where the analyzer expects a dot (.) to denote the end of an EXEL SQL block. This means that where this period is not used, the analyzer cannot identify the end of the block and therefore links between the COBOL program and COBOL copybooks are missed. In the following, there is no dot (.) after INCLUDE DLI05901, END-EXEC, and because of that the analyzer will not create links to DLI00001.

163600***************************************************************** 00
163700**** STUFF 00
163800 EXEC SQL 00
163900 INCLUDE DLI05901 00
164000 END-EXEC 00
164200 00
164300**** OTHER STUFF 00
164400 EXEC SQL 00
164500 INCLUDE DLI00001 00
164600 END-EXEC. 00
164700/ 00
164800**** SOME OTHER STUFF 00
164900 EXEC SQL 00
165000 INCLUDE DLI7003O 00
165100 END-EXEC. 00
165300 00
165400 DS00800-STAFF-SQL. 00
165500***************************************************************** 00

This bug is now fixed and the situation described above is now handled. Therefore, after an upgrade to CAST AIP 8.2.14 and the generation of a post-upgrade consistency snapshot on the same source code, results may differ: possible increased number of links, violations and Function Point values providing improved accuracy.

Other impacts of changes made in CAST AIP 8.2.14

.NET - packaging in the CAST Delivery Manager Tool

SCRAIP-33161 - Packaging failing in DMT for .NET application

A bug has been discovered which is causing the packaging action in the CAST Delivery Manager Tool to fail when when an @ is present in the Include attribute of a Reference tag. This bug has now been fixed and code containing this syntax will not cause the packaging action to fail. Instead a warning message will be emitted to state that this syntax is not supported:

'Transforming Item Types By Using Metadata' in Visual Studio project '%PROJECT_PATH%' is not supported. The reference is ignored: '%INCLUDE%'

SCRAIP-33622 - DMT DotNet Discovery is not replacing DLL reference with project reference when project is available in source code

A bug has been discovered which is causing a missing project alert to be raised by the CAST Delivery Manager Tool even though the project exists. This is due the fact that the CAST Delivery Manager Tool uses the DLL's full path rather than just the DLL's file name to identify the DLL, causing the corresponding project to not be found. This bug has now been fixed and missing project alerts for this situation will no longer be raised.

SCRAIP-33124 - DET equal to zero for ignored / merged / deleted Data Functions

A bug has been discovered which is causing DET values to be set to 0 for Data Functions that have been ignored, merged or deleted even if their parent maintable object has been excluded. This bug has now been fixed and Data Functions that have been ignored, merged or when their parent maintable object has been excluded will no longer have a DET value. Therefore after an upgrade to CAST AIP 8.2.14 and the generation of a post-upgrade consistency snapshot on the same source code, results may differ: the total number of datafunctions may be reduced and the Function Point values may change for merged datafunctions that "lose" other datafunctions or become merged with another datafunction when they lose their merge root.

  • No labels