Developer Documentation for Quality Functionality (org.fortiss.tooling.ext.quality)

Below is a list of all collected metrics. They are represented by the enum org.fortiss.tooling.ext.quality.data.MetricKey

They are categorized by the respective provider collecting the metric

HierarchicElementProvider

org.fortiss.tooling.ext.quality.HierarchicElementProvider

UNQIUE_ID

Integer: This is an unique identifier for each element as specified in org.fortiss.tooling.kernel.model.IIdLabeled.

NUMBER_OF_CONNECTORS

Integer: Number of connectors in the respective element

NUMBER_OF_CONTAINED_ELEMENTS

Integer: Number of entries in the containedElements list.

NUMBER_OF_CONNECTIONS

Integer: Number of connections in this element. List of aggregated connection model elements. Usually a aggregates all connections of its direct sub-structure.

NUMBER_OF_TOTAL_CONNECTORS

Integer: Total number of connectors in this element and all contained elements

NUMBER_OF_TOTAL_ENTRY_CONNECTORS

Integer: Sum of all connectors which implement org.fortiss.tooling.base.model.base.EntryConnectorBase

NUMBER_OF_TOTAL_EXIT_CONNECTORS

Integer: Sum of all connectors which implement org.fortiss.tooling.base.model.base.ExitConnectorBase. Usually the sum over this and NUMBER_OF_TOTAL_ENTRY_CONNECTORS should equal NUMBER_OF_TOTAL_CONNECTORS

NUMBER_OF_TOTAL_ELEMENTS

Integer: Total number of elements contained in this element. Includes the element for which this metric is recorded.

NUMBER_OF_TOTAL_COMMENTABLE_ELEMENTS

Integer: Total number of elements implementing org.fortiss.tooling.kernel.model.INamedCommentedElement in this element. Includes the element for which this metric is recorded. Never exceeds NUMBER_OF_TOTAL_ELEMENTS.

NUMBER_OF_TOTAL_COMMENTED_ELEMENTS

Integer: Total number of elements which are commentable and do not have null or an empty string as comment

NUMBER_OF_TOTAL_LEAF_ELEMENTS

Integer: Total number of elements contained in this element which do not contain elements. Includes self

GraphMetricsProvider

org.fortiss.tooling.ext.quality.GraphMetricsProvider

BETWEENESS_CENTRALITY

Double: Value of the betweenness centrality of this element embedded in a graph of consisting of all elements which are contained in the element which contains this element, as well as all neighbours of these elements

The direction of the connections are respected, and it is assumed that all connections connect to a ExitConnectorBase or EntryConnectorBase

BETWEENESS_CENTRALITY_RECURSIVELY

Double: Same as above, but all connections are resolved to leaf elements, i.e. elements which do not contain other elements

CLUSTERING_COEFFICIENT

Double: Clustering coefficient of this element. Ignores connection direction and resolves all neighbours to leaf elements.

ComponentMetricProvider

org.fortiss.af3.component.quality.ComponentMetricProvider

NUMBER_OF_TOTAL_CODE_CONSTANTS

Integer: Total number of constants in code specifications in this element and all contained elements

NUMBER_OF_TOTAL_CODE_CYCLOMATIC_COMPLEXITY

Integer: The total cyclomatic complexity of all code specifications in this element and all contained elements

NUMBER_OF_TOTAL_CODE_LINES

Integer: Total number of lines of code in all code specifications in this element and all contained elements

NUMBER_OF_TOTAL_CODE_COMMENTS

Integer: Total number of comment blocks in all code specifications in this element and all contained elements

ComponentMetricProvider

org.fortiss.af3.component.quality.ComponentMetricProvider

DataDictonaryProvider

org.fortiss.af3.component.quality.DataDictonaryProvider

Provides Metrics also collected by the HierarchicElementProvider, but for the DataDictionary.

SafetyMetricProvider

org.fortiss.af3.safety.quality.SafetyMetricProvider

SAFETY_LEVEL

String: String representation of the assigned safety level of this element

AllocationTableProvider

org.fortiss.af3.task.quality.AllocationTableProvider

TASK_ALLOCATED_COMPONENTS

Integer: Number of allocated Components on this Task. This metric can only be non-null for org.fortiss.af3.task.model.Task Elements

HARDWARE_ALLOCATED_TASKS

Integer: Number of allocated Tasks on this ExecutionUnit. This metric can only be non-null for org.fortiss.af3.platform.model.ExecutionUnit Elements

ModelQualityService

org.fortiss.tooling.ext.quality.service.ModelQualityService

NESTING_LEVEL

Integer: The depth of this element. Defined by the number of elements which have to be traversed to reach this element from the root

CONSTRAINT_VIOLATIONS_ERROR

Integer: Number of constraint violations of the severity error which have this element as source

CONSTRAINT_VIOLATIONS_WARNING

Integer: Number of constraint violations of the severity warning which have this element as source