Metrics - Details - Basics
This group contains metrics that compute basic information about the
code.
Average Lines of Code Per Method
This is the average of the number of lines of code (LOC) in each method
defined in the target elements.
This metric includes details on the minimum and maximum numbers of
lines of code in any of the methods.
Applicability
This metric can be computed for any type or type container.

Parameters
- Maximum average value
- Causes the metric to flag any projects or packages with too high an
average LOC/method.
Average Number of Constructors Per Type
This is the average of the number of constructors defined for each type defined in the
target elements.
This metric includes details on the minimum and maximum numbers of
constructors defined by a
type.
Applicability
This metric can be computed for any type or type container.

Parameters
- Maximum average value
- Causes the metric to flag any projects or packages with too many
constructors per type.
Average Number of Fields Per Type
This is the average of the number of fields defined for each type defined in the
target elements.
This metric includes details on the minimum and maximum numbers of
fields defined by a
type.
Applicability
This metric can be computed for any type or type container.

Parameters
- Include constant (static final) fields in computation
- Determines whether static final fields are counted.
- Maximum average value
- Causes the metric to flag any projects or packages with too many
fields per type.
Average Number of Methods Per Type
This is the average of the number of methods defined for each type defined in the
target elements.
This metric includes details on the minimum and maximum numbers of methods defined by a
type.
Applicability
This metric can be computed for any type or type container.

Parameters
- Maximum average value
- Causes the metric to flag any projects or packages with too many
methods per type.
Average Number of Parameters
This is the average of the number of parameters defined for methods
(but not constructors) defined in the target elements.
This metric includes details on the minimum and maximum numbers of
parameters defined by a method. It also provides details on the number of
methods of each particular size.
Applicability
This metric can be computed for any type or type container.

Parameters
- Maximum average value
- Causes the metric to flag any projects or packages with too many
parameters per method.
Lines of Code
This is a count of the number of lines in the target elements that contain characters
other than white space and comments.
Applicability
This metric can be computed for any source-based elements.

Parameters
- Maximum lines of code per compilation unit
- Causes the metric to flag any types with too many lines of code.
Number of Characters
This is a simple count of the number of characters in the source code associated with
the target elements. The source code associated with an element includes any Javadoc
comment that might precede the element.
Applicability
This metric can be computed for any source-based elements.

Parameters
- Maximum characters per compilation unit
- Causes the metric to flag any compilation unit with too many
characters.
Number of Comments
This is a count of the number of comments. It is not a count of the number of lines
that contain comments; multi-line comments are counted as a single comment no matter how many
lines they occupy.
This metric includes a breakdown based on the kind of comment: end-of-line, multi-line,
and Javadoc.
Applicability
This metric can be computed for any source-based elements.
Number of Constructors
This is a count of the number of constructors defined in the target elements.
This metric includes a breakdown based on the visibility of the constructor (public,
package, protected or private).
Applicability
This metric can be computed for any type or type container.

Parameters
- Maximum constructors per type
- Causes the metric to flag any type with too many constructors.
Number of Fields
This is a count of the number of fields defined in the target elements.
This metric includes a breakdown based on both the scope of the field (static or
instance) and the visibility of the field (public, package, protected or private).
Applicability
This metric can be computed for any type or type container.

Parameters
- Maximum fields per type
- Causes the metric to flag any type with too many fields.
Number of Lines
This is a simple count of the number of lines in the target elements, including blank
lines.
Applicability
This metric can be computed for any source-based elements.

Parameters
- Maximum lines per compilation unit
- Causes the metric to flag any compilation unit with too many lines.
Number of Methods
This is a count of the number of methods defined in the target elements.
This metric includes a breakdown based on both the scope of the method (static or
instance) and the visibility of the method (public, package, protected or private).
Applicability
This metric can be computed for any type or type container.

Parameters
- Maximum methods per type
- Causes the metric to flag any type with too many methods.
Number of Packages
This is a count of the number of packages defined in the target elements.
Applicability
This metric can be computed for any package or package container.
Number of Semicolons
This is a simple count of the number of semicolons in the source code associated with
the target elements. Semicolons occuring within comments are not counted, but those at the
end of package and import declarations are.
Applicability
This metric can be computed for any source-based elements.

Parameters
- Maximum semicolons per compilation unit
- Causes the metric to flag any compilation unit with too many
semicolons.
Number of Types
This is a count of the number of types defined in the target elements.
This metric includes a breakdown based on whether the type is a class or an interface.
Applicability
This metric can be computed for any type container.

Parameters
- Maximum types per package
- Causes the metric to flag any packages with too many types.
|