Vous êtes sur la page 1sur 44

Ingeniera de Software

Mtricas de proceso y proyecto


Agenda
Mtricas en los dominios del proceso y
proyecto
Mtricas del software
Mtricas para la calidad de software
Integracin de las mtricas dentro del
proceso de software
Mtricas para organizaciones pequeas
Establecimiento de un programa de
mtricas de software
Introduccin
La medicin
se aplica al proceso de software con la
finalidad de mejorarlo de manera continua.





se utiliza a lo largo de un proyecto de
software como apoyo en la estimacin, el
control de calidad, a productividad y el control
del proyecto.
Mtricas de proceso
Mtricas del proceso

La eficacia de un proceso se mide por
resultados


errores descubiertos antes de liberar el software,
defectos que se detectan los usuarios finales,
esfuerzo humano gastado,
tiempo de planificacin, etc.
Mtricas del proyecto
Permite:

Valore el estado de un proyecto en curso.
Rastree los riesgos potenciales
Descubra las reas problema antes que se
vuelvan criticas.
Ajusta el flujo de trabajo o las tareas
Evala la habilidad del equipo del proyecto para
controlar la calidad de los productos.
Mtricas del proyecto
Las mtricas del proyecto son tcticas.

Se utilizan para adaptar el flujo de trabajo del
proyecto y las actividades tcnicas.

La primera aplicacin ocurre en la estimacin:
esfuerzo y tiempo.
Mtricas del proyecto
Mtricas del proyecto
Mientras comienza el trabajo tcnico, se miden
los ndices de produccin, horas de revisin,
puntos de funcin y lneas de fuente
entregadas.

La finalidad de las mtricas de proyecto es
doble:
Minimizar el tiempo de desarrollo.
Valorar la calidad del producto sobre una base
actual.
Mtricas del proyecto
Conforme la calidad mejora los defectos
se minimizan


Esto conduce a una reduccin en el costo
global del proyecto.
Medicin del software
La medicin del software se clasifica en dos
categoras:

Medidas directas: del software (costo y esfuerzo
aplicados) y del producto (lneas de cdigo [LDC],
rapidez de ejecucin, defectos reportados)

Medidas indirectas: de producto (funcionalidad,
calidad, complejidad, eficiencia, confiabilidad,
facilidad de mantenimiento)
Tamao permite:
Estimar esfuerzo /duracin
Medir calidad (defectos / unidad de construccin)
Medir productividad (tamao / unidad de esfuerzo)

Ejemplos:
Casa: Metros Cuadrados de Construccin
Carretera: Kilmetros/Kilmetros Cuadrados
Software: ?
LOCs
Puntos de Funcin
Mtricas orientadas al tamao
Lneas de Cdigo
problemas:
Variabilidad Personal:
En Tamao (mismo problema, distintas personas
distintos LOCs)
En Productividad
En qu lenguaje?
Con o sin comentarios?
Construidas o libradas al uso?
Mtricas orientadas al tamao
Preceden de la normalizacin de las medidas
de calidad o productividad




Requiere elegir miles de lneas de cdigo
(KLDC) como valor de normalizacin.
Proyecto LDC Esfuerzo $(000) Pag. Doc Errores Defectos Personal
Alfa 12100 24 168 365 134 29 3
Beta 27200 62 440 1224 321 86 5
gamma 20200 43 314 1050 256 64 6
... ... ... ... ... ... ... ...
Lneas de Cdigo
Permite evaluar productividad en programacin:
Si la potencia del lenguaje aumenta, aumenta la productividad
= producto / unidad de tiempo
Proyecto A: 80.000 LOC en C
Anlisis Reqs./Dis. Sist.: 2 meses-persona
Dis.Det./Cod./PU/P.Int.: 4 meses-persona
Prueba Sistema: 2 meses-persona
Esfuerzo: 8 meses-pers. Productividad: 80.000/8= 10.000
Proyecto A: 42.000 LOC en C++
Anlisis Reqs/.Dis. Sist.: 2 meses-persona
Dis.Det./Cod./PU/P.Int.: 2 meses-persona
Prueba Sistema: 2 meses-persona
Esfuerzo: 6 meses-pers. Productividad: 42.000/6= 7.000
Mtricas para el modelo de
requerimientos

Examina el modelo de requerimientos con la
intencin de predecir el tamao del sistema
resultante
Mtricas orientadas a la funcin
Utiliza el punto de funcin (PF) como valor de
normalizacin.

El calculo del punto de funcin se basa en
caractersticas del dominio de informacin y
la complejidad del software.
Mtricas orientadas a la funcin
Los puntos de funcin se calculan determinando
5 caractersticas de dominios de informacin.

Numero de entradas externas (EE).
Numero de salidas externas (SE)
Numero de consultas externas (CE)
Numero de archivos lgicos internos (ALI)
Numero de archivos interfaces externas (AIE)
Mtricas orientadas a la funcin
Factor de ponderacin
Parmetro de medicin Cuenta Simple Medio Completo
Num. Entradas externas x 3 4 6 =
Num. Salidas externas x 4 5 7 =
Num. Consultas externas x 3 4 6 =
Num. Archivos internos x 7 10 15 =
Num. Interfaces externas x 5 7 10 =
Cuenta = Total
Mtricas orientadas a la funcin
Una vez recopilado los datos anteriores, a la
cuenta se asocia un valor de complejidad.
Para calcular puntos de funcin (PF), se utiliza
la relacin siguiente:

PF = Cuenta Total x [0,65 + 0,01 x F
i
]

Donde F
i
(i=1 a 14) son valores de ajuste de
complejidad
Mtricas orientadas a la funcin
Mtricas orientadas a la funcin
Valores de ajuste de complejidad
Fi Preguntas Valor
C1 El sistema requiere respaldo y recuperacin confiables?
C2 Se requiere de comunicacin de datos?
C3 Existen funciones de procesamiento distribuido?
C4 Es crtico el rendimiento?
C5 Se ejecutar el sistema en un entorno operativo existente y
fuertemente utilizado?
C6 Requiere el sistema entrada de datos interactiva?
C7 Requiere la entrada de datos interactiva que las
transacciones de entrada se lleven a cabo sobre mltiples
pantallas u operaciones?
C8 Se actualizan los archivos maestros de forma interactiva?
C9 Son complejas las entradas, salidas, archivos o las
peticiones?
Mtricas orientadas a la funcin
Valor
C10 Es complejo el procesamiento interno?
C11 Se ha diseado el cdigo para ser reutilizable?
C12 Estn incluidas en el diseo la conversin y la instalacin?
C13 Se ha diseado el sistema para soportar mltiples
instalaciones en diferentes organizaciones?
C14 Se ha diseado la aplicacin para facilitar los cambios y para
ser fcilmente utilizada por el usuario?
Fi
4
5
3
2

3
46
PF= 50*[0,65+0,01*46] = 56
Mtricas para la calidad de la
especificacin
Valora la calidad del modelo de requerimientos y la
correspondiente especificacin de requerimientos:
especificidad (falta de ambigedad),
completitud,
correccin,
comprensibilidad,
verificabilidad,
consistencia interna y externa,
factibilidad,
concisin,
rastreabilidad,
modificabilidad,
precisin y
reusabilidad.
Mtricas para la calidad de la
especificacin
Existen n
r
requerimientos en una especificacin,
tales que:
n
r
= n
f
+ n
nf

Para determinar la especificidad (falta de
ambigedad), la mtrica se basa en la consistencia
de la interpretacin de los revisores de cada
requisito:
Q
1
=n
ui
/ n
r
n
ui
= nmero de requerimientos que todos los
revisores tienen interpretaciones idnticas
Mtricas para el modelo de
diseo

Usados como indicadores para guiar la forma en
que evoluciona el diseo
Mtricas del diseo
arquitectnico
ndice de calidad de la estructura de diseo
(ICED), vara de 0 a 1 (IEEE 982,1-1988)
S
1
= numero total de mdulos definidos en la arquitectura del programa
S
2
= numero de mdulos cuya funcin correcta depende de la fuente de
entrada de datos o que produce los datos que se van a utilizar en alguna otra
parte
S
3
= numero de mdulos cuya funcin correcta depende del procesamiento
previo
S
4
= numero de tems de base de datos (incluidos objetos de datos y todos los
atributos que definen objetos)
S
5
= numero total de tems de base de datos nicos
S
6
= numero de segmentos de base de datos (diferentes registros u objetos
individuales)
S
7
= numero de mdulos con una sola entrada y salida (el procesamiento de
excepcin no se considera como una salida mltiple)
Mtricas del diseo
arquitectnico
Estructura del programa:
D
1
= 1 (Objetos) D
1
=0 (otro)
Independencia de mdulo: D
2
= 1- (S
2
/ S
1
)
Mdulos no dependientes del procesamiento previo:
D
3
= 1- (S
3
/ S
1
)
Tamao de base de datos: D
4
= 1- (S
5
/ S
4
)
Compartimentalizacin de base de datos:
D
5
= 1- (S
6
/ S
4
)
Entrada/salida de mdulo caracterstico:
D
2
= 1- (S
7
/ S
1
)

Mtricas del diseo
arquitectnico

ICED = w
i
D
i


donde i = 1 a 6, w
i
es el peso relativo de la
importancia de cada uno de los valores
intermedios y w
i
= 1 (si todos los D
i
pesan igual,
entonces w
i
= 0.167).
Mtricas orientadas a objetos
Las mtricas de software convencional (LDC o
PF) no proporcionan suficiente granularidad
para la planificacin y los ajustes de esfuerzo
que se requieren conforme se itera a lo largo de
un proceso evolutivo o incremental.
Mtricas orientadas a objetos
Lorenz y Kidd sugiere el siguiente conjunto de
mtricas para proyectos OO.
Numero de guiones de escenario: anlogo a
los casos de uso.
Numero de clases clave: son los componentes
independientes.
Numero de clases de apoyo: por ejemplo los
accesos a las BD.
Numero de subsistemas: es un agregado de
clases.
Mtricas de proyectos de
ingeniera web.
Numero de paginas web estticas: es de una
complejidad baja y requieren menos esfuerzo.
Numero de paginas web dinmicas: es de
mayor complejidad y esfuerzo.
Numero de vnculos internos de pagina: son
vnculos que ofrecen hipervnculo hacia otra
pagina.
Numero de objetos persistentes: por ejemplo
una base de datos.
Numero de funciones ejecutables: por ejemplo
un applet.
Mtricas de proyectos de
ingeniera web.
Por ejemplo, es posible definir una mtrica que
refleje el grado de personalizacin de usuario
final que se requiere para la webApp y
correlacionarla con el esfuerzo empleado en el
proyecto de Iweb . Para lograr esto se define:
N
sp
= numero de paginas web estticas.
N
dp
= numero de paginas web dinmicas.
Entonces:
ndice de personalizacin: C= N
dp
/ (N
dp
+N
sp
)

Mtricas para la calidad de
software
La meta primordial de la ingeniera de
software es producir un sistema,
aplicacin o producto de alta calidad
dentro de un marco temporal que
satisfaga una necesidad del mercado.

Medicin de la calidad
Correccin: es el grado en que el software
desempea la funcin para la que fue creado.
Facilidad de mantenimiento: es la sencillez
con la que un programa puede corregirse si se
encuentra un error.
Integridad: Mide la habilidad de un sistema
para resistir ataques.
Facilidad de uso: Cuantifica la sencillez de la
aplicacin al utilizarla.

Eficacia en la eliminacin de
defectos.
Una mtrica de calidad que ofrece beneficios
tanto en el mbito del proyecto como del
proceso es la eficacia en la eliminacin de
defectos (EED)
EED = E/(E+D)
donde E es el numero de errores encontrados
antes de entregar el software al usuario final.
y D es el numero de defectos encontrados
despus de la entrega.

Integracin de las mtricas
dentro del proceso de software
La mayora de los desarrolladores de software
todava no miden y, por desgracia, muchos
tienen poco deseo de comenzar.
Argumentos para las mtricas del
software:
Por qu es importante medir el proceso de ingeniera
de software y el producto que elabora?
Si no se mide, no existe una forma real de
determinar si est mejorando. Y si no se mejora, se
esta perdido.
Recopilacin, calculo y evaluacin
de mtricas
Mtricas para organizaciones
pequeas
La gran mayora de las organizaciones de
desarrollo de sw tiene menos de 20 empleados.
Puede seleccionar el siguiente conjunto de
medidas que se recopilan con facilidad:
Tiempo trascurrido desde que se hizo una solicitud hasta que la
evaluacin esta completa.
Esfuerzo (persona-horas) para realizar la evaluacin.
Tiempo desde que se completa la evaluacin hasta la
asignacin del pedido de cambio
Esfuerzo requerido para hacer el cambio.
Tiempo requerido para hacer el cambio.
Errores descubiertos durante el trabajo.
Defectos descubiertos despus de la liberacin.
Establecimiento de un programa
de mtricas de software
El SEI ha elaborado una guia detallada:
Identificar los objetivos de la empresa
Identificar lo que se quiere conocer o aprender
Identificar los subobjetivos
Identificar las entidades y atributos
Formalizar los objetivos de la medicin
Identificar preguntas cuantificables y los identificadores
relacionados.
Identificar los elementos de datos que se recopilaran
Definir las medidas que se emplearan
Identificar las acciones que se tomaran para implementar las
medidas
Preparar un plan para implementar las medidas.
Actividades
22.1
22.3
22.5
22.10
22.13

Vous aimerez peut-être aussi