clase19 gqmymetricas imp
Post on 16-Dec-2015
236 Views
Preview:
DESCRIPTION
TRANSCRIPT
-
Ingeniera de Software II
Primer Cuatrimestre de 2009
Buenos Aires, 8 de Junio de 2009
Clase 19 Mtricas de Software y GQM
1
Ctedra de Ingeniera de Software II FCEN UBA, 2009
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
El problema
La toma de decisiones en proyectos de software requiere de informacin objetiva.
Lo usual:Qu tan grande es el sistema?
Rta: enorme!
Cunto falta para terminar?
Rta: ya casi terminamos
Cul es nuestra productividad?
Rta: muy alta
Debemos cuantificar nuestro conocimiento para mejorar nuestra gestin de productos y procesos
Deming: In god we trust, all others must bring data
De Marco: You cant control what you cant measure
2
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Ms problemas
3
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Fenton: Es el proceso por el cual nmeros o smbolos son asignados a atributos de entidadesdel mundo real de modo de poder describirlos acorde a reglas claramente definidas.
Debo poder identificar los objetos del dominio y especificar su comportamiento
Medicin
El objetivo debe estar previamente establecido.
Debo definir una escala...
Establecer una relacin entre dicha escala y los atributos de los objetos establecidos.
4
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Mediciones (medidas) y Mtricas
Una medicin es una cantidad o proporcin que asigna un valor a una entidad.
Cantidad: En este sprint completamos 5 User Stories
Proporcin: En este sprint la velocidad fue 10% mayor que en el sprint anterior
Una mtrica es una medida cuantitativa sobre si un sistema, componente o proceso posee una determinada caracterstica (IEEE)
Ejemplo: Cantidad de defectos encontrados por hora de revisin de cdigo (mtrica de eficiencia de una actividad de calidad)
5
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Tipos de Mtricas
Hay muchas formas de clasificar mtricas:
Segn el objeto que miden, pueden ser:De producto: resultados explcitos de actividades de
desarrollo. Se refieren a entregables y productos.
De procesos: se refieren a las actividades del desarrollo
De recursos: los inputs a las actividades
Y a su vez pueden ser:Directas (atributos internos como LOC) vs. Indirectas
(externos como confiabilidad)
Bsicas vs derivadas (combinan ms de una medicin)
6
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Otra clasificacin de mtricas
De Informacin (Informational): nos dicen lo que pasa
De Diagnstico: Identifican reas de mejora
Motivacionales: influencian el comportamiento
Una mtrica puede pertenecer a varias categoras
7
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Para qu sirven las Mtricas en Software?
Entender y Modelar Procesos de Ingeniera de Software y
Productos
Asistencia en la Administracin de Proyectos de Software.
Estimar mejor, tomar mejores decisiones en general
Guiar mejoras en Procesos de Ingeniera de Software
Ayuda a las actividades de verificacin
8
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Riesgos de las mtricas
Cuidado: las mtricas pueden producir efectos secundarios no deseados. Por ejemplo, premiar por bugencontrado o corregido.
Hawthorne Effect:Trmino acuado en 1955 referido a un estudio
realizado en la fbrica Hawthorne Works entre 1924 y 1932, liderado inicialmente por Elton Mayo
El objetivo inicial era medir el efectos de cambios en la iluminacin en una lnea de produccin de esta fbrica de Western Electric
Tanto el aumento como la disminucin de luz mejoraron la productividad, que decay notablemente cuando el estudio termin
En muchos casos, tomar mediciones afectar los procesos a los que se aplique
9
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Mtricas y stakeholders
Cada stakeholder necesita: Las mtricas que lo ayuden a tomar mejores
decisiones, y no ms
Informacin en un nivel de detalle que pueda usar
Informacin con el alcance que pueda abarcar (mdulo, proyecto, rea, toda la empresa)
Informacin en el perodo de tiempo que es de inters
10
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Ejemplo: evidencia de la zona imposible
11
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Otros ejemplos de mtricas
Distribucin del
Esfuerzo (horas)
SEL - NASA
200 aos-staff sobre
25 proyectos
Especfico del
Dominio
Se puede utilizar
como estimador
durante la
Preparacin
12
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Mtricas Ejemplo 2
Distribucin de
Defectos (Tipo de
defecto)
SEL - NASA
10000 defectos sobre 5
aos de operacin
Especfico del Dominio
Se conserva a lo largo
de los proyectos
13
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Mtricas Ejemplo 3
Distribucin de
Defectos (fase de
introduccin)
SEL - NASA
10000 defectos sobre 5
aos de operacin
Especfico del Dominio
Se conserva a lo largo
de los proyectos
14
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Mtricas Ejemplo 4
Actividad de Cambio (#
SLOCs)
SEL - NASA
Basado en 20 proyectos bajo
ciclo de vida Waterfall
Establecer una base para la
actividad de cambio en SCM
15
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Ejemplo como ayuda a Administracin de Proyectos
16
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Algunos Atributos y Mtricas - Producto
17
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Algunos Atributos y Mtricas - Proyecto
18
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Algunos Atributos y Mtricas - Proceso
19
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Ejemplo de Mtricas tcnicas Cont.
20
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Todo proceso de ingeniera requiere retroalimentacin y
evaluacin.
La construccin de software es una actividad de
Ingeniera y como tal debe poseer disciplinas de
medicin.
La medicin debe poseer foco basado en modelos y
objetivos (goals).
Debemos entonces establecer objetivos medibles y
dirigidos por el modelo apropiado.
GQM
21
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Existe una variedad de perspectivas que pueden definir un
objetivo: El cliente, la corporacin e incluso el proyecto
Ejemplos
Objetivo del cliente: Satisfaccin del usuario.
Objetivo del Proyecto: Entrega en trmino.
Objetivo de la Corporacin: Continua mejora del
proceso de desarrollo. (CMMI Nivel x)
GQM - Objetivos
22
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Definir objetivos
corporativos y de proyecto
Rastrear qu datos
hablan de ese objetivo
Proveer un marco de trabajo
para interpretar los datos y entender
el enfoque sobre los objetivos
El Paradigma de GQM
23
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Goal 1
Question 1 Question 2
Question 3
M1M2 M3
GQM - Proceso
24
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
GQM Ejemplo
Objetivo: mejorar el cumplimiento de las fechas de comprometidas de fin de proyecto
Pregunta: Cul es la exactitud de las estimaciones del calendario de nuestros proyectos?
Mtrica: exactitud en la estimacin del Calendario
EEC = Duracin real del proyecto / duracin estimada del proyecto
25
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Mtricas Agiles
El concepto de GQM se puede aplicar a la identificacin de mtricas para proyectos giles:
Nuestra prioridad ms alta es satisfacer al cliente a travs de la entrega temprana y continua de software que le agregue valor
El software funcionando es la medicin primaria de progreso
Mtrica: RTF (Running Tested Features), una medicin directa de los resultados entregados
Qu me dice?
Qu diagnstico puedo hacer?
26
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Earned Business Value
Mide el Business Value de las stories o funcionalidades ya entregadas y aceptadas
Puede medirse en valores absolutos o relativos a las otras funcionalidades
Conviene usarla cuando se tiene una idea del valor total del backlog (el alcance es conocido y estimable)
27
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Velocidad
Una observacin emprica de la capacidad de un equipo para completar trabajo en una iteracin
Basada en estimaciones del equipo (no de otro)
Comparable en iteraciones de un mismo equipo en un mismo proyecto (no de distintos equipos o en distintos proyectos)
28
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Burndowns (Story Points, Horas, Release)
29
0
100
200
300
400
500
600
700
04/06/2007
06/06/2007
08/06/2007
10/06/2007
12/06/2007
14/06/2007
16/06/2007
18/06/2007
20/06/2007
22/06/2007
24/06/2007
26/06/2007
28/06/2007
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Mtricas y CMMI
30
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Ejemplos de un plan de mtricas real
DesvosEn horas
En das
Organizacional
QA y Peer ReviewsPorcentaje de no conformidades de SQA
Tiempo de vida de no conformidades
Eficiencia de las Revisiones por Pares
TcnicasDas de integracin fallida
Retrabajo
Densidad de defectos
Distribucin de bugs por severidad
31
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Ejemplos de un plan de mtricas real (cont.)
OrganizacionalesUso de la Metodologa (adherencia)
Esfuerzo dedicado a mejora de procesos
AgilesPorcentaje de sprints abortados
Porcentaje de Stories aprobadas
Desvo gil
32
-
Ctedra de Ingeniera de Software II FCEN UBA, 2009
Cundo fallan los esfuerzos de medicin?
Se pretende medir demasiados indicadores de entrada
Se miden indicadores incorrectos o irrelevantes
Se utilizan los resultados de las mediciones para premio o castigo
Se pretenden resultados de corto plazo
No se hace homogneo el esfuerzo de medicin
No se usa el resultado de las mediciones
No se sostiene el esfuerzo de medicin
33
top related