La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Métricas Técnicas para Sistemas Orientados a Objeto

Presentaciones similares


Presentación del tema: "Métricas Técnicas para Sistemas Orientados a Objeto"— Transcripción de la presentación:

1 Métricas Técnicas para Sistemas Orientados a Objeto

2 Métricas de Software OO
A medida que los sistemas OO van siendo comunes , resulta esencial que los ingenieros del software dispongan de mecanismos cuantitativos para estimar la calidad de los diseños y la efectividad de los programas OO.

3 Objetivos Comprender mejor la calidad del producto.
Estimar la efectividad del proceso. Mejorar la calidad del trabajo realizado en el nivel del proyecto.

4 Características distintivas
Localización. Encapsulamiento. Ocultamiento de información. Herencia. Abstracción.

5 Métricas para el modelo de diseño OO
Una visión objetiva del diseño debería tener un componente cuantitativo y esto nos lleva a las métricas OO. En realidad, las métricas técnicas para sistemas OO se pueden aplicar no solo al modelo de diseños , sino también al modelo de análisis. Algo muy importante en la elaboración de un diseño OO es la experiencia del diseñador al implementar de forma efectiva los requerimientos del cliente tomando en cuenta el tamaño y complejidad del proyecto.

6 Métricas orientadas a clases
El conjunto de métricas CK (Chidamber y Kemener): - Métodos ponderados por clases (MPC). Dada una clase C1 con los métodos M1, ..., Mn y c1, ..., cn la complejidad de los métodos, MPC se define como la sumatoria de las complejidades de cada método de una clase. Si todos los métodos son considerados de igual complejidad, entonces c1=1 y MPC=n (número de métodos). - Árbol de profundidad de herencia (APH). APH mide el máximo nivel en la jerarquía de herencia. Se trata de la cuenta directa de los niveles en la jerarquía de herencia. En el nivel cero de la jerarquía se encuentra la clase raíz. - Número de descendientes (NDD). NDD es el número de subclases subordinadas a una clase en la jerarquía, es decir, la cantidad de subclases que pertenecen a una clase.

7 Métricas orientadas a clases
- Acoplamiento entre clases objeto (ACO). ACO de una clase es el número de clases a las cuales una clase está ligada, sin tener con ella relaciones de herencia. Hay dependencia entre dos clases cuando una de ellas usa métodos o variables de la otra clase. Es consistente con las tradicionales definiciones de acoplamiento: “medida del grado de interdependencia entre módulos”. - Respuestas para una clase (RPC). RPC es el cardinal del conjunto de todos los métodos que se pueden invocar como respuesta a un mensaje a un objeto de la clase o como respuesta a algún método en la clase. Esto incluye a todos los métodos accesibles dentro de la jerarquía de la clase. Es decir, RPC es el número de métodos locales a una clase más el número de métodos llamados por los métodos locales. - Carencia de cohesión en los métodos (CCM). número de grupos de métodos locales que no acceden a atributos comunes.

8 Métricas orientadas a clases
Métricas propuestas por Lorenz y Kidd: Tamaño de la clase (TC). LOC es el número de líneas activas de código (líneas ejecutables) en un método. - Número de operaciones invalidadas por una subclase (NOI). Existen casos en que una subclase sustituye una operación heredada de su superclase por una versión especializada para su propio uso, ya esto se le denomina invalidación. - Número de operaciones añadidas por una subclase (NOA). - Índice de especialización (IE). Muestra en qué medida las subclases redefinen el comportamiento de sus superclases

9 Métricas orientadas a operaciones
Tamaño medio de operación (TOavg). Aunque se lograría utilizar las líneas de código como indicador para el tamaño de operación, la medida LOC padece de considerables problemas. Por esta razón, el número de mensajes enviados por la operación proporciona una alternativa para el tamaño de la operación. Complejidad de Operación (CO). La complejidad de una operación se consigue calcular empleando cualquiera de las métricas de complejidad propuestas para el software convencional. Número medio de parámetros por operación (NPavg). En cuanto sea más grande el número de parámetros de la operación, será más compleja la colaboración entre objetos.

10 Métricas para pruebas orientadas a objeto
Encapsulamiento. - Carencia de cohesión en métodos (CCM) Cuanto más alto sea el valor de CCM, más estados tendrán que ser probados para asegurar que los métodos no den lugar a efectos secundarios. - Porcentaje público y protegido (PPP). Los atributos públicos se heredan de otras clases, y por tanto son visibles para esas clases. Los atributos protegidos son una especialización y son privados de alguna subclase específica. - Acceso público a datos miembros (APD). Esta métrica muestra el número de clases (o métodos) que pueden acceder a los atributos de otra clase, violando así el encapsulamiento.

11 Métricas para pruebas orientadas a objeto
Herencia. - Número de clases raíz (NCR) Esta métrica es un recuento de las jerarquías de clases distintas que se describen en el modelo de diseño., en donde será preciso desarrollar conjuntos de pruebas para cada una de las clases raíz, y para la correspondiente jerarquía de clases. - Admisión (ADM). Cuando se utiliza en el contexto 00, la admisión es una indicación de herencia múltiple. Cuando la ADM sea mayor a 1, indica que una clase hereda sus atributos y operaciones de más de una clase raíz. - Número de descendientes (NDD) y profundidad de l árbol de la herencia (APH). Los métodos de la superclase tendrán que ser probados nuevamente para cada subclase.

12 Métricas para proyectos OO
Número de guiones de escenario (NE). El número de escenarios o casos de uso es directamente proporcional al numero de clases requerida para cubrir los requisitos, el numero de estados para cada clase, el numero de métodos , atributos y colaboraciones. Número de clases clave (NCC). Las clases clave se centran directamente en el dominio del negocio para el problema que se estará analizando, y tendrán menor probabilidad de ser implementadas mediante reutilización. Número de subsistemas (NSUB). El número de subsistemas proporciona una idea general de la asignación de recursos, de la planificación (con especial hincapié en el desarrollo en paralelo), y del esfuerzo global de integración.

13 Resumen Son bien conocidos diferentes conjuntos de métricas propuestas por distintos autores: Chidamber y Kemerer, Lorenz y Kidd, y otros En esta presentación se han repasado las métricas consideradas más representativas de estos y otros autores, desde una perspectiva basada en las características específicas del enfoque orientado a objetos, más que en el análisis particular del conjunto de métricas propuesto por un solo autor. Esta aproximación quizá lleva a una mayor dificultad en la comprensión de las mismas, pues algunas miden las mismas propiedades pero desde diferentes perspectivas. Se pone interés especial en las métricas de cobertura. Características específicas en OO como el polimorfismo y encapsulamiento sugieren nuevos enfoques en el diseño de casos de prueba para alcanzar el 100% de cobertura de métodos.


Descargar ppt "Métricas Técnicas para Sistemas Orientados a Objeto"

Presentaciones similares


Anuncios Google