Métricas OO Aparecieron por la necesidad de poder cuantificar la calidad del software no tradicional. El software orientado a objetos posee características.

Slides:



Advertisements
Presentaciones similares
MODELOS ORIENTADOS A OBJETOS
Advertisements

Unidad 3 Lenguajes .Net y POO
Observador (observer) Visita (Visitor) Singleton
Capitulo 1 CALIDAD.
CALIDAD EN DESARROLLO DE SOFTWARE
Pruebas Orientadas a Objeto
INGENIERIA DE SOFTWARE
UNIDAD III: CONTROL ESTADÍSTICO DE LOS PRODUCTOS
METRICAS DE PROCESO Y PROYECTO
Arquitectura CLARO-TECNOTREE
Introducción 1 Puntos Clave –La orientación a objetos representa un cambio radical en los métodos tradicionales de creación de software –Los métodos tradicionales.
La Programación Orientado a Objetos
Fundamentos de Ingeniería de Software
POO Santiago, Mayo 2004 TRABAJO DE INVESTIGACIÓN POO Programación Orientada a Objetos CENAFOM Carolina Bravo V. Jaime Jofré B.
UNIVERSIDAD LATINA (UNILA) ENCAPSULACION Y HERENCIA
Aplicación del paradigma orientado a objetos
Programación orientada a objetos Rosemary Torrico Bascopé.
POO (Programación Orientada a Objetos)
Abstracción de los datos y Orientación a Objeto Clase 13.
PLANEACION DE UNA ESTRUCTURA ORGANIZACIONAL
Ingeniería de software Unidad II Ingeniería de Software Orientado a Objetos Principios Orientados a Objetos Tema Semana 7.
Ingeniería de Software Orientada a Objetos
Fundamentos de Programación
 El termino OO, significa que el software es organizado como una colección de objetos. Un objeto es un paquete de software que contiene datos y procedimientos.
Conceptos Objeto Clase Atributo / Método Encapsulamiento Mensaje
Métricas del Software Medidas o conjunto de éstas que nos permite conocer o estimar el tamaño u otra característica sobre un producto de software.Objetivo:
(c) P. Gomez-Gil, INAOE DISEÑO DE COMPONENTES DE SOFTWARE * NOTAS DEL CURSO Ingeniería de Software I DRA. MARIA DEL PILAR GÓMEZ GIL INAOEP.
Diagramas de Clase Angela Carrillo R..
Fundamentos de Programación
Introducción a la POO • ¿Qué es la programación orientada a objets (POO)? – Un “paradigma” de programación – Una forma de pensar acerca de los problemas.
DISEÑO DE SOFTWARE 1ª. Parte
DIEGO ALEJANDRO PAREJA TORO SEBASTIAN CHAVARRIA LONDOÑO 10ª2 01/02/12.
Métricas de calidad de software
Medición y Métricas del Software
Métricas Técnicas para Sistemas Orientados a Objeto
Universidad Central de Venezuela Facultad de Ciencias Postgrado en Ciencias de la Computación Sistemas Distribuidos Albany Márquez.
INSTITUTO TECNOLOGICO DE MINATITLAN ASIGNATURA: FUNDAMENTOS DE PROGRAMACION DOCENTE: JOSE ANGEL TOLEDO ALVAREZ ALUMNA: ALEJANDRA OSORIO ARVISU SEMESTRE:
Construcción de Software
Importancia en la efectividad del:
PROGRAMACION ORIENTADA A OBJETOS POR OVER YESID BARRERA FERNANDEZ.
Facultad de Ingeniería
TEMA 9: DIAGRAMA DE CLASE EN UML
PROGRAMACION ORIENTADA A OBJETOS
Medición y Métricas del Software
Ingeniería de Requisitos
Métricas de calidad de software
Control de Calidad de Software
Ing. Esp. Ricardo Cujar. Programación Orientada a Objetos  Modelo de desarrollo de software.  Modo de pensar del hombre y no de la máquina.  Abstracción.
Métricas de Calidad de Software
UML Casos de Uso (repaso) y Diagramas de Clase
Ingeniería de Software
Universidad Tecnológica de Izúcar de Matamoros Programa Educativo: Tecnologías de la Información Asignatura: Base de datos para aplicaciones Tema: Base.
Métricas De Software OO
PROGRAMACIÓN IV INTRODUCCIÓN.
Estimación de Puntos de Función
Ing. Johanna Macias Algoritmo, Estructura y Programación III.
Tipo de relación entre clases Es uno de los aspectos que distinguen el paradigma de orientación a objetos frente a otros paradigmas. Mecanismo que,
UNIVERSIDAD TECNOLÓGICA DE IZÚCAR DE MATAMOROS TECNOLOGÍAS DE LA INFORMACION Y COMUNICACIÓN BASE DE DATOS PARA APLICACIONES MTRO. GONZALO ROSAS CABRERA.
Programación Orientada Objetos
La Programación Orientado a Objetos
Introducción AOO. Contenido - Introducción - Repaso de Orientación a Objetos - UML - Casos de Uso.
Clases “ Es una Abstracción de un elemento del mundo real ”
Fundamentos de Ingeniería de Software
Herencias Conceptos básicos i
Prof. Manuel B. Sánchez. Un paradigma de programación representa un enfoque particular o filosofía para la construcción del software. No es mejor uno.
Ingeniería del Software Avanzada
Programación Orientada a Objetos Unidad 5. Los objetos son entidades que combinan estado Contiene toda la información denominados atributos REPASO Cada.
PARADIGMA viene del Griego Paradeima = Modelo. Un paradigma es el resultado de los usos, y costumbres, de creencias establecidas de verdades a medias,
Modelado UML Diagrama de Clases
Programación I Clases. Paradigma POO La programación Orientada a objetos (POO) es una forma programar, más cercana a como expresaríamos las cosas en la.
Transcripción de la presentación:

Métricas OO Aparecieron por la necesidad de poder cuantificar la calidad del software no tradicional. El software orientado a objetos posee características conceptuales que al no respetarlas pueden afectar la calidad del producto. Hay distintos tipos de MOO, como por ejemplo: Métricas orientadas a clases Métricas orientadas a operaciones Métricas para pruebas orientadas a objetos Métricas para proyectos orientados a objetos

Métricas Orientadas a Clase Algunos métodos de este tipo de métricas son: Métodos ponderados por clase (C&K) Árbol de profundidad de herencia (C&K) Número de Descendientes (C&K) Tamaño de Clase (Lorenz y Kidd) Índice de Especialización (Lorenz y Kidd)

Métricas Orientadas a Clase Métodos ponderados por clase (C&K) Se basa en la idea de que el número de métodos 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 asignándole un complejidad a cada método. Resulta ambigua dado que no ofrece ninguna definición 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 más lejana. Busca medir el grado de herencia que esta fuertemente a la reutilización. Sin embargo, altos niveles de herencia pueden traer problemas como la complejidad en el diseño y objetos difíciles de testear.

Métricas Orientadas a Clase Árbol de profundidad de herencia A A1 B1 D1 B2 A2 C1 1 2 3 4

Métricas Orientadas a Clase Número de Descendientes (C&K) Mide la calidad de la clase según la cantidad de descendientes que ésta tenga. Utiliza como base para la determinación de la calidad, el concepto de que si bien los descendientes indican reutilización, una cantidad elevada de descendientes puede diluir la abstracción utilizada para la creación de la súper clase. Tamaño de Clase (Lorenz y Kidd) Busca medir el tamaño de clase sumarizando la cantidad de operaciones y atributos. Una clase grande indica alta responsabilidad para la clase y baja reutilización.

Métricas Orientadas a Clase Índice de Especialización (Lorenz y Kidd) Mide el grado de especialización de una clase planteando una relación entre la cantidad de métodos de una clase realizando el siguiente cálculo: IES = N° de operaciones redefinidas * nivel de jerarquía de clase N° total de métodos

Métricas Orientadas a Operaciones Existen menor cantidad de métricas de este tipo por el hecho de que son las clases las que preponderan en el software OO. Tamaño medio de operación Complejidad de operación Número Medio de Parámetros por operación Tamaño medio de operación (Lorenz y Kidd) La cantidad de líneas de código no son una buena unidad de medida para determinar la calidad de una operación, por lo tanto para determinar ésta se persigue la contabilización de mensajes. Muchos mensajes evidencian un alto grado de responsabilidad por parte de la operación lo cual no es aconsejable.

Métricas Orientadas a Operaciones Complejidad de operación (Lorenz y Kidd) En este caso puede utilizarse cualquier métrica existente para el software tradicional debido a que esta medición no se ve relacionada con el paradigma de la POO. Número Medio de Parámetros por operación Tan largo como sea el número de parámetros de operación, más compleja será la colaboración entre objetos

Métricas Orientadas a Objetos Se agrupan según características de diseño impotantes Encapsulamiento Porcentaje público y protegido Esta métrica indica el porcentaje de atributos de una clase que son públicos. Valores altos para PPP incrementan la probabilidad de efectos colaterales entre clases. Acceso público a miembros Indica el número de clases (o métodos) que pueden acceder a los atributos de otras clases, una violación de encapsulación. Valores altos para APD producen potencialmente efectos colaterales entre clases.

Métricas Orientadas a Objetos Herencia Número de Clases Raíz Recuento de las distintas jerarquías de clases, que se describen en el modelo de diseño. A medida que el NCR se incrementa, el esfuerzo de comprobación también. Número de Padres Directos Es una indicación de herencia múltiple. NPD > 1 indica que la clase hereda sus atributos y operaciones de más de una clase raíz. Se debe evitar que NPD > 1 tanto como sea posible.

Métricas para proyectos Orientados a Objetos Le otorgan al jefe de proyecto una visión interna adicional sobre el progreso de su proyecto Número de escenario Número de clases clave Número de subsistemas Es directamente proporcional al número de clases requeridas para cubrir los requisitos, el número de estados para cada clase, el número de métodos, atributos y colaboraciones.

Métricas para proyectos Orientados a Objetos Número de clases clave Las clases claves son aquellas dedicadas al dominio del negocio y siendo su implementacion más dedicada y su factor de reutilización menor. Este tipo de clases deberá estar entre en 20 y el 40 % frente al total de las clases. Número de subsistemas Da una visión sobre la asignación de recursos, la planificación y el esfuerzo de integración global. Pueden aplicarse sobre proyectos pasados para estimar proyectos actuales.