This documentation is no longer maintained and may contain obsolete information.
Page frame name:
FRAME_PORTAL_VIOLATION_VIEW
This view is designed to deliver the information about a single application necessary to better grasp the location and volume of critical violations.
This view requires access to at least one Application.
Layout
Main window panels
Violation Map
This panel is designed to help identify the components that represent the highest risk. The panel contains:
- A map of the location of critical violations in application modules: each bubble represents a module and its size is proportional to the number of critical violations. I.e., the bigger the bubble, the larger the number of critical violations in the corresponding module. The "worst place" for a module to be located in this map is in the upper right corner: barely testable and critical issues in many different areas - if the bubble is also large, this indicates a very high risk module:
- The vertical Violation Areas axis is a value that refers to the number of "areas", i.e. number of distinct Quality Rules with a critical contribution that are violated by artifacts belonging to the module - the higher the value the more areas (Quality Rules) in which critical violations exist. As such it is possible to instantly find out if the risk lies within one specific coding and architecture practice.
- The horizontal Testability Effort Estimation axis is a value that refers to the number of decision points in each module (i.e., total Cyclomatic Complexity) - the higher the value, the more difficult the module is to test.
- A list of all the modules in the application, together with their number of decision points, violation areas and critical violations. Selecting a module will display the list of the module's critical violations in the Violation List below.
- The vertical Violation Areas axis is a value that refers to the number of "areas", i.e. number of distinct Quality Rules with a critical contribution that are violated by artifacts belonging to the module - the higher the value the more areas (Quality Rules) in which critical violations exist. As such it is possible to instantly find out if the risk lies within one specific coding and architecture practice.
Portfolio History
Displays the evolution over the snapshots of the number of critical violations for all modules from the applications. It helps identify trends, patterns in the SDLC, outliers, etc.The evolution of the number of critical violations per module can be visually cross-referenced with the size (in kLOCs) of the application itself.
Violation List
Displays the list of artifacts with critical violations for each module listed in the Violation Map panel - select a module here to see its critical violations. The paged list can be sorted according to your requirements requirements and exported as a CSV file (use the Export All option) for further processing and sharing - see the Interactive Table section in Using the CAST Engineering Dashboard for more information about this table. The following column headings are available:
Violation Status | Status of the violation in the current snapshot |
RPF | Risk Propagation Factor (RPF), to identify violations that can impact the largest number of components in the Application. The impact area is computed as follows:
|
VI | Violation Index (VI), to identify violations with the largest number of violations, taking into account the weight of the Rules and of the Technical Criteria, for the Health Factor involved. The formula used to calculate this value is as follows: For each object, Identify Rules it violates that contribute to a given Health Factor through Technical Criteria. Multiply aggregate weight of the Rule within the Technical Criterion by the aggregate weight of the Technical Criterion within the Health Factor. In other words: VI = Sum_of_all_rules_violated_by_the_object (Quality_rule_weight * technical_criteria_weight) |
PRI | Propagated Risk Index (PRI), to identify the violations that can impact the largest number of components, involving objects with the largest number of violations pertaining to the Health Factor involved. The formula used to calculate this value is as follows: PRI = (RPF + 1) x VI |
Act./Excl. | Indicates whether the violation has been added to the Improvement - Action Plan or excluded from the snapshot generation |
Rule Name | Name of the Quality Rule the object is violating |
Health Factor | Name of the Health Factor the Quality Rule belongs to |
Object Name | Name of the module the object belongs to |
Module Name | Status of the object in the current snapshot |
Object Status | Status of the object in the current snapshot |
Cost Complexity | Cost Complexity category of the current object |
Violation Details
When a violation is selected in the Violation List, the Violation Details section is updated to provide more information about the violation:
Violation Info | Expandable section providing the status of the violation in the current snapshot, together with values for RPF, VI and PRF (see above). |
Violated Rule | Expandable section providing full details of the Quality Rule that has been violated |
Violating Object | Expandable section providing full details about the object that is violating the Quality Rule:
|
Source Code | This panel shows the source code of the object that is violating the selected Quality Rule. It is taken from the most recent snapshot and is only available if source code has been uploaded via the CAST Management Studio (this is the default setting). |
Note that an empty object (i.e. does not contain any source code) will cause the CAST Engineering Dashboard to display an error if you attempt to view its source code.
More information about the Violation Details section is available in Violation Viewer.
Interactive table
Some panels in this page use an interactive table to display data. Interactive tables allow you to sort the data in a more comprehensive manner than simply in ascending/descending order. See the section Interactive tables in Using the CAST Engineering Dashboard.