Objetivo
n Cómo medir el progreso de un proyecto de software
Introducción
n La existencia de medidas numéricas facilita el conocimiento de un fenómeno
n Las métricas del software ayudan en el proyecto:
n En la estimación, control de calidad, evaluación de productividad y control de proyectos
n En la evaluación de la calidad de los productos y trabajos técnicos
n En la toma de decisiones tácticas según avanza el proyecto
n Las métricas del software permiten mejorar el proceso
n Hay cuatro razones para medir:
n Caracterizar
• Para comprender mejor los procesos, los recursos, los entornos y establecer las líneas base para comparaciones con evaluaciones futuras
n Evaluar
• Para determinar el estado con respecto al diseño
• Para valorar la consecución de objetivos de calidad
• Para evaluar el impacto de la tecnología y las mejoras del proceso
n Predecir
• Para poder planificar
• Para la extrapolación de tendencias
n Mejorar
• La calidad del producto
• El rendimiento del proceso
n Una medida proporciona una indicación cuantitativa de la extensión, cantidad, dimensiones, capacidad o tamaño de algunos atributos de un proceso o producto
n Ejemplo: un programa tiene 10.000 líneas de código (LDC)
n Medición es el acto de determinar una medida
n Ejemplo: Ana será la encargada de medir las LDC de cada módulo del sistema
n Una métrica es una medida cuantitativa del grado en que un sistema, componente o proceso posee un atributo dado n Una métrica relaciona medidas individuales sobre algún
aspecto
n Ejemplo: la productividad de este proyecto fue de 500 (LDC/persona-mes)
n Las medidas no sirven para comparar, necesitamos métricas
n En el país A ganan 1000 ($/pm), y en el país B ganan 1500 ($/pm)
• ¿viven mejor en el país B que en el país A?
n Un bocata cuesta 3$ en el país A, y en el país B cuesta 5$.
• País A: 1000($/pm)/3($/BM) = 333,33 (BM/pm)
• País B: 1500($/pm)/5($BM) = 250 (BM/pm)
n Conclusión: no sabemos donde se vive mejor, pero en el país A una persona durante un mes puede comer un 33% más de bocatas que en el país B
n Es decir,
n La medida captura una característica individual
n La medición permite capturar dicha característica
n La métrica permite relacionar y comparar mediciones
Medidas, métricas e indicadores
n Las métricas son el fundamento de los indicadores
n Un indicador es una métrica o combinación de métricas que proporcionan una visión profunda del proceso del software, del proyecto de software o del producto en sí
n Ejemplo: en el país A, no han aumentado los sueldos en los últimos tres años, pero el índice Bocatas se ha duplicado en ese periodo
n Ejemplo: la productividad media de nuestra empresa es de
250(LDC/pm)
n Un indicador permite al gestor ajustar el producto, el proyecto o el proceso para mejorar
n Ejemplo: en 4 equipos de proyecto software, el de menor productividad no usa una técnica que usan los otros. Se deduce que puede ser recomendable utilizar esa técnica en ese equipo
n Nuestros objetivos son establecer:
n Métricas del proyecto à indicadores del proyecto
n Métricas del proceso à indicadores del proceso
n Los indicadores del proyecto permiten al gestor:
n Evaluar el estado del proyecto en curso
n Seguir la pista de riesgos potenciales
n Detectar áreas problemáticas antes de que se conviertan en críticas
n Ajustar el flujo y las tareas de trabajo
n Evaluar la habilidad del equipo del proyecto en controlar la calidad de los productos de trabajo de la IS
n Los indicadores del proceso permiten:
n Al gestor, evaluar lo que funciona y lo que no
n A la organización, tener una visión profunda de la eficacia de un proceso ya existente
Técnicamente no existe gran diferencia entre las métricas del proyecto y del proceso
n Métricas del proceso à indicadores del proceso à mejora en el proceso
n Cuestiones:
n Si la gestión se basa en el personal, problema y proceso,
¿por qué nos centramos en mejorar el proceso?
n ¿Por qué el proceso es un factor clave y controlable para mejorar la calidad del software y el rendimiento de la organización?
n ¿Cómo medir el proceso?
n Las métricas del proceso se extraen de las métricas del proyecto
n En cualquier caso hay métricas privadas y otras públicas
• Métricas privadas (de uso individual):
• Índices de defectos (individual, por módulo)
• Errores encontrados durante el desarrollo
• Públicas para el equipo:
• Índices de defectos
• Errores encontrados en revisiones técnicas del proyecto
• LDC
• Puntos de función por módulo y función
Métricas del proceso
n Las métricas del proceso pueden ser muy útiles, pero hay que saber interpretarlas
n Normas básicas de interpretación:
n Utilizar el sentido común al interpretar los datos de métricas
n Proporcionar una realimentación regular a particulares y equipos
n Establecer métricas claras y objetivos para alcanzarlas
n No utilizar métricas para amenazar a particulares o equipos
n Si una métrica identifica un área problemática no se debería considerar como negativa
• Considerarlos como un indicador de mejora de proceso
n Hay que interpretar todas las métricas en su conjunto, y no primar una en particular
• No obsesionarse con una sola métrica, excluyendo otras importantes
n La utilización de métricas e indicadores fiables da lugar a una mejora estadística del proceso del software (MEPS)
n Esta mejora se basa en un análisis de fallos que identifica la causa y origen de errores y defectos para varios proyectos de software
n Error: fallo en un producto generado durante el proceso de
IS que es detectado antes de la entrega al cliente
n Defecto: fallo detectado después de la entrega al cliente.
Métricas del proceso y mejora del proceso
n Análisis de fallos:
1. Se categorizan por origen todos los errores y defectos de varios proyectos
2. Se registra el coste de corregir cada error y defecto
3. Los errores y defectos de cada categoría se cuentan y se ordenan de mayor a menor coste
4. Se computa el coste global de errores y defectos de cada categoría
5. Los datos resultantes se analizan para detectar las categorías que producen el coste más alto para la organización
6. Se desarrollan planes para modificar el proceso con el propósito de eliminar (o reducir la frecuencia de apariciones de) la clase de errores y defectos que sean más costosos
n Las métricas del proceso son estratégicas:
n Determinan el curso del proceso de producción de software
n Las métricas del proyecto son tácticas:
n Permiten adaptar el flujo de trabajo del proyecto actual y las actividades técnicas
n La primera aplicación de las métricas del proyecto ocurre durante la estimación
n Se realiza a partir de datos históricos
n A medida que avanza el proyecto, las medidas del esfuerzo y el tiempo se comparan con las de planificación
n El gestor utiliza estos datos para supervisar y controlar el avance
Utilización de las métricas del proyecto:
n Para minimizar la planificación del desarrollo
• Haciendo los ajustes necesarios que eviten retrasos y mitiguen problemas y riesgos potenciales
n Evaluar la calidad de los productos en el momento actual
n Mejor calidad ->
Menos defectos -> Menos trabajo -> Menor coste
Métricas del software
n Como el contexto de uso identifica al tipo de métrica, nos referiremos a las métricas del producto y del proceso como métricas del software
No hay comentarios:
Publicar un comentario