Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

By default in CAST AIP 8.2.x, when using the CAST AIP 8.2.x Assessment Model, the new Full Application consolidation mode will always be used unless you manually change it. In the context of an upgrade to CAST AIP 8.2.x from 7.3.x and 8.0.x, if you choose to Use new Assessment Model from this release of CAST AIP (see Strategy for Assessment Model Run the update in Upgrading to CAST AIP from 7.3.x or 8.0.x to 8.12.x) then the Full Application consolidation mode will be applied when you generate the snapshot at the end of the upgrade process (and for any subsequent snapshot thereafter). Consider the following:

...

Whatever Consolidation Mode is used in the Assessment Model in the CAST Management Studio, Total Checks and Failed Checks are now calculated in CAST AIP 8.2.x with components that can be accessed from all Functional Modules. This is also true for Sizing Measures counting critical violations. In the context of an upgrade to CAST AIP 8.2.x (from 7.3.x or 8.0.x), if you choose to Use new Assessment Model from this release of CAST AIP (see Strategy for Assessment Model Run the update in Upgrading to CAST AIP from 7.3.x or 8.02.x to 8.1.x) then the new calculation mode for Total Checks and Failed Checks will be applied when you generate the snapshot at the end of the upgrade process (and for any subsequent snapshot thereafter). As such, results may differ from previous releases of CAST AIP when there is an overlap between user defined modules (i.e. when a component belongs to two or more User Defined Modules).

...

In previous releases of CAST AIP, the Quality Rules listed above were not functioning correctly and were producing false negative results. The algorithm used to generate these Quality Rules has now been improved and corrected and, after an upgrade to CAST AIP 8.2.x and the generation of a new snapshot, the number of violations may increase. This increase in violations is due to the improved accuracy provided by the bug correction. In addition, although many "paths" may exist for each violation (a violation is deemed to be a "path" that starts in a loop in a method and targets an object) the Quality Rules will now only report one "path", thus keeping the Quality Rule calculation time stable and reducing the amount of data produced.

Please note however, that results for these two quality rules are not perfectly deterministic because results depend on the order in which control-flow (in particular calls in loops) is discovered. In addition, results depend on objects and links identified by the JEE analyzer. As the analyzer improves, objects and links change for the same source code. Therefore, when upgrading to forthcoming service packs, violations reported by these quality rules can vary slightly.

Avoid directly instantiating a Class used as a Managed bean - 7964

...

In previous releases of CAST AIP this Quality Rule would be violated if injected fields of classes managed by a framework such as Struts, CDI, JSF, Hibernate etc. did not include a setter. This requirement for a setter in this particular circumstance has now been removed from the Quality Rule. As such, after an upgrade to CAST AIP 8.2.x and the generation of a new snapshot on existing source code, the number of violations may change for this Quality Rule.

Anchor
AU2
AU2
Effects of changes made to J2EE Analysis Units and Execution Units in CAST AIP 8.2.x

Due to a change in the way J2EE Analysis Units containing differing analysis configurations are analyzed in CAST AIP 8.2.x - all in one Execution Unit rather than in multiple Execution Units (see  Analysis Units and Execution Units below) - you may find that after an upgrade to CAST AIP 8.2.x (from 7.3.x only) a subsequent re-analysis of source code and a snapshot generation, the number of violations for the Quality Rules listed below changes (there may be more or less violations):

  • Avoid using specific logging implementation - 7678
  • Avoid using deprecated objects - 4574
  • Declare as static all Methods not using Instance Fields - 7254
  • Blocking synchronous calls should have associated timeouts - 8100

These removed and added violations are all positive improvements, in other words the list of violations is more accurate than in previous releases of CAST AIP.

Other impacts of changes made in CAST AIP 8.2.0

Anchor
AU
AU
Analysis Units and Execution Units

In CAST AIP 8.2.x a change has been made to Analysis Unit grouping in Execution Units due to the move to a 64-bit architecture: instead of grouping Analysis Units in Execution Units according to a set of predefined rules, all J2EE Analysis Units in an Application are now grouped in one single Execution Unit. The effect of this change is that when re-analyzing the same source code following an upgrade to CAST AIP 8.2.x (from 7.3.x only), links between objects in different Analysis Units are now more accurately identified provided that Dependencies have been correctly identified by the CAST Delivery Manager Tool (see the dependencies marked as "Discovered" in the Dependencies tab in the CAST Management Studio Application editor), therefore some links that were previously incorrectly identified in earlier versions of CAST AIP may no longer be identified and/or new links that were not previously identified in earlier versions of CAST AIP may now be found. This will have a knock on effect on the number of violations produced by certain Quality Rules - see Effects of changes made to J2EE Analysis Units and Execution Units in CAST AIP 8.2.x above - some violations that previously existed will be removed, and new ones may be found. These removed and added violations are all positive improvements, in other words the list of violations is more accurate than in previous releases of CAST AIP.

Miscellaneous

Potentially increased time to generate a snapshot

...