Universidad Técnica Particular de Loja Escuela de Ciencias de la Computación Procesos de Ingeniería de Software Arabel Aguilar Galo Lalangui
INTRODUCCIÓN Métricas aplicadas al proceso y proyecto de SW Categorizar la medición del SW: Métricas orientadas al tamaño Métricas orientadas a la función Métricas orientadas a objetos Métricas orientadas a casos de uso Métricas orientadas a la Ingeniería Web.
INTRODUCCIÓN Categorizar métricas de calidad del SW Medición de la calidad Eficacia en la eliminación de defectos Integración de métricas del proceso de SW. Argumentos para las métricas del SW. Establecimiento de una línea base. Recopilación, cálculo y evaluación de métricas.
TÉRMINOS CLAVE MEDIDA:  Valor asignado a un atributo de una entidad mediante una medición. MEDICIÓN:  Es el acto de determinar una medida. METRICA:  Medida cuantitativa del grado en que un sistema, componente o proceso posee un atributo dado. Incluye el método de medición. INDICADOR:  Es una métrica o combinación de métricas que proporcionan una visión profunda del proceso de software. ERROR:  Fallo en un producto que se descubre antes de entregar el SW al usuario final. DEFECTO:  Un fallo que se produce una vez que se ha entregado el producto al usuario final.
TÉRMINOS CLAVE M Medidas Métricas Indicadores Proceso de IS Proyecto Producto Recopilación de datos Cálculo de Métricas Evaluación de Métricas
MÉTRICAS APLICADAS AL PROCESO DE SW  Métricas de propósito estratégico. Las métricas  aplicadas al proceso establecen un conjunto de indicadores – Mejora de procesos de SW. Se basan en datos históricos o estadísticos. Métricas privadas:  Se aplica a individuos – y los resultado o información no se publican. Métricas públicas :  Origen privada – Se publican a todo el equipo. Los indicadores del proceso permiten: Al gestor, evaluar lo que funciona y lo que no A la organización, tener una visión profunda de la eficacia de un proceso ya existente
MÉTRICAS APLICADAS AL PROYECTO SW Métricas de propósito táctico. Doble finalidad Minimizar tiempos de desarrollo – reducción de problemas y riesgos. Valorar calidad del producto – mejor calidad,  menos defectos – reducción de reelaboración. Los indicadores del proyecto permiten al gestor: Evaluar el estado del proyecto en curso Seguir la pista de riesgos potenciales Detectar áreas problemáticas antes de que se conviertan en críticas Ajustar el flujo y las tareas de trabajo Evaluar la habilidad del equipo del proyecto en controlar la calidad de los productos de trabajo de la IS
MEDICIÓN DEL SW Medidas Directas Medidas Indirectas Coste Funcionalidad Esfuerzo humano Calidad Líneas de código Complejidad Velocidad de ejecución Eficiencia Tamaño de memoria Fiabilidad Número de defectos Facilidad de uso etc. etc.
Métricas del Software Medidas directas del resultado y del proceso Medidas indirectas del  software y del proceso Métricas Orientadas al tamaño Métricas Orientadas a la función
Métricas orientadas al tamaño Esfuerzo humano (persona - mes) Coste (USD) Páginas de documentación N° de errores N° de defectos LDC Productividad  =   KLDC / persona-mes Calidad  =   N° de errores (defectos) / KLDC Coste medio  =   USD / KLDC Documentación  =   KLDC / persona-mes
MEDIDAS LDC n 1:  número de operadores diferentes que aparecen en el programa. n 2 : número de operandos diferentes que aparecen en el programa. N 1 : número total de veces que aparece el operador. N 2 : número total de veces que aparecen el operando.
Ejemplo (I): Programa de ordenación por intercambio     SUBROUTINE SORT(X,N)      DIMENSION X(N)      IF (N .LT. 2) RETURN     DO 20 I=2, N        DO 10 J=1, I        IF (X(I) .GE. X(J)) GO TO 10           SAVE = X(I)           X(I) = X(J)           X(J) = SAVE  10  CONTINUE  20  CONTINUE     RETURN     END
Ejemplo (II): De esta tabla se desprenden los valores de n 1 =10 y N 1 =28.     Operador  Cuenta  1  Fin de sentencia  7  2  Subíndices de arreglos  6  3  =  5  4  IF()  2  5  DO  2  6  ,  2  7  Fin de programa  1  8  .LT.  1  9  .GE.  1  10  GO  TO 10  1  Total  28
Ejemplo (III): De esta tabla se desprenden los valores de n 2 =7 y N 2 =22.       Operando  Cuenta  1  X  6  2  I  5  3  J  4  4  N  2  5  2  2  6  SAVE  2  7  1  1  Total  22
Calcular  la productividad, calidad, coste medio y documentación de acuerdo a la información proporcionada en la tabla que se muestra a continuación: Productividad = KLDC / personas-mes Calidad = Nº errores (defectos) / KLDC Coste medio = Dólares / KLDC Documentación = Páginas de documentación / KLDC Proyecto KLDC Esfuerzo $(000) pp. Doc. Errores Defectos Personas Alfa 12,1 24 168 365 134 29 3 Beta 27,2 62 440 1224 321 86 5 Gamma 20,2 43 314 1050 256 64 6
Métricas orientadas a la función Esfuerzo humano (persona - mes) Coste (USD) Páginas de documentación N° de errores N° de defectos PF Productividad  =   PF / persona-mes Calidad  =   N° de errores (defectos) / PF Coste medio  =   USD / PF Documentación  =   PF / persona-mes
Métricas orientadas a la función PF = cuenta total  X [0,65 + 0,01 * Sumatoria (F i ) ]   Punto de función Sumatoria total resultante de la ejecutar las operaciones en la tabla siguiente Valores de ajuste de complejidad En función de un cuestionario de 14 preguntas  (Anexo 1)
Para el ejemplo descrito se asume que la   Fi es 46 (un producto moderadamente complejo), por consiguiente:        PF = 50 x (0,65 + 0,01 x 46) = 55.5 ≈ 56 Donde cuenta-total es la suma de todas las entradas PF obtenidas de la figura 9.2 y Fi (i=1 a 14) son los "valores de ajuste de complejidad".       Factor de ponderación       Parámetro de medición  Cuenta      Simple  Media  Compl.ejo         Número de entradas del usuario  3  X  3  4  6  =  9  Número de salidas del usuario  2  X  4  5  7  =  8  Número de consultas del usuario  2  X  3  4  6  =  6  Número de archivos  1  X  7  10  15  =  7  Número de interfaces externas  4  X  5  7  10  =  20  Cuenta total  50  Fig. Cálculo de puntos de función
MEDICIÓN DEL  SW No proporcionan suficiente granularidad para la planificación. Métricas sugeridas Número de guiones de escenario Número de clases clave Número de clases de apoyo Número promedio de clases de apoyo por clase clave Número de subsistemas MÉTRICAS ORIENTADAS A OBJETOS
MEDICIÓN DEL SW Describen funciones y características visibles al usuario. Independiente del lenguaje de programación. Dependen de la complejidad del problema – no existe un tamaño estándar. MÉTRICAS ORIENTADAS A CASOS DE USO
MEDICIÓN DEL SW No se puede aplicar las métricas para el SW convencional. Medidas  aplicables a un proyecto Web Número de páginas Web estáticas. Número de páginas Web dinámicas. Número de vínculos internos de página. Número de objetos de datos persistentes. Número de sistemas externos en interfaz. Número de objetos de contenido estático. Número de objetos de contenido dinámico. Número de funciones ejecutables. MÉTRICAS DE PROYECTOS DE INGENIERÍA WEB
MÉTRICAS DE CALIDAD DEL SW Medidas de calidad del SW: Corrección:   grado en que el SW lleva a cabo su función. Facilidad de mantenimiento:  representa la facilidad de corregirse y adaptarse a un cambio. Integridad:  Mide la habilidad de un sistema para resistir ataques (tanto accidentales como intencionados) contra su seguridad. Facilidad de uso:  Intento por medir lo  amigable  que puede ser un programa con el usuario. MEDICIÓN DE LA CALIDAD
MÉTRICAS DE CALIDAD DEL SW La  Eficacia de la Eliminación de Defectos  (EED) es una medida de la habilidad de filtrar de las actividades de la garantía de calidad y de control, al aplicarse a todas las actividades del marco de trabajo del proceso. Valora la habilidad de un equipo – encontrar errores – antes siguiente fase. Eficacia en la eliminación de defectos (EDD)
INTEGRACIÓN DE MÉTRICAS DEL PROCESO DE SW Permite determinar si existe o no la mejora de proceso y/o producto. Se emplea para establecer una línea base – evaluar mejoras. Sirve como fundamento para estimaciones futuras. El equipo del software puede establecer metas significativas – mejora proceso. Argumentos para las métricas del software
INTEGRACIÓN DE MÉTRICAS DEL PROCESO DE SW Consiste en datos recopilados de proyectos previos. Atributos de los datos de una línea base: Razonablemente precisos. Máxima recopilación de datos. Medidas consistentes. Aplicaciones similares al trabajo que se estimará Establecimiento de una línea base
INTEGRACIÓN DE MÉTRICAS DEL PROCESO DE SW Requiere una investigación histórica de datos – calcular métricas. Evaluación y aplicación de las métricas. Recopilación, cálculo y evaluación de métricas.
Fuentes Bibliográficas [PRESSMAN2005] PRESSMAN R. (2005) Ingeniería del software - un enfoque práctico Mc Graw Hill Sexta edición Universitat  Jaume,  E77 -Gestión de Recursos de la Información, (en línea) citado el 8 de abril del 2008. Disponible en WWW:  http://www.vision.uji.es/~sanchez/Teach/PDF-E77/Tema1.pdf SALAZAR, E. y SALAZAR M.,  Métricas de proceso y proyecto,  artículo.

Métricas del Software

  • 1.
    Universidad Técnica Particularde Loja Escuela de Ciencias de la Computación Procesos de Ingeniería de Software Arabel Aguilar Galo Lalangui
  • 2.
    INTRODUCCIÓN Métricas aplicadasal proceso y proyecto de SW Categorizar la medición del SW: Métricas orientadas al tamaño Métricas orientadas a la función Métricas orientadas a objetos Métricas orientadas a casos de uso Métricas orientadas a la Ingeniería Web.
  • 3.
    INTRODUCCIÓN Categorizar métricasde calidad del SW Medición de la calidad Eficacia en la eliminación de defectos Integración de métricas del proceso de SW. Argumentos para las métricas del SW. Establecimiento de una línea base. Recopilación, cálculo y evaluación de métricas.
  • 4.
    TÉRMINOS CLAVE MEDIDA: Valor asignado a un atributo de una entidad mediante una medición. MEDICIÓN: Es el acto de determinar una medida. METRICA: Medida cuantitativa del grado en que un sistema, componente o proceso posee un atributo dado. Incluye el método de medición. INDICADOR: Es una métrica o combinación de métricas que proporcionan una visión profunda del proceso de software. ERROR: Fallo en un producto que se descubre antes de entregar el SW al usuario final. DEFECTO: Un fallo que se produce una vez que se ha entregado el producto al usuario final.
  • 5.
    TÉRMINOS CLAVE MMedidas Métricas Indicadores Proceso de IS Proyecto Producto Recopilación de datos Cálculo de Métricas Evaluación de Métricas
  • 6.
    MÉTRICAS APLICADAS ALPROCESO DE SW Métricas de propósito estratégico. Las métricas aplicadas al proceso establecen un conjunto de indicadores – Mejora de procesos de SW. Se basan en datos históricos o estadísticos. Métricas privadas: Se aplica a individuos – y los resultado o información no se publican. Métricas públicas : Origen privada – Se publican a todo el equipo. Los indicadores del proceso permiten: Al gestor, evaluar lo que funciona y lo que no A la organización, tener una visión profunda de la eficacia de un proceso ya existente
  • 7.
    MÉTRICAS APLICADAS ALPROYECTO SW Métricas de propósito táctico. Doble finalidad Minimizar tiempos de desarrollo – reducción de problemas y riesgos. Valorar calidad del producto – mejor calidad, menos defectos – reducción de reelaboración. Los indicadores del proyecto permiten al gestor: Evaluar el estado del proyecto en curso Seguir la pista de riesgos potenciales Detectar áreas problemáticas antes de que se conviertan en críticas Ajustar el flujo y las tareas de trabajo Evaluar la habilidad del equipo del proyecto en controlar la calidad de los productos de trabajo de la IS
  • 8.
    MEDICIÓN DEL SWMedidas Directas Medidas Indirectas Coste Funcionalidad Esfuerzo humano Calidad Líneas de código Complejidad Velocidad de ejecución Eficiencia Tamaño de memoria Fiabilidad Número de defectos Facilidad de uso etc. etc.
  • 9.
    Métricas del SoftwareMedidas directas del resultado y del proceso Medidas indirectas del software y del proceso Métricas Orientadas al tamaño Métricas Orientadas a la función
  • 10.
    Métricas orientadas altamaño Esfuerzo humano (persona - mes) Coste (USD) Páginas de documentación N° de errores N° de defectos LDC Productividad = KLDC / persona-mes Calidad = N° de errores (defectos) / KLDC Coste medio = USD / KLDC Documentación = KLDC / persona-mes
  • 11.
    MEDIDAS LDC n1: número de operadores diferentes que aparecen en el programa. n 2 : número de operandos diferentes que aparecen en el programa. N 1 : número total de veces que aparece el operador. N 2 : número total de veces que aparecen el operando.
  • 12.
    Ejemplo (I): Programade ordenación por intercambio   SUBROUTINE SORT(X,N)   DIMENSION X(N)   IF (N .LT. 2) RETURN   DO 20 I=2, N     DO 10 J=1, I     IF (X(I) .GE. X(J)) GO TO 10       SAVE = X(I)       X(I) = X(J)       X(J) = SAVE 10 CONTINUE 20 CONTINUE   RETURN   END
  • 13.
    Ejemplo (II): Deesta tabla se desprenden los valores de n 1 =10 y N 1 =28.   Operador Cuenta 1 Fin de sentencia 7 2 Subíndices de arreglos 6 3 = 5 4 IF() 2 5 DO 2 6 , 2 7 Fin de programa 1 8 .LT. 1 9 .GE. 1 10 GO TO 10 1 Total 28
  • 14.
    Ejemplo (III): Deesta tabla se desprenden los valores de n 2 =7 y N 2 =22.   Operando Cuenta 1 X 6 2 I 5 3 J 4 4 N 2 5 2 2 6 SAVE 2 7 1 1 Total 22
  • 15.
    Calcular laproductividad, calidad, coste medio y documentación de acuerdo a la información proporcionada en la tabla que se muestra a continuación: Productividad = KLDC / personas-mes Calidad = Nº errores (defectos) / KLDC Coste medio = Dólares / KLDC Documentación = Páginas de documentación / KLDC Proyecto KLDC Esfuerzo $(000) pp. Doc. Errores Defectos Personas Alfa 12,1 24 168 365 134 29 3 Beta 27,2 62 440 1224 321 86 5 Gamma 20,2 43 314 1050 256 64 6
  • 16.
    Métricas orientadas ala función Esfuerzo humano (persona - mes) Coste (USD) Páginas de documentación N° de errores N° de defectos PF Productividad = PF / persona-mes Calidad = N° de errores (defectos) / PF Coste medio = USD / PF Documentación = PF / persona-mes
  • 17.
    Métricas orientadas ala función PF = cuenta total X [0,65 + 0,01 * Sumatoria (F i ) ] Punto de función Sumatoria total resultante de la ejecutar las operaciones en la tabla siguiente Valores de ajuste de complejidad En función de un cuestionario de 14 preguntas (Anexo 1)
  • 18.
    Para el ejemplodescrito se asume que la  Fi es 46 (un producto moderadamente complejo), por consiguiente:       PF = 50 x (0,65 + 0,01 x 46) = 55.5 ≈ 56 Donde cuenta-total es la suma de todas las entradas PF obtenidas de la figura 9.2 y Fi (i=1 a 14) son los "valores de ajuste de complejidad".     Factor de ponderación   Parámetro de medición Cuenta   Simple Media Compl.ejo     Número de entradas del usuario 3 X 3 4 6 = 9 Número de salidas del usuario 2 X 4 5 7 = 8 Número de consultas del usuario 2 X 3 4 6 = 6 Número de archivos 1 X 7 10 15 = 7 Número de interfaces externas 4 X 5 7 10 = 20 Cuenta total 50 Fig. Cálculo de puntos de función
  • 19.
    MEDICIÓN DEL SW No proporcionan suficiente granularidad para la planificación. Métricas sugeridas Número de guiones de escenario Número de clases clave Número de clases de apoyo Número promedio de clases de apoyo por clase clave Número de subsistemas MÉTRICAS ORIENTADAS A OBJETOS
  • 20.
    MEDICIÓN DEL SWDescriben funciones y características visibles al usuario. Independiente del lenguaje de programación. Dependen de la complejidad del problema – no existe un tamaño estándar. MÉTRICAS ORIENTADAS A CASOS DE USO
  • 21.
    MEDICIÓN DEL SWNo se puede aplicar las métricas para el SW convencional. Medidas aplicables a un proyecto Web Número de páginas Web estáticas. Número de páginas Web dinámicas. Número de vínculos internos de página. Número de objetos de datos persistentes. Número de sistemas externos en interfaz. Número de objetos de contenido estático. Número de objetos de contenido dinámico. Número de funciones ejecutables. MÉTRICAS DE PROYECTOS DE INGENIERÍA WEB
  • 22.
    MÉTRICAS DE CALIDADDEL SW Medidas de calidad del SW: Corrección: grado en que el SW lleva a cabo su función. Facilidad de mantenimiento: representa la facilidad de corregirse y adaptarse a un cambio. Integridad: Mide la habilidad de un sistema para resistir ataques (tanto accidentales como intencionados) contra su seguridad. Facilidad de uso: Intento por medir lo amigable que puede ser un programa con el usuario. MEDICIÓN DE LA CALIDAD
  • 23.
    MÉTRICAS DE CALIDADDEL SW La Eficacia de la Eliminación de Defectos (EED) es una medida de la habilidad de filtrar de las actividades de la garantía de calidad y de control, al aplicarse a todas las actividades del marco de trabajo del proceso. Valora la habilidad de un equipo – encontrar errores – antes siguiente fase. Eficacia en la eliminación de defectos (EDD)
  • 24.
    INTEGRACIÓN DE MÉTRICASDEL PROCESO DE SW Permite determinar si existe o no la mejora de proceso y/o producto. Se emplea para establecer una línea base – evaluar mejoras. Sirve como fundamento para estimaciones futuras. El equipo del software puede establecer metas significativas – mejora proceso. Argumentos para las métricas del software
  • 25.
    INTEGRACIÓN DE MÉTRICASDEL PROCESO DE SW Consiste en datos recopilados de proyectos previos. Atributos de los datos de una línea base: Razonablemente precisos. Máxima recopilación de datos. Medidas consistentes. Aplicaciones similares al trabajo que se estimará Establecimiento de una línea base
  • 26.
    INTEGRACIÓN DE MÉTRICASDEL PROCESO DE SW Requiere una investigación histórica de datos – calcular métricas. Evaluación y aplicación de las métricas. Recopilación, cálculo y evaluación de métricas.
  • 27.
    Fuentes Bibliográficas [PRESSMAN2005]PRESSMAN R. (2005) Ingeniería del software - un enfoque práctico Mc Graw Hill Sexta edición Universitat Jaume, E77 -Gestión de Recursos de la Información, (en línea) citado el 8 de abril del 2008. Disponible en WWW: http://www.vision.uji.es/~sanchez/Teach/PDF-E77/Tema1.pdf SALAZAR, E. y SALAZAR M., Métricas de proceso y proyecto, artículo.