<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> </head> <body lang="en-US" dir="ltr"> <h1>Developer Documentation for <i>Quality Functionality (</i><i>org.fortiss.tooling.ext.quality</i><i>)</i></h1> <h2>Metrics List </h2> <p>Below is a list of all collected metrics. They are represented by the enum <code> org.fortiss.tooling.ext.quality.data.MetricKey</code></p> <p>They are categorized by the respective provider collecting the metric</p> <table border="1"> <thead> <tr> <th>Provider</th> <th>Qualified Name</th> <th>Metric</th> <th>Type</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>HierarchicElementMetricProvider</td> <td>org.fortiss.tooling.ext.quality.HierarchicElementMetricProvider</td> <td>UNIQUE_ID</td> <td>Integer</td> <td>This is an unique identifier for each element as specified in org.fortiss.tooling.kernel.model.IIdLabeled.</td> </tr> <tr> <td>HierarchicElementMetricProvider</td> <td>org.fortiss.tooling.ext.quality.HierarchicElementMetricProvider</td> <td>NUMBER_OF_CONNECTORS</td> <td>Integer</td> <td>Number of connectors in the respective element.</td> </tr> <tr> <td>HierarchicElementMetricProvider</td> <td>org.fortiss.tooling.ext.quality.HierarchicElementMetricProvider</td> <td>NUMBER_OF_CONTAINED_ELEMENTS</td> <td>Integer</td> <td>Number of entries in the containedElements list.</td> </tr> <tr> <td>HierarchicElementMetricProvider</td> <td>org.fortiss.tooling.ext.quality.HierarchicElementMetricProvider</td> <td>NUMBER_OF_CONNECTIONS</td> <td>Integer</td> <td>Number of connections in this element. List of aggregated connection model elements. Usually aggregates all connections of its direct sub-structure.</td> </tr> <tr> <td>HierarchicElementMetricProvider</td> <td>org.fortiss.tooling.ext.quality.HierarchicElementMetricProvider</td> <td>NUMBER_OF_TOTAL_CONNECTORS</td> <td>Integer</td> <td>Total number of connectors in this element and all contained elements.</td> </tr> <tr> <td>HierarchicElementMetricProvider</td> <td>org.fortiss.tooling.ext.quality.HierarchicElementMetricProvider</td> <td>NUMBER_OF_TOTAL_ENTRY_CONNECTORS</td> <td>Integer</td> <td>Sum of all connectors which implement org.fortiss.tooling.base.model.base.EntryConnectorBase.</td> </tr> <tr> <td>HierarchicElementMetricProvider</td> <td>org.fortiss.tooling.ext.quality.HierarchicElementMetricProvider</td> <td>NUMBER_OF_TOTAL_EXIT_CONNECTORS</td> <td>Integer</td> <td>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.</td> </tr> <tr> <td>HierarchicElementMetricProvider</td> <td>org.fortiss.tooling.ext.quality.HierarchicElementMetricProvider</td> <td>NUMBER_OF_TOTAL_ELEMENTS</td> <td>Integer</td> <td>Total number of elements contained in this element. Includes the element for which this metric is recorded.</td> </tr> <tr> <td>HierarchicElementMetricProvider</td> <td>org.fortiss.tooling.ext.quality.HierarchicElementMetricProvider</td> <td>NUMBER_OF_TOTAL_COMMENTABLE_ELEMENTS</td> <td>Integer</td> <td>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.</td> </tr> <tr> <td>HierarchicElementMetricProvider</td> <td>org.fortiss.tooling.ext.quality.HierarchicElementMetricProvider</td> <td>NUMBER_OF_TOTAL_COMMENTED_ELEMENTS</td> <td>Integer</td> <td>Total number of elements which are commentable and do not have null or an empty string as a comment.</td> </tr> <tr> <td>HierarchicElementMetricProvider</td> <td>org.fortiss.tooling.ext.quality.HierarchicElementMetricProvider</td> <td>NUMBER_OF_TOTAL_LEAF_ELEMENTS</td> <td>Integer</td> <td>Total number of elements contained in this element which do not contain elements. Includes self.</td> </tr> <tr> <td>GraphMetricsProvider</td> <td>org.fortiss.tooling.ext.quality.GraphMetricsProvider</td> <td>BETWEENESS_CENTRALITY</td> <td>Double</td> <td>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 neighbors of these elements.</td> </tr> <tr> <td>GraphMetricsProvider</td> <td>org.fortiss.tooling.ext.quality.GraphMetricsProvider</td> <td>BETWEENESS_CENTRALITY_RECURSIVELY</td> <td>Double</td> <td>Same as above, but all connections are resolved to leaf elements, i.e. elements which do not contain other elements.</td> </tr> <tr> <td>GraphMetricsProvider</td> <td>org.fortiss.tooling.ext.quality.GraphMetricsProvider</td> <td>CLUSTERING_COEFFICIENT</td> <td>Double</td> <td>Clustering coefficient of this element. Ignores connection direction and resolves all neighbors to leaf elements.</td> </tr> <tr> <td>ModelQualityService</td> <td>org.fortiss.tooling.ext.quality.service.ModelQualityService</td> <td>NESTING_LEVEL</td> <td>Integer</td> <td>The depth of this element. Defined by the number of elements which have to be traversed to reach this element from the root.</td> </tr> <tr> <td>ModelQualityService</td> <td>org.fortiss.tooling.ext.quality.service.ModelQualityService</td> <td>CONSTRAINT_VIOLATIONS_ERROR</td> <td>Integer</td> <td>Number of constraint violations of the severity error which have this element as source.</td> </tr> <tr> <td>ModelQualityService</td> <td>org.fortiss.tooling.ext.quality.service.ModelQualityService</td> <td>CONSTRAINT_VIOLATIONS_WARNING</td> <td>Integer</td> <td>Number of constraint violations of the severity warning which have this element as source.</td> </tr> </tbody> </table> <h2></h2> The included packages are: <ul> <li><i>org.fortiss.tooling.ext.quality</i>: containing the GraphMetrics and HierarchicElement providers. The other providers are therefore located on the necessary plugin level to support the extraction of meta information from other elements. All metric providers implement the IMetricProvider interface.</li> <li><i>org.fortiss.tooling.ext.quality.data</i>: contains the classes to handle the data structure and map of metrics. It manages the data during runtime so the visualizations can receive the necessary data.</li> <li><i>org.fortiss.tooling.ext.quality.service</i>: The interface and implementation of the registered service.</li> <li><i>org.fortiss.tooling.ext.quality.storage</i>: The classes here manage the csv extraction to archive the metrics.</li> </ul> </body> </html>