740f02measure17 1 an evaluation of the mood set of object-oriented software metrics harrison,...

Post on 13-Dec-2015

215 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

740f02measure17 1

An Evaluation of the MOOD Set of Object-Oriented Software Metrics

Harrison, Counsell and Nithi

IEEE Trans on Soft Eng

June 1998

740f02measure17 2

Criteria for Valid Metrics

1. Must allow different entities to be distinguished

2. Must obey representation condition 3. Each unit of attribute contributing to a

valid metric is equivalent 4. Different entities can have the same

attribute value

740f02measure17 3

types of measurement

direct– does not depend on other measures

indirect– involves one or more other measures– e.g. density

740f02measure17 4

Indirect metrics

1. Explicitly defined model 2. Model must be dimensionally consistent 3. No unexpected discontinuities 4. Units and scale types must be correct

740f02measure17 5

MHF definition

Summation over all methods in all classes of 1 minus the V(M) divided by the total number of methods

 

 

TC

iid

TC

i

CM

mim

CM

MVMHF

id

1

11

,(1

740f02measure17 6

Model for MHF?

What would be a good abstraction?

Is there a well-understood Empirical Relationship?

Scale Type?

740f02measure17 7

Validation – MHF/AHF

1. Must allow different entities to be distinguished

2. Must obey representation condition 3. Each unit of attribute contributing to a

valid metric is equivalent 4. Different entities can have the same

attribute value

740f02measure17 8

Indirect Validation – MHF/AHF

1. Explicitly defined model

2. Model must be dimensionally consistent

3. No unexpected discontinuities 4. Units and scale types must be correct

740f02measure17 9

Inheritance Factor

Md(Ci) = number of methods declared in a class i

Mi(Ci) = number of methods inherited (and not overridden)

in a class iMa(Ci) = Md(Ci) + Mi(C i) = number of methods that can

be invoked in association with class i 

TC

i ia

TC

i ii

CM

CMMIF

1

1

740f02measure17 10

Model for MIF?

What would be a good abstraction?

Is there a well-understood Empirical Relationship?

Scale Type?

740f02measure17 11

Validation – MIF/AIF

1. Must allow different entities to be distinguished

2. Must obey representation condition 3. Each unit of attribute contributing to a

valid metric is equivalent 4. Different entities can have the same

attribute value

740f02measure17 12

Indirect Validation – MIF/AIF

1. Explicitly defined model

2. Model must be dimensionally consistent

3. No unexpected discontinuities 4. Units and scale types must be correct

740f02measure17 13

Coupling Factor

TCTC

ccclientisCF

TC

i

TC

j ji

2

1 1),(_

740f02measure17 14

Model for CF?

What would be a good abstraction?

Is there a well-understood Empirical Relationship?

Scale Type?

740f02measure17 15

Validation – CF

1. Must allow different entities to be distinguished

2. Must obey representation condition 3. Each unit of attribute contributing to a

valid metric is equivalent 4. Different entities can have the same

attribute value

740f02measure17 16

Indirect Validation - CF

1. Explicitly defined model

2. Model must be dimensionally consistent

3. No unexpected discontinuities 4. Units and scale types must be correct

740f02measure17 17

Polymorphism FactorLet Mo(Ci) be the number of overriding methods in class i.

Let Mn(Ci) be the number of new methods in class i.

 Let DC(Ci) be the number of descendants of class i.

TC

i iin

TC

i io

CDCCM

CMPF

1

1

740f02measure17 18

Model for PF?

What would be a good abstraction?

Is there a well-understood Empirical Relationship?

Scale Type?

740f02measure17 19

Validation – PF

1. Must allow different entities to be distinguished

2. Must obey representation condition 3. Each unit of attribute contributing to a

valid metric is equivalent 4. Different entities can have the same

attribute value

740f02measure17 20

Indirect Validation - PF

1. Explicitly defined model

2. Model must be dimensionally consistent

3. No unexpected discontinuities 4. Units and scale types must be correct

top related