Page tree

Versions Compared

Key

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

...

Info

Starting from ≥ 1.27 and ≥ 2.1, two additional json files have been added that are used to display tiles for the ISO-5055 view that uses data generated by the ISO-5055 Index extension:

WAR 1.x

  • CATALINA_HOME\webapps\CAST-Health\portal\resources\app-ISO.json
  • CATALINA_HOME\webapps\CAST-Health\portal\resources\cmp-ISO.json

WAR ≥ 2.x

  • CATALINA_HOME\webapps\CAST-Health\WEB-INF\classes\config\hd\app-ISO.json
  • CATALINA_HOME\webapps\CAST-Health\WEB-INF\classes\config\hd\cmp-ISO.json

ZIP ≥ 2.x

  • <unpacked_zip>\configurations\config\hd\app-ISO.json
  • <unpacked_zip>\configurations\config\hd\cmp-ISO.json

See Manual configuration of Dashboard tiles using ISO-5055 data for more information.

Library files

...

  1. count: the number of lines displayed. 5 is the optimized size for the height of the tile. This parameter is only taken into account for topRiskiest tile types. 
  2. order: the ordering of the data represented in the tile. This can be descending or ascending, and is based on the sizing measure
  3. qualityIndicator: this is identical to the indicator of the singleQualityIndicator tile :
    1. id is either:ARCHITECTURAL_DESIGNCHANGEABILITYDOCUMENTATIONPERFORMANCEPROGRAMMING_PRACTICEROBUSTNESS, SEI_MAINTAINABILITYSECURITYTQITRANSFERABILITY
    2. id can also be a numerical ID corresponding to any CAST AIP metric
    3. description is whatever is required
    4. format is the format in which the value has to be displayed, it uses the the format defined in numeral.js (see http://numeraljs.com/ for available Numbers formats)

      Info

      From, v. ≥ 2.5.0-funcrel the mode option is available.


    5. mode: the mode in which the value needs to be displayed:

      • grade: this will provide a value from 1 - 4
      • violations: this will provide the total number of violations
      • compliance: this will provide the percentage value of compliance to the chosen metric

Example (for cmp.json)

No Format
			{
                "id": 10,
                "plugin": "CriticalViolationsPerHealthFactor",
                "color": "green",
                "size":"large",
                "parameters": {
                    "type":"topRiskiest",
                    "title": "Top 5 riskiest Applications",
                    "count": 5,
                    "order": "descending",
                    "qualityIndicator": {"id": "PERFORMANCE", "format": "0.00", "description": "Performance"},
                    "sizingMeasure": {"id": "CRITICAL_VIOLATIONS", "format": "0,000a", "description": "Critical Violations"}
                }
            },

...

  1. qualityIndicator: information about the indicator to display: its id, format and an optional description
    1. id is either: ARCHITECTURAL_DESIGN, CHANGEABILITY, DOCUMENTATION, PERFORMANCE, PROGRAMMING_PRACTICE, ROBUSTNESS, SEI_MAINTAINABILITY, SECURITY, TQI, TRANSFERABILITY
    2. id can also be a numerical ID corresponding to any CAST AIP metric
    3. description is whatever is required
    4. format is the format in which the value has to be displayed, it uses the the format defined in numeral.js (see http://numeraljs.com/ for available Numbers formats)
    5. widget provides the rendering type (number for number variation, line or spline for trend chart representation - line uses straight lines whereas spline provides smooth transitions between points)

      Info

      From, v. ≥ 2.5.0-funcrel the mode option is available.


    6. mode: the mode in which the value needs to be displayed:
      • grade: this will provide a value from 1 - 4
      • violations: this will provide the total number of violations
      • compliance: this will provide the percentage value of compliance to the chosen metric



Example (for cmp.json)

No Format
            {
                "id": 103,
                "plugin": "QualityIndicatorEvolution",
                "color": "green",
                "parameters": {
                    "widget":"spline",
                    "title": "Security",
                    "qualityIndicator": {
						"id": "SECURITY",
						"format": "0.00"
					}
                }
            },

...

  1. sizingMeasure: information about the indicator to display : its id, format and an optional description
    1. id is either: TECHNICAL_DEBT, LINES_OF_CODE, NUMBER_OF_ARTIFACTS, NUMBER_OF_COMMENT_LINES, NUMBER_OF_DECISION_POINTS, NUMBER_OF_FILES, NUMBER_OF_FUNCTION_POINTS, NUMBER_OF_BACKFIRED_FUNCTION_POINTS, CRITICAL_VIOLATIONS, OMG_TECHNICAL_DEBT_ISO, OMG_TECHNICAL_DEBT_CISQ and OMG_TECHNICAL_DEBT
    2. id can also be a numerical ID corresponding to any CAST AIP metric
    3. description is whatever is required
    4. format is the format in which the value has to be displayed, it uses the the format defined in numeral.js (see http://numeraljs.com/ for available Numbers formats)
    5. widget provides the rendering type (number for number variation, line or spline for trend chart representation - line uses straight lines whereas spline provides smooth transitions between points)

...

  1. sizingMeasure: information about the indicator to display : its id, format and an optional description
    1. id is either: TECHNICAL_DEBT, LINES_OF_CODE, NUMBER_OF_ARTIFACTS, NUMBER_OF_COMMENT_LINES, NUMBER_OF_DECISION_POINTS, NUMBER_OF_FILES, NUMBER_OF_FUNCTION_POINTS, NUMBER_OF_BACKFIRED_FUNCTION_POINTS, CRITICAL_VIOLATIONSOMG_TECHNICAL_DEBT_ISO, OMG_TECHNICAL_DEBT_CISQ and OMG_TECHNICAL_DEBT
    2. id can also be a numerical ID corresponding to any CAST AIP metric
    3. description is whatever is required
    4. format is the format in which the value has to be displayed, it uses the the format defined in numeral.js (see http://numeraljs.com/ for available Numbers formats)
  2. zoom: true or false to enable zooming in detail charts. Default value is true. The zoom feature works best when you have multiple Applications consolidated into your Health Dashboard - in this situation it can be difficult to read the score details of each column (a column represents one Application). You can therefore use the zoom option to select (using the mouse) the Applications you want to zoom into.

...

At portfolio (cmp.json) and application level (app.json), it is possible to define tiles with custom expressions. A custom expression is defined through a mathematical subset representation involving operations on criteria values (e.g. the ratio of number of lines of codes per critical violations or the count of applications with more than n files).

The tile can represent averaged values (excluding the application not having one of the values such as a background fact or some sizing measure, or those whose function calculation result is infinite) or a total value. For comparison, business criteria scores are average while sizing is usually a total on the portfolio. 

Custom expression tiles can be defined for the current snapshot state (most recent snapshot for all applications at portfolio level or selected snapshots at application level), or via evolutions. 

The mathematical formula available involve the following expression patterns:

...

Functions

...

 

...

Other classic patterns are available but may not be supported by the Health Dashboard in terms of rendering (i.e. those returning non numerical values such as booleans).

...