Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: replaced "package" with "directory" except in metric names and keys

...

NameKeyDescription

Afferent couplings

ca

A class' afferent couplings is a measure of how many other classes use the specific class. This metric is available only at the file level.

Depth in Tree

dit

The depth of inheritance tree (DIT) metric provides for each class a measure of the inheritance levels from the top of the object hierarchy. This metric is available only at the file level.

More details

Efferent couplings

ce

A class' efferent couplings is a measure of how many different classes are used by the specific class. This metric is available only at the file level.

File cycles

file_cycles

Minimal number of file cycles detected inside a package directory to be able to identify all undesired dependencies. This metric is available at the packagedirectory, module and program levels.

Anchor
metricFileEdgesWeight
metricFileEdgesWeight
File edges weight

file_edges_weight

Number of file dependencies inside a packagedirectory. This metric is available at the packagedirectory, module and program levels.

File dependencies to cut

package_tangles

Number of file dependencies to cut in order to remove all cycles between packagesdirectories. This metric is available at the packagedirectory, module and program levels.

 

Anchor
metricFileTangle
metricFileTangle
File tangle

file_tangles

File tangle = Suspect file dependencies

This metric is available at the packagedirectory, module and program levels.

Anchor
metricFileTangleIndex
metricFileTangleIndex
File tangle index

file_tangle_index

File tangle index = 2 * (File tangle / File edges weight) * 100.

This metric is available at the packagedirectory, module and program levels.

LCOM4

lcom4

Lack of cohesion of functions. See LCOM4 documentation page. This metric is available at all levels.

Number of children

noc

The number of direct and indirect descendants of this class. This metric is available at the file level.

Package cycles

package_cycles

Minimal number of package directory cycles detected to be able to identify all undesired dependencies. This metric is available at the packagedirectory, module and program levels.

Package dependencies to cut

package_feedback_edges

Number of package directory dependencies to cut in order to remove all cycles between packagesdirectories. This metric is available at the package, module and program levels.

Package tangle index

package_tangle_index

Level of package directory interdependency. Best value (0%) means that there is no cycle and worst value (100%) means that packages directories are really tangled. This metric is computed with the following formula: 2 * (File dependencies to cut / Number of file dependencies between packagesdirectories) * 100. This metric is available at the packagedirectory, module and program levels.

Response for class

rfc

See RFC documentation page. This metric is available at all levels.

Package edges weight

package_edges_weight

Number of file dependencies between packagesdirectories. This metric is available at the packagedirectory, module and program levels.

Anchor
metricFileFeedbackEdges
metricFileFeedbackEdges
Suspect file dependencies

file_feedback_edges

File dependencies to cut in order to remove cycles between files inside a packagedirectory. Note that cycles between files inside a package directory does not always mean a bad quality architecture. This metric is available at the package directory level.

Suspect LCOM4 densitysuspect_lcom4_densityDensity of files having a LCOM4 density greater than 1. This metric is available at the packagedirectory, module and program levels.

...

MetricKeyDescription
Anchor
metricAccessors
metricAccessors
Accessors
accessors

Number of getter and setter functions used to get (reading) or set (writing) a class property.

More details

Anchor
metricClasses
metricClasses
Classes
classesNumber of classes (including nested classes, interfaces, enums and annotations).
Anchor
metricDirectories
metricDirectories
Directories
directoriesNumber of directories.
Anchor
metricFiles
metricFiles
Files
filesNumber of files.
Generated Linesgenerated_lines

Number of lines generated by Cobol code generators like CA-Telon.

Generated lines of codegenerated_nclocNumber of lines of code generated by Cobol code generators like CA-Telon.
Inside Control Flow Statementscobol_inside_ctrlflow_statementsNumber of inside (intra program) control flow statements (GOBACK, STOP RUN, DISPLAY, CONTINUE, EXIT, RETURN, PERFORM paragraph1 THRU paragraph2).
Cobol only.
Anchor
metricLines
metricLines
Lines
linesNumber of physical lines (number of carriage returns).
Anchor
metricNcloc
metricNcloc
Lines of code
ncloc

Number of physical lines that contain at least one character which is neither a whitespace or a tabulation or part of a comment.

More details

LOCs in Data Divisionscobol_data_division_nclocNumber of lines of code in Data divisions. Generated lines of code are excluded.
Cobol only. 
LOCs in Procedure Divisionscobol_procedure_division_nclocNumber of lines of code in Procedure divisions. Generated lines of code are excluded.
Cobol only.
Anchor
metricFunctions
metricFunctions
Methods
functions

Number of functions. Depending on the language, a function is either a function or a method or a paragraph.

More details

Outside Control Flow Statementscobol_outside_ctrlflow_statementsNumber of outside (inter programs) control flow statements (CALL, EXEC CICS LINK, EXEC CICS XCTL, EXEC SQL, EXEC CICS RETURN).
Cobol only.
Anchor
metricPackages
metricPackages
Packages
packagesNumber of packagesdirectorys.
Anchor
metricProjects
metricProjects
Projects
projectsNumber of projects in a view.
Anchor
metricPublicApi
metricPublicApi
Public API
public_api

Number of public Classes + number of public Functions + number of public Properties

More details

Anchor
metricStatements
metricStatements
Statements
statements

Number of statements.

More details

...