20/11/2006

METRICAS DEL SOFTWARE

INDICE

Conceptos, Modelos, Aspectos de las Métricas Medición y el Modelo de Madurez de Capacidad (CMMI) Ejemplos de métricas Presentación de un caso Gestión de métricas: Una aproximación practica Precauciones y lecciones aprendidas Métricas para la Gestión de Requisitos en ICM

1

20/11/2006

Conceptos
Empezar y mantener un esfuerzo de mejora del proceso software con éxito requiere un compromiso a todos los niveles de la empresa, siendo la mayor dificultad para las empresas que comienzan: la definición de medidas (métricas) y la creación de procedimientos para recoger y analizar estos datos

Conceptos
¿Qué deseo saber?
Los objetivos de las métricas vienen de los objetivos del negocio La ignorancia es una desgracia voluntaria

¿Porqué medir?
Para caracterizar, evaluar, predecir y mejorar

2

20/11/2006

¿Porqué medir?
Caracterizar
Comprender el proceso, producto y entorno actual. Proporcionar una línea base para futuras evaluaciones Determinar el estado, de forma que los proyectos y procesos puedan ser evaluados Evaluar el alcance de los objetivos de calidad Evaluar el impacto de la tecnología sobre los procesos y productos

Evaluar

¿Porqué medir?
Predecir
Comprender la relación entre procesos y productos Establecer objetivos alcanzables de calidad, coste y planificación Identificar causas raíz y oportunidades para mejorar Seguir los cambios en las realizaciones y comparar con la línea base Comunicar razones para mejorar

Mejorar

3

20/11/2006

Necesidades de medida
.

Las necesidades de medida pueden ser diversas, desde medir el rendimiento de los proyectos de una empresa, evaluar las inspecciones de código hasta evaluar las actividades de mejora del proceso software

Necesidades de medida (II)
La medida es una parte esencial para comprender que afecta a la calidad, oportunidad, utilidad y funcionalidad y en la mejora de los procesos y productos software. Para comprender como aplicar las métricas del software , debemos comprender primero qué significan las medidas y porqué las necesitamos. Las medidas nos permiten cuantificar conceptos o atributos en orden a manipularlos y aprender más sobre ellos

4

20/11/2006

Tipos de Métricas
Métricas objetivas (cuantificado y medido) Métricas subjetivas (clases de respuestas)

Métricas Básicas Métricas calculadas

Métricas adicionales

Métricas Globales/Fases
Métricas Globales

Requisitos

Validación

Diseño

Integración

Codificación Métricas de Fase

5

20/11/2006

Medidas existentes no utilizadas
Falta de implicación de la gestión

???

???

Falta de implantación inexistencia de consensos en la aplicación de medidas medidas no validadas o no calibradas

blanco de medidas no bien definidas miedo de evaluación tendencia a recoger demasiados datos inutilidad de medidas no aceptadas

programas de investigación no son un buen modelo para los técnicos

Lecciones Aprendidas (I)
Empezar con pocas medidas y asegurar que las medidas iniciales son prácticas y de bajo coste. Definir los datos rigurosamente de forma que los datos sean útiles para la toma de decisiones. Tratar de automatizar la recogida y la información para tener el menor impacto sobre el desarrollo software. Descriminalizar errores

6

20/11/2006

Lecciones Aprendidas (II)
Asegurar que la medición es parte de algo más amplio. Por ejemplo, un enfoque de la organización hacia la mejora. Enfocar sobre el proceso y la toma de decisión más que recoger medidas y números. Comprender que la adopción requiere esfuerzo. Comprender que el uso efectivo de medidas puede requerir un cambio de actitud o de cultura. Comprender que un programa extenso se construye con tiempo extra Implicar a los apostadores estableciendo expectativas, entrenándoles y logrando su compromiso

Principios de guía
La mayoría de las organizaciones no pueden afrontar el esfuerzo e impacto de arrancar recogiendo grandes cantidades de datos a un tiempo. Gestores e ingenieros necesitan ser entrenados en las técnicas de recogida de datos, análisis e información. Datos que no son analizados y sobre los que no se actúa no tienen valor para la organización.

7

20/11/2006

Evolución de un programa de métricas
Estado maduro

- Medidas son ampliadas a subprocesos. - Aplicación de medidas se vuelve más sofisticada. - Frecuencia y detalle de las medidas incrementa.

Estado inicial

- Número de tipos/elementos de datos incrementa.

La medición es utilizada para muchos propósitos
Línea base del Proceso de Medición • comunicar claramente • usar el proceso consistentemente Gestionar Proyectos - Planificar - Seguir Describir Productos - Calificar - Clasificar Mejorar Procesos - Comprender - Controlar

Datos Agregados - Comparación corporación/industria - Decisiones negocio

8

20/11/2006

Visibilidad • coste

• programacion • calidad • riesgos • recursos • mejora

Alta dirección

Cliente
Seguimiento
• coste • programación • calidad • riesgos

Planificación/Control • coste
• programación • calidad • riesgos • compromiso

Jefe proyecto

Mejora

• calidad • productividad • productos • procesos

Plantilla Proyecto

Programas de medición con éxito enfocan perspectivas de usuario

Medidas diferentes destinos
Metas Criterios Exito

Estrategia para cumplir la meta

Indicadores de éxito
%

Medidas
1 2 3 4 1 2 3 4 Reporting Periods

Indicadores de análisis
100 80 60 40 20 Tasks

Tareas Accomplish Tasks topara cumplir la meta goal
Task 1 Task 2 Task 3 • • Task n

Indicadores de progreso
Jefe proyecto
Actual Planned Reporting Periods

Alta dirección
100 80 60 40 20 Actual

Test Cases Complete

Planned Reporting Periods

Functions

Medidas

Medidas

Medidas

9

20/11/2006

Perspectivas de usuario diferentes
Progreso Software Cliente: La desviación es un resultado debido a algún riesgo desconocido.
1595 2595 3595 4595 1596 2596

Informes Trimestrales Gestor del proyecto: ¿Comprendemos el alcance del trabajo?

actual plan

Gestor Senior (dirección): Son afectados los compromisos de costes globales y/o programación.

Plantilla del proyecto: Están adecuadamente entrenados los profesionales para estimar el tamaño, costes y programación del software?

Cuáles son los costes de no medir
Incapacidad para:
estimar/planificar de forma realista determinar el progreso evaluar la calidad reconocer las oportunidades de mejora reconocer mejoras

Pérdida de posición competitiva

10

20/11/2006

Precauciones y limitaciones
Las medidas no son absolutas, simplemente proporcionan comprensión (conocimiento profundo) del proceso software. Medición no puede identificar, explicar, o predecir todo. La mayoría de los resultados requieren más de una medida para caracterizar y comprender. La medición no tiene valor a menos que se comprenda con la globalidad del proceso software.

Precauciones y Limitaciones
Medición implica varios usuarios en diversos niveles por toda la organización. Medición no deberá ser utilizada para evaluar prestaciones individuales; más bien deberá servir como base para resolución interactiva de aspectos del proceso. Dos programas no son iguales: consecuentemente comparación directa de datos de programas deberá evitarse. Evaluaciones basadas en medición son solo tan buenas como la oportunidad, consistencia y precisión de los datos de entrada.

11

20/11/2006

Beneficios de las métricas
Medición por si misma no mejora el proceso, pero la visibilidad permite profundizar en la planificación, control, gestión y mejora.
Datos históricos ayudan a predecir y planear Datos actuales frente a los planificados ayudan a comunicar el progreso y soportan la toma de decisiones.

Beneficios de las métricas (II)
Análisis de tendencias ayuda a enfocar sobre áreas problema La supervisión de las actividades de mejora del proceso ayuda a identificar lo que funciona y lo que no funciona

12

20/11/2006

Beneficios de las Métricas (III)
Calidad del producto mejorada. Productividad del equipo de desarrollo incrementada. Estimación y planificación del proyecto mejor. Mejor gestión del proyecto. Cultura de calidad de la compañía mejorada. Satisfacción del cliente mejorada. Visibilidad del proceso software incrementada.

Sumario
Organizaciones han reconocido que la medición es un proceso integral para gestionar sus esfuerzos software. La medición por si misma no mejora el proceso, pero la visibilidad permite la toma de decisiones cuantificadas oportunamente. Un programa de medición comprensible debe ser construido con tiempo extra, comenzando con un conjunto de pocas medidas de alto nivel.

13

20/11/2006

Sumario
Medidas deben estar identificadas para soportar los objetivos de la organización. Medidas deben estar bien definidas y unidas al proceso software global. El proceso debe ser consistente, repetible y evolucionando continuamente.

Nota final
Los japoneses no esperan por un modelo perfecto o una métrica perfecta. Ellos solamente intentan algo, lo analizan, lo mejoran e iteran este proceso.

14

Sign up to vote on this title
UsefulNot useful