Sei sulla pagina 1di 2

Proporción de polimorfismo.

Polymorphism Factor (PF) [Abreu y Melo, 1996]

Definición PF se define como la proporción entre el número real de posibles


diferentes situaciones polimórficas para una clase Ci entre el máximo
número posible de situaciones polimorfícas en Ci. En otras palabras,
el número de métodos heredados redefinidos dividido entre el
máximo número de situaciones polimórficas distintas.



Md Ci   Mn Ci   Mo (Ci )
y,
Mn (Ci) es el número de métodos nuevos = (1,5,1,1,6,3,8,2)
Mo (Ci)es el número de métodos redefinidos. = (0,1,0,0,2,2,1,1)
DC (Ci) es el número de descendientes de Ci = (0,2,3,3,0,0,1,0)
TC es el número total de clases = 8

0+1+0+0+2+2+1+1
PF = (1∗0)+(5∗2)+(1∗3)+(1∗3)+(6∗0)+(3∗0)+(8∗1)+(2∗0)
7
PF = 24 = 0,29 ESTO ES UN 29%

Propósito PF es una medida del polimorfismo y una medida indirecta de la


asociación dinámica en un sistema.

Guías y El polimorfismo es debido a la herencia. Abreu indica que en algunos


comentarios casos sobrecargando métodos se reduce la complejidad y por lo tanto,
se incrementa la mantenibilidad y comprensibilidad del sistema.
[Harrison et al. 1998] muestran como esta métrica no cumple todas
las propiedades definidas en [Kitchenham et al. 1995] (cf. Validez de
las métricas) para ser válida ya que en un sistema sin herencia, el
valor de PF resulta indefinido, exhibiendo una discontinuidad.
Índice de Especialización (IE). El índice de especialización proporciona una indicación

aproximada del grado de especialización de cada una de las subclases existentes en un

sistema orientado a objetos.

La especialización se puede alcanzar añadiendo o borrando operaciones, o bien por

invalidación.

IE= [NOI x nivel] Mtotal

IE CLASE CONEXIÓN = [1 x 1] 1 = 1

IE CLASE USUARIO = [1 x 6]1 = 6

IE CLASE DEPENDENCIA = [1 x 1] 1 = 1

IE CLASE LIDER = [1 x 1] 1 = 1

IE CLASE EVIDENCIAS = [1 x 2] 8 = 16

IE CLASE PLAN ANUAL = [1 x 2] 5 = 10

IE CLASE INFORME = [1 x 2] 9 = 18

IE CLASE SEGUIMIENTO = [1 x 2] 3 = 1

en donde nivel es el nivel de la jerarquía de clases en que reside la clase, y Mtotal es el número

total de métodos para la clase. Cuanto más elevado sea el valor de IE es más probable que la

jerarquía de clases tenga clases que no se ajustan a la abstracción de la superclase

Potrebbero piacerti anche