Académique Documents
Professionnel Documents
Culture Documents
Vinicio Changoluisa
Vinicio Changoluisa
AHF-). Es la proporcin entre la suma de los grados de invisibilidad de los atributos en todas las clases (atributos protegidos y privados) y el nmero total de atributos definidos en el sistema
Las pautas de diseo sugieren que no se debe emplear atributos pblicos, ya que se considera que violan los principios de encapsulacin al exponer la implementacin de Vinicio Changoluisa las clases.
Factor MIF). Proporcin entre el nmero de mtodos heredados y el nmero total de mtodos.
Vinicio Changoluisa
entre el nmero real de posibles situaciones polimorfas para una clase Ci y el mximo nmero posible de situaciones polimorfas en Ci. Es decir, es el nmero de mtodos heredados redefinidos dividido entre el mximo nmero de situaciones polimorfas distintas posibles
tiempo y esfuerzo para desarrollarlas y mantenerlas. Estas clases tienden a ser especficas de la aplicacin, limitando su posibilidad de reuso. Lorenz y Kidd sugieren un umbral de 40 o 20, dependiendo si las clases son o no de interface de usuario respectivamente
Vinicio Changoluisa
En el nivel cero de la jerarqua se encuentra la clase raz. El uso de la herencia es visto como un compromiso : Ms alto Ms reutiliza el cdigo Ms complejo (difcil de explicar comportamiento) Bajos niveles de herencia cdigo escrito en un estilo funcional NO aprovecha el concepto de herencia
Vinicio Changoluisa
Nmero de hijos ((Number of Children NOC-): es el nmero de descendientes inmediatos de una clase (nodo).
NH grande mas reutilizacin por herencia problemas de abstraccin de cdigo Dificultad para modificar una clase, afecta a todos los hijos.
Vinicio Changoluisa
Acoplamiento entre clases (Coupling Factor CF-): nmero de clases que se acoplan con una clase dada. Hay dependencia entre dos clases cuando una de ellas usa mtodos o variables de la otra clase Comunicacin entre clases
Vinicio Changoluisa
Vinicio Changoluisa
Mtricas basadas en el clculo de palabras clave (reservadas) y variables. 1. Operadores (palabras reservadas):
Sentencias de control, operadores: If, for while, swtich, do
while, +, - ,*
2.
Operandos:
Variables y constantes
Vinicio Changoluisa
programa N1 - nmero total de ocurrencias de operadores n2 - nmero de operandos nicos que aparecen en un programa N2 - nmero total de ocurrencias de operandos
Vinicio Changoluisa
Longitud:
N= N1+N2
operandos nicos. Por ejemplo, si dos programas tienen la misma longitud N pero uno tiene mayor nmero de operadores y operandos nicos, que naturalmente lo hacen ms difcil de entender y mantener, este tendr un mayor volumen.
Vinicio Changoluisa
desarrollar un programa. Desde el punto de vista del mantenimiento, el esfuerzo se puede interpretar como una medida del trabajo requerido para comprender un software ya desarrollado.
Vinicio Changoluisa
Tamao (recuento de atributos y operaciones), 2. Herencia (reutilizacin del cdigo a lo ancho y alto de la jerarqua de clases), 3. Valores internos (cohesin y anlisis de cdigo) y 4. Valores externos (acoplamiento y reuso).
1.
Vinicio Changoluisa
(NOI). La invalidacin consiste en la sustitucin en la subclase de una operacin heredada por una versin especializada para su propio uso(reescritura de mtodos).
Vinicio Changoluisa
(NOA): operaciones propias de la subclase que no aparecen en las superclases. ndice de especializacin (IE): IE = (NOI nivel)/ Mtotal nivel: nivel de la clase en la jerarqua de clases Mtotal: Nmero total de mtodos de la clase
Vinicio Changoluisa
mtrica LOC de CK. b) Porcentaje pblico y protegido (PPP): porcentaje de atributos pblicos de la clase c) Acceso pblico a datos miembro(APD): nmero de clases que pueden acceder a atributos de otras clases, violando el encapsulamiento
Vinicio Changoluisa
Herencia
a) Nmero de clases raz (NCR): nmero de jerarquas de
clases distintas. b) Admisin (ADM): indicacin de la herencia mltiple. Si ADM > 1 la clase hereda de ms de una clase raz. c) Nmero de descendientes (NOD) y profundidad del rbol de la herencia d) (APM): se aplican las correspondientes mtricas CK
Vinicio Changoluisa
Vinicio Changoluisa