Metric

Acronym

Description

Author

Number of public methods

NPM

A count of public methods in a class

Bansiya & Davis

Data access metric

DAM

The ratio of private attributes to the total attributes declared in a class

Bansiya & Davis

Measure of aggregation

MOA

A count of the number of class fields who types are user defined classes; measures the part-whole relationship

Bansiya & Davis

Measure of functional abstraction

MFA

The ratio of the number of methods inherited by a class to the total number of methods accessible by the member methods on the class

Bansiya & Davis

Cohesion among methods of class

CAM

The summation of the number of different types of method parameters in every method divided by a multiplication of the number of different method parameter types in whole class and number of methods; the relatedness of methods of a class based on the parameter list of the methods

Bansiya & Davis

Weighted methods per class

WMC

The number of methods in the class

Chidamber & Kemerer

Depth of inheritance tree

WIT

The inheritance levels form the top object hierarchy top

Chidamber & Kemerer

Number of children

NOC

The number of immediate descendants of the class

Chidamber & Kemerer

Coupling between object classes

CBO

The number of classes coupled to a given class as a result of method calls, field accesses, inheritance, method arguments, return types, and exceptions

Chidamber & Kemerer

Response for a class

RFC

The number of different methods that can be executed when an object of that class receives a message

Chidamber & Kemerer

Lack of cohesion of methods

LCOM

The sets of methods a class that are not related through sharing of some of the class fields

Chidamber & Kemerer

Inheritance coupling

IC

The number of parent classes to which a given class is coupled; coupling occurs when 1) an inherited method uses an attribute that is defined in a new or redefined method, 2) one of its inherited methods calls a redefined method or 3) one of its inherited methods is called by a redefined method and uses a parameter that is defined in the redefined model

Tang, Kao & Chen

Coupling between methods

CBM

The total number of new or redefined methods to which all the inherited methods are coupled

Tang, Kao & Chen

Average method complexity

AMC

The average method size for each class; size is equal to the number of Java binary codes in the method

Tang, Kao & Chen