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.8 on Quality Model results
  • other impacts of changes made in CAST AIP 8.2.8
  • miscellaneous result changes

The changes listed assume that an upgrade from CAST AIP 8.2.7 to CAST AIP 8.2.8 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.8 on Quality Model results post upgrade

ABAP

SCRAIP-29861 - Avoid missing WHEN OTHERS in CASE statements - 7518

A bug has been discovered which has caused false positive violations of the Quality Rule. These false positive violations are due to the fact that the Quality Rule did not correctly handle the situation where the WHEN OTHERS clause was replaced by an ELSE clause in the ABAP source code. This bug has now been corrected and after an upgrade to CAST AIP 8.2.8 and the generation of a post upgrade snapshot, results may differ: the ELSE clause will be correctly handled and the number of false positive results will be reduced.

Multi-techno

SCRAIP-29855 - The majority of Quality Rules have 100% variation Investigation-quality model drilldown view

A bug has been discovered which is causing the majority of Quality Rules to display a 100% variation in the CAST Engineering Dashboard > Investigation-quality model drilldown view, when looking at the results of a post upgrade consistency snapshot. This bug has now been fixed and you therefore may see a change in the variation value (i.e. now correct) post upgrade to CAST AIP 8.2.8.

Mainframe Cobol

SCRAIP-28540 - Variables defined in Working-Storage section must be initialized before to be read - 8034

A bug has been discovered that causes CAST AIP to falsely report a violation to the above named Quality Rule even though the variable is being initialised by a READ statement before being used by a WRITE statement. This bug has now been fixed, therefore after an upgrade to CAST AIP 8.2.8 and the generation of a post upgrade snapshot on the same source code, results may differ: there will be a decrease in the number of violations reported, improving accuracy.

JEE

SCRAIP-28667 - Avoid String initialization with String object (created using the 'new' keyword) - 7250

A bug has been discovered that causes CAST AIP to falsely report a violation to the above named Quality Rule even though a string is not being initialized with a literal as in the following example:

new String(byte[]=

This bug has now been fixed, therefore after an upgrade to CAST AIP 8.2.8 and the generation of a post upgrade snapshot on the same source code, results may differ: there will be a decrease in the number of violations reported, improving accuracy.

SCRAIP-25980 - Use only Hibernate API to access to the database - 7510

A bug has been discovered that causes the number of objects in violation to exceed the number of Failed Checks (in the CAST Engineering Dashboard) for the above named Quality Rule. This bug has now been fixed, therefore after an upgrade to CAST AIP 8.2.8 and the generation of a post upgrade snapshot on the same source code, results may differ.

Oracle PL/SQL

SCRAIP-29866 - Avoid SQL queries that no index can support - 7902

A bug has been discovered which meant that false positive violations of the Avoid SQL queries that no index can support - 7902 Quality Rule were being reported. This was due to the fact that IOT indexes were not correctly being taken into account by the CAST Database Extractor. This bug has now been fixed and after an upgrade to CAST AIP 8.2.8 , the re-extraction of data and the generation of a post upgrade snapshot, results may differ: the number of false positive results will be reduced.

Other impacts of changes made in CAST AIP 8.2.8

JEE

SCRAIP-27996 - multiple occurrences of the same .java file in an analysis

A bug has been discovered which has caused issues when .multiple occurrences of the same .java file (or files) are included in the same analysis. During the save operation to the CAST Analysis Service schema, some of the files with the same name are not saved and are instead discarded despite having been analyzed without error. This bug has now been fixed, therefore after an upgrade to CAST AIP 8.2.8 and the generation of a post upgrade snapshot on the same source code, results may differ: there will be an increase in the number of .java files and this may have impacts elsewhere.

SCRAIP-27409 - missing links between JSP files that contain embedded Java code to the called Java methods

A bug has been discovered where links are not detected between JSP files that contain embedded Java code to the called Java methods. This bug has now been fixed, therefore after an upgrade to CAST AIP 8.2.8 and the generation of a post upgrade snapshot on the same source code, results may differ: there will be an increase in the number of links and this may have impacts elsewhere.

SCRAIP-28952 - JSF taglib mapping files are ignored, thus links are not created between *.xhtml files

A bug has been discovered where links between *.xhtml files are not resolved during JEE analyses containing JSF taglib mapping. The JSF taglib mapping files are being ignored resulting in missing links. This bug has now been fixed, therefore after an upgrade to CAST AIP 8.2.8 and the generation of a post upgrade snapshot on the same source code, results may differ: there will be an increase in the number of links and this may have impacts elsewhere.

SCRAIP-28963 - increased number of Dynamic Links due to duplicate JavaScript methods, JavaScript variables and HTML events

A bug has been discovered which is causing an increased number of Dynamic Links to be produced at the end of a JEE analysis that includes JSP files. The increased number of Dynamic Links are due to the fact that duplicate JavaScript methods, JavaScript variables and HTML events defined in the JSP files are being created during the analysis. This bug has now been fixed, therefore after an upgrade to CAST AIP 8.2.8 and the generation of a post upgrade snapshot on the same source code, results may differ: reduced number of Dynamic Links and removal of duplicate objects.

SCRAIP-29585 - change in the way the JEE analyzer handles missing dependencies between Analysis Units

A change has been made to the JEE analyzer to ensure that it handles missing dependencies between Analysis Units more gracefully: if the analyzer identifies a call to a class in a different Analysis Unit and if there is no ambiguity about this link, then the link is saved regardless of whether there are any dependencies between the two Analysis Units configured in the CAST Management Studio. Previously, the analyzer would not create this type of link unless the dependency was configured in the CAST Management Studio. Therefore, when upgrading from CAST AIP ≥ 8.0.x to CAST AIP 8.2.8 and following the generation of a post upgrade snapshot on the same source code, additional links between objects may be seen in the analysis results.

Mainframe Cobol/JCL

SCRAIP-28616 - use of a procedure parameter called JOB in Mainframe Cobol/JCL

When the analyzer encounters a procedure parameter that is called "JOB" it incorrectly considers it as a JOB card. This results in multiple issues, including incorrect Line of Code count (truncated source code) and a Computed FP value for the Transaction Function (JCL) as '0'. This bug has now been fixed (procedure parameters called JOB are now handled correctly), therefore after an upgrade to CAST AIP 8.2.8 and the generation of a post upgrade snapshot on the same source code, results may differ: accurate Line of Code count, accurate Computed Function point value and other potential impacts.

SCRAIP-29859 - Cobol Analyzer not supporting DD names containing underscore

A bug has been discovered which is causing warning messages to be listed in the analysis log file when a DD name contains an underscore, for example analyzing the following in a .COB file:

000440 SELECT EXTRACT-IN ASSIGN TO P327EXT_ZAZA 
000430 FILE STATUS IS IO-STATUS-CODE. 

Will produce the following error:

Analyzing Cobol Program TEST. 
Cannot resolve DD name 'ZAZA'.

This bug has now been fixed and after an upgrade to CAST AIP 8.1.7 and the generation of a post upgrade snapshot, results may differ - they will be more accurate and warning messages will be reduced.

SCRAIP-29868 - Inter-application links are visible

A bug has been discovered which is causing inter-Application links to be created when multiple Applications are analyzed in the same CAST AIP schema triplet. This bug has now been fixed, therefore after an upgrade to CAST AIP 8.2.8 and the generation of a post upgrade snapshot on the same source code, results may differ: the inter-application links should not be visible.

General

SCRAIP-28628 - ghost transaction in Analysis Service schema

When using the CAST Transaction Configuration Center to look at a transaction in two projects: the transaction is identical in both projects (a.jsp file) and both projects have been analyzed in one Application. When one of the projects is dropped and a new snapshot is generated, two transactions incorrectly remain in the Analysis Service schema - i.e. one of the transactions is a "ghost" and should not be present. This bug has now been fixed, therefore after an upgrade to CAST AIP 8.2.8, the generation of a post upgrade snapshot on the same source code and the same actions peformed results may differ: the ghost transaction should no longer be present.

PowerBuilder

SCRAIP-28784 - syntax warnings in the analysis log

Several syntax errors have been indentified in a PowerBuilder analysis log. These syntax warnings are for syntax that the analyzer should be able to handle. This bug has now been fixed, therefore after an upgrade to CAST AIP 8.2.8 and the generation of a post upgrade snapshot on the same source code, results may differ: reduction in syntax warnings in the analysis log and improved analysis accuracy.

.NET

SCRAIP-27741 - erroneous links between .NET and Microsoft SQL Server

A bug has been discovered which is causing erroneous links to be create between JavaScript methods in a .NET project to Microsoft SQL Server tables. These links are incorrect and should not be created. This bug has now been fixed, therefore after an upgrade to CAST AIP 8.2.8 and the generation of a post upgrade snapshot on the same source code, results may differ: removal of erroneous links, improved analysis accuracy, accurate Function Point values.

ASP / Microsoft SQL Server

SCRAIP-29867 - Wrong links between ASP pages and SQL Server tables

A bug has been discovered that is causing links between ASP/ASPX files and database objects to be erroneously created. The links are wrongly created between style properties in aspx/asp files and database tables that have the same name. For example, the following style  property "background-color: #FFFFFF;" will cause the creation of links to database tables called background and color (if they exist). This bug has now been fixed and after an upgrade to CAST AIP 8.2.8 and the generation of a post upgrade snapshot, results may differ - links between objects will be more accurate, which may also have a knock-on effect on on Quality Rule grades and Function Point transaction values.

Miscellaneous result changes

N/A


  • No labels