transparencia - métricas en la calidad de software
Post on 24-Jan-2015
4.707 Views
Preview:
DESCRIPTION
TRANSCRIPT
Métricas
01
01
Introducción
• Las métricas son un buen medio para entender, monitorizar, controlar, predecir y probar el desarrollo software y los proyectos de mantenimiento.
• Se aplica las métricas para valorar la calidad de los productos de ingeniería o los sistemas que se construyen.
• Se aplican a todo el ciclo de vida permitiendo descubrir y corregir problemas potenciales.
02
02
Introducción
Medir, ¿para qué? Controlar Conocer Comunicar
• El progreso• Los costes• Lo que se hace
bien• Lo que se hace
mal
• Dónde se necesita inversión
• Dónde se puede ahorrar• Desempeño• Etc.
03
03
Introducción
Existen varias razones para medir un producto:
•Para indicar la calidad del producto.•Para evaluar la productividad de la gente que desarrolla el producto.•Par evaluar los beneficios en términos de productividad y de calidad, derivados del uso de nuevos métodos y herramientas de la ingeniería de software.•Para establecer una línea de base para la estimación•Para ayudar a justificar el uso de nuevas herramientas o de formación adicional.
04
04
Definiciones
Calidad Realizada
Calidad Programada
Calidad Necesaria
05
05
Definiciones
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.
06
06
Características
• Exactas • Precisas• Consistentes• Comparables
07
07
Ventajas
•Determinar la calidad del producto.
•Evaluar la productividad de los desarrolladores.
•Conocimiento cuantitativo de las características del proceso y del producto.
•Se podrán realizar comparaciones con otros proyectos.
•Se podrá mejorar el producto ya que las métricas sirven para detectar defectos.
08
08
Utilidades
Las métricas se utilizan para evaluar y controlar el proceso de desarrollo del software, de forma que permitan:
•Indicar la calidad del producto. •Evaluar la productividad de los desarrolladores. •Evaluar los beneficios (en cuanto a calidad y productividad). •Establecer una línea base para la estimación. •Justificar el uso de nuevas herramientas o de formación adicional.
09
09
Clasificación.
de complejidadMétricas que definen la medición de la complejidad: volumen, tamaño,
anidaciones, y configuración.
de calidadMétricas que definen la calidad del software: exactitud, estructuración o
modularidad, pruebas, mantenimiento.
de competenciaMétricas que intentan valorar o medir las actividades de productividad de los programadores con respecto a su certeza, rapidez, eficiencia y competencia
de desempeñoMétricas que miden la conducta de módulos y sistemas de un software, bajo la
supervisión del SO o hardware.
estilizadasMétricas de experimentación y de preferencia: estilo de código, convenciones,
limitaciones, etc.
10
10
Métricas
Proceso de Ingeniería de
Software
Proceso de recopilación de métricas de Software
Proyecto del Software
Producto del Software
Recopilación de Datos
Cálculo de Métricas
Evaluación de Métricas
Medidas
Métricas
Indicadores
Proceso de recopilación de métricas de Software
11
11
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.
12
12
Métricas – Medición del Software
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.
13
13
Métricas del Software
Métricas Orientadas al
tamaño
Métricas Orientadas a la
función
Medidas directas del resultadoy del proceso
Medidas indirectas del software y del proceso
14
14
Métricas – Orientadas al Tamaño
Esfuerzo humano
(persona - mes)
Coste ($)
Páginas de documentació
n
N° de errores
N° de defectos
LDC
Productividad = KLDC / persona-mesCalidad = N° de errores (defectos) / KLDCCoste medio = $ / KLDCDocumentación = KLDC / persona-mes
15
15
Métricas - Dominio
16
16
Métricas - Dominio
17
17
Métricas - Errores
ERRORES CLASICOS EN UN PROYECTO DE SOFTWARE:
•Mal análisis en los requerimientos.•Una mala planeación.•No tener una negociación (documento, contrato) con el cliente.•No hacer un análisis costo beneficio.•Desconocer el ambiente de trabajo de los usuarios.•Desconocer los usuarios que trabajan con el sistema.•Mala elección de recursos (hardware, software, personas).
18
18
Métricas - Recomendaciones
Comenzar con un sistema pequeño Mostrar los datos de forma que aporten valor al negocio
y a su gestiónХ No perder de vista los objetivos y la estrategia del
cliente (alineamiento continuo)Х No comparar indicadores cualitativos con indicadores
cuantitativos
19
19|
Métricas – Indicadores Equipo Banco de Chile
Esfuerzo HH Planificadas (cubicadas) vs HH Cosumidas % Planificado vs % Real (Desviaciones) Margen = Utilidad – Costo (Comercial)
Calidad Ticket de Área QA (IMIT): Tiempos de Respuesta Clear Quest (Banco) : Tiempos de Respuesta Retornos desde Producción: Tiempos de Respuesta
Complejidad Líneas de código (automatizado con Sonar)
Productividad = KLDC / persona-mesCalidad = N° de errores (defectos) / KLDCCoste medio = $ / KLDCDocumentación = KLDC / persona-mes
top related