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

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

JEE

Good use of Interfaces with collections as Method return types - 4578

A bug that was introduced in CAST AIP 8.0.1 has now been fixed in CAST AIP 8.2.2. Therefore after an upgrade to CAST AIP 8.2.2 and the generation of a new snapshot, results for this Quality Rule may change, for example: there may be an increase in the number of violations returned by the rule.

For example the following code is now considered as violating the rule, when in previous releases it did not:

public ArrayList<HashMap<String, String>> getTableRows() {

Avoid Classes with a High Lack of Cohesion - 7798

A bug has been discovered which has meant that Java Enums are included in the scope of objects considered by the Quality Rule "Avoid Classes with a High Lack of Cohesion - 7798". The bug has now been fixed (Java Enums have been removed from the scope) and after an upgrade to CAST AIP 8.2.2 and the generation of a post upgrade snapshot, results may differ for this Quality Rule.

PHP

Avoid Too Many Copy Pasted Artifacts - 7156

A bug has been discovered in the way that this Quality Rule is calculated, which can lead to false violations of the rule (the number of failed checks may exceed the total number of checks). The bug has now been fixed and after an upgrade to CAST AIP 8.2.2 and the generation of a post upgrade snapshot, results may differ for this Quality Rule.

PowerBuilder

Controls must inherit from a userobject - 6110

A bug has been discovered in the way that this Quality Rule is calculated, which can lead to false violations of the rule (objects that already inherit from a userobject are being flagged as violations). The bug has now been fixed and after an upgrade to CAST AIP 8.2.2 and the generation of a post upgrade snapshot, results may differ for this Quality Rule.

Multi-techno

Avoid Artifacts with lines longer than X characters - 7784

A bug has been discovered whereby certain object types (listed below) were ignored by the internal Metrics Assistant during an analysis. This meant that data was not generated for these objects types in the context of the the "Avoid Artifacts with lines longer than X characters - 7784" Quality Rule. This bug has now been fixed and and after an upgrade to CAST AIP 8.2.2 and the generation of a post upgrade snapshot, results may differ for this Quality Rule with regard to the following object types:

Oracle

  • CAST_Oracle_PrivateProcedure
  • CAST_Oracle_PrivateFunction
  • CAST_Oracle_BitmapIndex
  • CAST_Oracle_DDL_Trigger
  • CAST_Oracle_Event_Trigger
  • CAST_Oracle_FunctionBasedIndex
  • CAST_Oracle_Index

Oracle Forms

  • CAST_Forms_PrivateProcedure_Tab
  • CAST_Forms_PrivateFunction
  • CAST_Forms_PrivateFunction_Tab
  • CAST_Forms_Trigger_Tab
  • CAST_Forms_DataBlock
  • CAST_Forms_DataBlock_Tab
  • CAST_Forms_RecordGroup
  • CAST_Forms_RecordGroup_Tab

JEE

  • CAST_Java_AnnotationTypeMethod

Microsoft SQL Server, Sybase ASE, DB2 zOS

  • CAST_ASETSQL_Index
  • CAST_MSTSQL_Index
  • DB2-CAST_DB2ZOS_Index
  • DB2-ZOS-CAST_DB2ZOS_Index

.NET

  • CAST_DotNet_EventCSharp
  • CAST_DotNet_IndexerCSharp
  • CAST_DotNet_EventVB
  • CAST_DotNet_IndexerVB

T-SQL

Avoid SQL queries with implicit conversions in the WHERE clause - 7420 and Avoid SQL queries on XXL Tables with implicit conversions in the WHERE clause - 7662

A bug has been detected that has resulted in false positives (i.e. violations are found but are not expected) for the above named Quality Rules. This bug has now been fixed and after an upgrade to CAST AIP 8.2.2 and the generation of a post upgrade snapshot, results may differ for this Quality Rule - there will be less violations due to improved accuracy of the Quality Rules.

Other impacts of changes made in CAST AIP 8.2.2

Metrics calculation

A bug has been discovered that limited metric calculation (via the Metrics Assistant) to the first 500,000 objects of an application. Therefore, for applications with more than 500,000 objects, measurement results and QR violations will increase after an upgrade to CAST AIP 8.2.2 and the generation of a post upgrade snapshot, as now metrics are calculated for all objects, not just the first 500,000.

CAST Engineering Dashboard

When using the "Evolution" panel

A bug has been discovered that has meant that when looking at the "Evolution" panel in the CAST Engineering Dashboard for two successive snapshots, the Estimated Effort is showing as 0% for "Added" even though an increase in code since the previous snapshot is visible. This bug has now been fixed and after an upgrade to CAST AIP 8.2.2 you may find that values are now different (i.e. correct) in this panel.

Miscellaneous result changes

Visual Basic

A bug has been discovered in CAST AIP 8.2.x where links between VB methods and T-SQL Stored Procedures that existed in CAST AIP 8.0.x are not visible CAST AIP 8.2.0/8.2.1 when looking at the post upgrade snapshot. This bug has now been fixed and after an upgrade to CAST AIP 8.2.2 the links are now detected. This change may impact Quality Rules, transactions and Function Point values.

  • No labels