OBJECT ORIENTED METRICS
Num. Children |
Depth | Response for Class |
Weighted Methods per Class
Coupling Between Objects |
Lack of Cohesion Methods | Fan-In
| Public Data
Percent of Public Data |
Dependency on Children
NOC (OO)
Handle: Number of Children
Description: The number of classes derived from a specified class.
Observation: This metric is generated with McCabeIQ 7.1.
Frequency: Frequency is determined by the requirements of each project.
Scale: This is one child - one count.
Range: Unlimited.
Usage: None, currently.
Relationship: Unknown.
Threshold: Unknown.
Validation: None, currently.
+ Top
Depth (OO)
Handle: Depth
Description: The level for a class. For instance, if a parent has one
child the depth for the child is two. Depth indicates at what level a class is
located within its class hierarchy. In general, inheritance increases when
depth increases.
Observation: This metric is generated with McCabeIQ 7.1.
Frequency: Frequency is determined by the requirements of each project.
Scale: This is one level - one count.
Range: Unlimited.
Usage: None, currently.
Relationship: Unknown.
Threshold: Unknown.
Validation: None, currently.
+ Top
RFC (OO)
Handle: Response for Class
Description: A count of methods implemented within a class plus the
number of methods accessible to an object class due to inheritance. In general,
lower values indicate greater polymorphism.
Observation: This metric is generated with McCabeIQ 7.1.
Frequency: Frequency is determined by the requirements of each project.
Scale: This is one method or one accessible method - one count.
Range: Unlimited.
Usage: None, currently.
Relationship: Unknown.
Threshold: Unknown.
Validation: None, currently.
+ Top
WMC (OO)
Handle: Weighted Methods per Class
Description: A count of methods implemented within a class (rather than
all methods accessible within the class hierarchy). In general, lower values
indicate greater polymorphism.
Observation: This metric is generated with McCabeIQ 7.1.
Frequency: Frequency is determined by the requirements of each project.
Scale: This is one method - one count.
Range: Unlimited.
Usage: None, currently.
Relationship: Unknown.
Threshold: Unknown.
Validation: None, currently.
+ Top
CBO (OO)
Handle: Coupling Between Objects (CBO)
Description: The number of distinct non-inheritance-related classes on
which a class depends. If a class that is heavily dependent on many classes
outside of its hierarchy is introduced into a library, all the classes upon
which it depends need to be introduced as well. This may be acceptable,
especially if the classes which it references are already part of a class
library and are even more fundamental than the specified class.
Observation: This metric is generated with McCabeIQ 7.1.
Frequency: Frequency is determined by the requirements of each project.
Scale: This is one dependency - one count.
Range: Unlimited.
Usage: None, currently.
Relationship: Unknown.
Threshold: Unknown.
Validation: None, currently.
+ Top
LOCM (OO)
Handle: Lack of Cohesion of Methods (LOCM)
Description: For each data field in a class, the percentage of the
methods in the class using that data field; the percentages are averaged then
subtracted from 100%. The locm metric indicates low or high percentage of
cohesion. If the percentage is low, the class is cohesive. If it is high, it
may indicate that the class could be split into separate classes that will
individually have greater cohesion.
Observation: This metric is generated with McCabeIQ 7.1.
Frequency: Frequency is determined by the requirements of each project.
Scale: This is unclear.
Range: 0% - 100%
Usage: None, currently.
Relationship: Unknown.
Threshold: Unknown.
Validation: None, currently.
+ Top
Fan-in (OO)
Handle: fan-in
Description: This is a count of calls by higher modules.
Observation: This metric is generated with McCabeIQ 7.1.
Frequency: Frequency is determined by the requirements of each project.
Scale: This is one call - one count.
Range: Unlimited.
Usage: None, currently.
Relationship: Unknown.
Threshold: Unknown.
Validation: None, currently.
+ Top
Pub Data (OO)
Handle: Pub Data
Description: The amount of times that a class's public and protected
data is accessed. In general, lower values indicate greater encapsulation. It
is a measure of encapsulation.
Observation: This metric is generated with McCabeIQ 7.1.
Frequency: Frequency is determined by the requirements of each project.
Scale: This is one access - one count.
Range: Unlimited.
Usage: None, currently.
Relationship: Unknown.
Threshold: Unknown.
Validation: None, currently.
+ Top
% Pub Data (OO)
Handle: % Pub Data
Description: The percentage of data that is public and protected data in
a class. In general, lower values indicate greater encapsulation. It is measure
of encapsulation.
Observation: This metric is generated with McCabeIQ 7.1.
Frequency: Frequency is determined by the requirements of each project.
Scale: This is public data/total data.
Range: 0% - 100%.
Usage: None, currently.
Relationship: Unknown.
Threshold: Unknown.
Validation: None, currently.
+ Top
Dependency on Child (OO) (True/False)
Handle: DOC.
Description: Whether a class is dependent on a descendant.
Observation: This metric is generated with McCabeIQ 7.1.
Frequency: Frequency is determined by the requirements of each project.
Scale: This is True/False.
Range: N/A
Usage: None, currently.
Relationship: Unknown.
Threshold: Unknown.
Validation: None, currently.
+ Top
|