Métricas de Calidad de Software
Definiciones
Calidad Realizada
Calidad Programada
Calidad Necesaria
Definiciones ‣Medida Proporciona una indicación cuantitativa de la cantidad, dimensiones o tamaño de algunos atributos de un producto ‣Medición Acto de determinar una medida ‣Métrica Es una medida del grado en que un sistema, componente o proceso posee un atributo dado.
Métricas de Software ‣Las métricas del Software comprenden un amplio rango de actividades diversas, estas son algunas: ‣Medidas y modelos de estimación de coste y esfuerzo ‣Aseguramiento y control de calidad ‣Modelos de fiabilidad ‣Modelos y evaluación de ejecución ‣Modelos y medidas de productividad
MĂŠtricas de Software
mejorar
aplicar
proveer
Proceso de recopilación de métricas de Software
Medidas
Métricas
Indicadores
Clasificación de las métricas de Software
de complejidad
Métricas que definen la medición de la complejidad: volumen, tamaño, anidaciones, y configuración.
de calidad
Métricas que definen la calidad del software: exactitud, estructuración o modularidad, pruebas, mantenimiento.
de competencia
Métricas que intentan valorar o medir las actividades de productividad de los programadores con respecto a su certeza, rapidez, eficiencia y competencia
de desempeño
Métricas que miden la conducta de módulos y sistemas de un software, bajo la supervisión del SO o hardware.
estilizadas
Métricas de experimentación y de preferencia: estilo de código, convenciones, limitaciones, etc.
Clasificación de las métricas de software ‣Métricas de proceso ‣Se recopilan de todos los proyectos, y durante un largo periodo de tiempo ‣Caracterizados por: ‣Control y ejecución del proyecto. ‣Medición de tiempos de las fases. ‣Métricas de proyecto ‣Permiten evaluar el estado del proyecto. ‣Permiten seguir la pista de los riesgos. ‣Métricas de producto ‣Se centran en las características del software y no en como fue producido. ‣También son productos los artefactos, documentos, modelos, y componentes que
Métricas de Calidad ‣Principal objetivo de los ingenieros de software es producir sistemas, aplicaciones o productos de alta calidad. ‣Para las evaluaciones que se quieran obtener es necesario la utilización de medidas técnicas, que evalúan la calidad de manera objetiva.
GQM ‣Goal-Question-Metrics es una técnica definida por Basili y Weiss, para seleccionar y generar métricas tanto del proceso como de los resultados de un proyecto. ‣Define un objetivo, el cual se refina en preguntas y define métricas que intentan dar información para responder a estas preguntas. ‣Conformado por 3 niveles ‣Nivel conceptual (Goals) ‣Nivel operacional (Questions) ‣Nivel cuantitativo (Metrics)
‣Inicialmente se veía al GQM como un modelo de seis pasos a seguir: 1.Establecer las metas 2.Generación de preguntas 3.Especificación de medidas 4.Preparar recolección de datos 5.Recolectar, validar y analizar los datos para la toma de decisiones. 6.Analizar los datos para el logro de los objetivos y el aprendizaje
GQM Intepretación
Objetivo
modelos implícitos
Preguntas
P1
P2
P3
P4
Métricas
Definición
M1
M2
M3
M4
M5
M6
M7
GQM ‣GQM mediante el uso de fases ‣Planificación
Objetivo
‣Definición ‣Recopilación de datos
Logro de objetivo
Pregunta plan de proyecto
Definición
Métrica
Respuesta Medición
Interpretación
‣Interpretación Datos recogidos
Planificación
Recogida de Datos
Ejemplo de GQM
Ejemplo de GQM
GQ(I)M ‣Metodología que identifica y define métricas de software que dan soporte al negocio de la empresa en la mejora de sus procesos y los objetivos de sus proyectos. ‣Comparte similitudes con el GQM, pero introduce el concepto o soporte explícito a los indicadores, mediante una plantilla de indicadores. ‣Define el quien, que, donde, cuando, porque, y como de los indicadores. ‣Colección consistente de métricas.
GQ(I)M (Pasos) Identificar los objetivos del negocio
Identificar los sub-objetivos Identificar las entidades relacionadas con los objetivos
Identificar lo que se quiere conocer
Formalizar los objetivos del negocio
GQ(I)M (Pasos) ‣
Con respecto a los indicadores:
6. Identificar preguntas cuantificables 7. Identificar los elementos de datos 8. Definir métricas
‣.Con respecto a la
creación del plan de acción
9. Identificar las acciones a implementar 10.Preparar un plan de acción
PSM
‣ Practical Software Measurement. ‣ Basado en experiencias obtenidas por las organizaciones para saber cual es la mejor
manera de implementar un programa de medición de software con garantías de éxito.
‣ Proceso PSM ‣ Planificación de la medición ‣ Realización de la medición ‣ Evaluación de la medición ‣ Establecimiento y mantenimiento del compromiso
PSM
Modelos de Métricas de software ‣Modelo ISO 9000 ‣ISO 9000 ‣ISO 9001 ‣ISO 9003 ‣ISO 904 ‣ISO 9000-3 ‣ISO/IEC 9126
Métricas en Software Libre ‣El Software Libre ha tenido un impulso en la búsqueda de la calidad de los sistemas, así como en la creación de herramientas, modelos de negocios, y procesos de desarrollo. ‣Ademas de la ventajas éticas y prácticas que puedan ofrecer las herramientas libres y de código abierto, no existe un consenso en la literatura en relación a como medir la calidad sistémica de este tipo de software. ‣Desventajas de Software Libre ‣En 2006 nace la Software Quality Observatory for Open Source Software (SQO-OSS) ‣Esta desarrollara un conjunto de herramientas de evaluacion de software con el fin de analizar y comparar la calidad del codigo fuente.
QSOS ‣Method for Qualification and Selection of Open Source Software (QSOS) ‣Permite la cuantificacación y selección de software open source. ‣Pasos del QSOS ‣Definición ‣Evaluación ‣Calificación ‣Selección
QSOS - Definición y Evaluación ‣ Definición ‣ Marcos de referencia: ‣ Familia de Software ‣ Tipos de Licencia ‣ Tipos de comunidades ‣ Evaluación Llevar a cabo evaluación del software. Colección de información por parte d las comunidades de código abierto. ‣ Elaboración de tarjeta de identificación del software ‣ Elaboración de la hoja de evaluación ‣ Cobertura funcional ‣ Riesgos (perspectiva usuario) ‣ Riesgos (perspectiva proveedor de servicios)
QSOS - Evaluación ‣Riesgos desde el punto de vista del usuario ‣Durabilidad intrínseca ‣Madurez ‣Adopción ‣Liderazgo de desarrollo ‣Actividad ‣Independencia de desarrollos ‣Solución industrializada ‣Documentación ‣Aseguramiento de la calidad ‣Empaque
QSOS - Calificación y Selección ‣Calificación Definir los filtros que traduzcan las necesidades y restricciones relacionadas con la selección del software. ‣Primer Nivel de filtro ‣Segundo nivel de filtro ‣Funcionalidad requerida ‣Funcionalidad opcional ‣Funcionalidad no requerida ‣Selección Identificar el software que contenga y satisfaga los requerimientos de usuario. ‣Modo estricto
Caso de Estudio ‣ QSOS Versión Producto Una vez aplicadas la métricas de calidad especificas para el tipo de software libre que se está evaluando, se obtienen resultados ‣ Una presentación en forma de gráfico ‣ Una presentación en forma textual, representado cada atributo especifico de cada una de las métricas usadas. ‣ A continuación se hace mención y muestra una herramienta Web, mediante la cual se puede realizar evaluaciones a casos de estudios particulares, ‣ Además permite comparar los resultados obtenidos, con otros estudios ya realizados.
Caso de Estudio
‣Selección de la familia a la que corresponde el software a estudiar
Caso de Estudio ‣Introducción de los valores métricos según el estándar
Caso de Estudio ‣Visualización y/o comparación de los resultados obtenidos
Caso de Estudio
‣Visualización textual
Caso de Estudio
‣Visualización diagramada
Gracias por su atenciรณn, Sesiรณn de preguntas y comentarios.