Está en la página 1de 12

Mtricas OO

Aparecieron por la necesidad de poder


cuantificar la calidad del software no tradicional.
El
software
orientado
a
objetos
posee
caractersticas
conceptuales
que
al
no
respetarlas pueden afectar la calidad del
producto.
Hay distintos tipos de MOO, como por ejemplo:
Mtricas orientadas a clases
Mtricas orientadas a operaciones
Mtricas para pruebas orientadas a objetos
Mtricas para proyectos orientados a objetos

Mtricas Orientadas a Clase


Algunos mtodos de este tipo de mtricas son:
Mtodos ponderados por clase (C&K)
rbol de profundidad de herencia (C&K)
Nmero de Descendientes (C&K)
Tamao de Clase (Lorenz y Kidd)
ndice de Especializacin (Lorenz y Kidd)

Mtricas Orientadas a Clase


Mtodos ponderados por clase (C&K)
Se basa en la idea de que el nmero de mtodos y su
complejidad es un indicador razonable de la cantidad de
esfuerzo necesaria para implementar y comprobar una clase.
Mide la complejidad de una clase asignndole un complejidad
a cada mtodo. Resulta ambigua dado que no ofrece ninguna
definicin asociada a la complejidad.

rbol de profundidad de herencia (C&K)


Se plantea sobre el rbol de herencia y mide la distancia
desde el nodo hasta la hoja ms lejana.
Busca medir el grado de herencia que esta fuertemente a la
reutilizacin. Sin embargo, altos niveles de herencia pueden
traer problemas como la complejidad en el diseo y objetos
difciles de testear.

Mtricas Orientadas a Clase


rbol de profundidad de herencia

Mtricas Orientadas a Clase


Nmero de Descendientes (C&K)
Mide la calidad de la clase segn la cantidad de
descendientes que sta tenga. Utiliza como base para la
determinacin de la calidad, el concepto de que si bien los
descendientes indican reutilizacin, una cantidad elevada de
descendientes puede diluir la abstraccin utilizada para la
creacin de la sper clase.

Tamao de Clase (Lorenz y Kidd)


Busca medir el tamao de clase sumarizando la cantidad de
operaciones y atributos.
Una clase grande indica alta responsabilidad para la clase y
baja reutilizacin.

Mtricas Orientadas a Clase


ndice de Especializacin (Lorenz y Kidd)
Mide el grado de especializacin de una clase planteando una
relacin entre la cantidad de mtodos de una clase realizando
el siguiente clculo:
IES = N de operaciones redefinidas * nivel de jerarqua de
clase
N total de mtodos

Mtricas Orientadas a Operaciones


Existen menor cantidad de mtricas de este tipo por el hecho
de que son las clases las que preponderan en el software OO.
Tamao medio de operacin
Complejidad de operacin
Nmero Medio de Parmetros por operacin

Tamao medio de operacin (Lorenz y Kidd)


La cantidad de lneas de cdigo no son una buena unidad de
medida para determinar la calidad de una operacin, por lo
tanto para determinar sta se persigue la contabilizacin de
mensajes. Muchos mensajes evidencian un alto grado de
responsabilidad por parte de la operacin lo cual no es
aconsejable.

Mtricas Orientadas a Operaciones


Complejidad de operacin (Lorenz y Kidd)
En este caso puede utilizarse cualquier mtrica existente
para el software tradicional debido a que esta medicin no se
ve relacionada con el paradigma de la POO.

Nmero Medio de Parmetros por operacin


Tan largo como sea el nmero de parmetros de operacin,
ms compleja ser la colaboracin entre objetos

Mtricas Orientadas a Objetos


Se agrupan segn caractersticas de diseo impotantes

Encapsulamiento
Porcentaje pblico y protegido
Esta mtrica indica el porcentaje de atributos de una clase
que son pblicos. Valores altos para PPP incrementan la
probabilidad de efectos colaterales entre clases.

Acceso pblico a miembros


Indica el nmero de clases (o mtodos) que pueden acceder
a los atributos de otras clases, una violacin de
encapsulacin.
Valores
altos
para
APD
producen
potencialmente efectos colaterales entre clases.

Mtricas Orientadas a Objetos


Herencia
Nmero de Clases Raz
Recuento de las distintas jerarquas de clases, que se
describen en el modelo de diseo. A medida que el NCR se
incrementa, el esfuerzo de comprobacin tambin.

Nmero de Padres Directos


Es una indicacin de herencia mltiple. NPD > 1 indica que la
clase hereda sus atributos y operaciones de ms de una clase
raz. Se debe evitar que NPD > 1 tanto como sea posible.

Mtricas para proyectos


Orientados a Objetos
Le otorgan al jefe de proyecto una visin interna adicional
sobre el progreso de su proyecto
Nmero de escenario
Nmero de clases clave
Nmero de subsistemas

Nmero de escenario
Es directamente proporcional al nmero de clases requeridas
para cubrir los requisitos, el nmero de estados para cada
clase, el nmero de mtodos, atributos y colaboraciones.

Mtricas para proyectos


Orientados a Objetos
Nmero de clases clave
Las clases claves son aquellas dedicadas al dominio del
negocio y siendo su implementacion ms dedicada y su
factor de reutilizacin menor. Este tipo de clases deber estar
entre en 20 y el 40 % frente al total de las clases.

Nmero de subsistemas
Da una visin sobre la asignacin de recursos, la planificacin
y el esfuerzo de integracin global. Pueden aplicarse sobre
proyectos pasados para estimar proyectos actuales.