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

20
740f02measure17 1 An Evaluation of the MOOD Set of Object- Oriented Software Metrics Harrison, Counsell and Nithi IEEE Trans on Soft Eng June 1998

Upload: lillian-baker

Post on 13-Dec-2015

214 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: 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 1

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

Harrison, Counsell and Nithi

IEEE Trans on Soft Eng

June 1998

Page 2: 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

Page 3: 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 3

types of measurement

direct– does not depend on other measures

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

Page 4: 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 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

Page 5: 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 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

Page 6: 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 6

Model for MHF?

What would be a good abstraction?

Is there a well-understood Empirical Relationship?

Scale Type?

Page 7: 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 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

Page 8: 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 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

Page 9: 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 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

Page 10: 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 10

Model for MIF?

What would be a good abstraction?

Is there a well-understood Empirical Relationship?

Scale Type?

Page 11: 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 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

Page 12: 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 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

Page 13: 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 13

Coupling Factor

TCTC

ccclientisCF

TC

i

TC

j ji

2

1 1),(_

Page 14: 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 14

Model for CF?

What would be a good abstraction?

Is there a well-understood Empirical Relationship?

Scale Type?

Page 15: 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 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

Page 16: 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 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

Page 17: 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 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

Page 18: 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 18

Model for PF?

What would be a good abstraction?

Is there a well-understood Empirical Relationship?

Scale Type?

Page 19: 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 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

Page 20: 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 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