Beruflich Dokumente
Kultur Dokumente
RESUMEN
Las mtricas dentro del proceso de gestin de un proyecto son aquellas que nos ayudan a comprender el
proceso tcnico (mediante indicadores) que se utiliza para desarrollar un producto, se utiliza durante todo
el proceso del proyecto de manera continua y as mejorar la calidad del producto. Las mtricas del
proceso se recopilan en el curso de todos los proyectos y durante largos periodos que conduzcan a la
mejora de los procesos de software de largo plazo.
PALABRAS CLAVE
Mtricas, proceso, proyecto, indicadores, calidad, producto
1.
INTRODUCCIN
Las mtricas son medidas cuantitativas que permiten obtener una visin de la eficacia del proceso de
software y los proyectos que se llevan a cabo utilizando ese proceso como marco de trabajo
La gestin de un proyecto de software es el primer nivel del proceso de ingeniera de software, este
permite cubrir todo el proceso de desarrollo. Dentro de esta gestin se define el mbito de trabajo a
realizar, los riesgos que puede suscitarse, las actividades, los hitos que se reconocen tanto al inicio como
durante el desarrollo, el esfuerzo tiempo y costos del proyecto.
Quin lo hace?: los ingenieros de software: son los que recopilan la informacin, los gestores de
software quienes analizan y evalan la informacin recopilada.
Porqu es importante?: las mtricas permiten destacar las tendencias y hacer mejores estimaciones.
Cules son los pasos?:
Definir un conjunto limitado de medidas.
Las medidas se normalizan usando mtricas.
Se analizan los resultados y se comparan con promedios anteriores.
Cul es el producto obtenido?: obtener un conjunto de mtricas del software.
2.
Las mtricas del proceso permiten obtener un conjunto de indicadores de proceso que conduzcan a la
mejora de los procesos de software a largo plazo, las cuales se usan con fines estratgicos.
Las mtricas del proyecto permiten valorar el estado de un proyecto en curso, as como tambin rastrear
los riesgos potenciales y descubrir las areas problema antes que se vuelvan criticas, tambin permite
ajustar el flujo de trabajo o las tareas y evaluar la habilidad del equipo del proyecto. Las mtricas del
proyecto se usan con fines tcticos.
Fig.1. Determinantes para la calidad del software y la eficacia organizacional. [PAU 941]
Entorno de Desarrollo
Condiciones de Riesgo
Caractersticas del cliente
Las mtricas del proceso mejoran la calidad de una operacin o un proceso mediante la medicin de sus
atributos y descubrir errores antes de liberar el software desarrollado. En el proceso de mejoramiento de
procesos se detectan y reportan defectos emitidos por los usuarios finales
Al desarrollar un conjunto de mtricas para mejorar los procesos se desarrollan un conjunto de mtricas
clasificadas como privadas y pblicas.
Mtricas privadas: denominadas como defectos por individuos por componente durante el
desarrollo del proyecto.
Mtricas pblicas: denominadas como ndices a nivel de proyecto, esfuerzo, planificacin, etc.
Las mtricas hacia la mejora de los procesos ofrecen indicadores que conducen a estrategias aun ms
especficas.
[PAU 94] factores controlables en la mejora de la calidad del software y el desempeo organizacional.
Para que las mtricas no creen problemas se debe aplicar sentido comn y sensibilidad para interpretarlas
y as ofrecer retroalimentacin a quienes lo recopilan teniendo en cuenta que no se deben utilizar para
realizar evaluaciones o amenazar a los individuos que tambin forman parte del proyecto.
As tambin establecer metas claras y mtricas que se utilizaran para conseguirlas y no considerar
negativos los datos que identifiquen areas problemas y no obsesionarse solo con una mtrica.
Las mtricas del proyecto tienen doble finalidad:
Minimizar el tiempo de desarrollo: se las aplica por primera vez durante la estimacin.
Valorar la calidad del producto
Se debe medir el software para indicar la calidad del producto, evaluar la productividad de la gente que
desarrolla el proyecto, evaluar los beneficios (en trminos de productividad y de calidad) derivados del
uso de nuevos mtodos y herramientas de ingeniera del software, establecer una lnea base para la
estimacin, ayudar a justificar el uso de nuevas herramientas o de formacin adicional.
En la medicin del software se han definidos dos tipos de medidas:
Medidas Directas: como el coste y el esfuerzo aplicado.
Medidas Indirectas: definidas como la funcionalidad, calidad, complejidad, eficiencia, fiabilidad,
facilidad de mantenimiento.
Dentro de las mtricas ms importantes del desarrollo de un proyecto de software se han considerado de
alta importancia las siguientes, tales como:
3.1 Las mtricas de productividad se centran en el rendimiento del proceso de la ingeniera de
software.
3.2 Las mtricas de calidad proporcionan una indicacin de como se ajusta el software a los
requisitos implcitos y explcitos del cliente.
3.3 Las mtricas orientadas al tamao se utilizan para obtener medidas directas del resultado y
de la ingeniera del software.
3.4 Las mtricas orientadas a la funcin Son medidas indirectas del software y del proceso por
el cual se desarrolla. En lugar de calcularlas las LDC, las mtricas orientadas a la funcin se
2
centran en la funcionalidad o utilidad del programa, fueron propuestas por Albercht quien
sugiri un acercamiento a la medida de la productividad denominado mtodo del punto de
funcin.
3.5 Las mtricas orientadas a la persona proporcionan informacin sobre la forma en que la
gente desarrolla software de computadora y sobre el punto de vista humano de la efectividad
de las herramientas y mtodos.
3.6 Las mtricas tcnicas se centran en las caractersticas del software, complejidad lgica
grado de modularidad.
4.
Son medidas directas del software y del proceso por el cual se desarrolla. Se obtiene considerando las
medidas de productividad y normalizndolas por el tamao del cdigo, es decir las lneas de cdigo LDC.
Se lista cada proyecto de desarrollo de software de los ltimos aos y los correspondientes datos
orientados al tamao de cada uno, se basan en a utilizacin de registros sencillos para las medidas ms
relevantes al desarrollo de nuestro proyecto.
Tabla 1. Actividades de Ingeniera de software IS (anlisis, diseo, codificacin y prueba)3
Proyecto
LDC
Esfuerzo*
Coste* $
P1
P2
P3
12100
27200
20200
24
62
43
120
314
224
Paginas
doc.
365
1224
1050
Errores
Defectos
Personas
134
321
256
29
86
64
3
5
6
'
(
1.
#
*
,
.)
'(
'
'
'
'
"'
#
#
#)
*
*
*
!
*
+
5
01
= 1
05
= 3
03
= 5
-
,
*
,
Las lneas de cdigo de programa de prueba tan solo se contabilizan se desarrollan con el nivel de calidad
exigido al entregar el producto. Es la
!
%
!
,
*
'
&
" ,
&
!
+
+#
&, !
,
*
*
"
%
&
*
!
&*
.
!
/
#
*
*
"
%*
#
&* "
&*
&*
"!
,
+
#
&,
#
!
&
&
!,
+
#
&
*
2
&
#
&
!
&**!
*
&
&
*
!
,
&4
#*
!
#
#
&
* *
*
&,
Las LDC no estn comnmente aceptadas pero al utilizar estas LDC existen ventajas como desventajas
entre estas tenemos:
Ventajas:
Son fciles de calcular
Existen muchos modelos de estimacin basados en LDC
Existen muchas medidas de LDC
Desventajas:
Dependientes de los lenguajes de programacion
Perjudican a los programas cortos, pero bien diseados
Difcil uso en estimacin debido al nivel de detalle.
5.
Son medidas indirectas del software y del proceso por el cual se desarrolla. Se centran en la funcionalidad
o utilidad del programa. Las mtricas orientadas a la funcin fueron el principio propuestas por Albercht
quien sugiri un acercamiento a la medida de la productividad del desarrollo de un proyecto de software
denominado mtodo del punto de funcin. Los puntos de funcin que obtienen utilizando una funcin
emprica basando en medidas cuantitativas del dominio de informacin del software y valoraciones
subjetivos de la complejidad del software.
5.1 Los PUNTOS DE FUNCIN se calculan rellenando nmeros de entrada del usuario se cuenta cada
entrada de usuario que proporciona al software diferentes datos orientados a la aplicacin. Se obtienen
utilizando una funcin emprica basando en medidas cuantitativas del dominio de informacin del
software y valoraciones subjetivos de la complejidad del software.
Un Punto de Funcin (PF) representa la funcionalidad de un programa que se deriva de las medidas del
software, se calculan rellenando la tabla como se muestra en la siguiente tabla:
5.2 Calculo de mtricas de punto de funcin:
PF = cuenta - total x [0,65+0,01 * ( f cuenta)i]
En la tabla de factor de ponderacin se han considerado 5 caractersticas principales dentro del mbito de
la informacin denominados tambin como factores de escala segn Albrecht, y los clculos aparecen en
la posicin apropiada de la tabla. Los valores del mbito de la informacin estn definidos como:
6
Allan Albrecht, de IBM, en 1979 defini la mtrica del punto funcin como un mtodo utilizado en
ingeniera del software para medir el tamao del software.
El nmero de entradas de usuario deben ser distinguidas de las peticiones, que se contabilizan
por separado.
El nmero de salidas de usuario se cuenta cada salida que proporciona el usuario dentro de la
informacin orientada a la aplicacin.
El nmero de peticiones al usuario una entrada interactiva que resulta de la generacin de algn
tipo de respuesta en forma de salida interactiva.
El nmero de archivos se cuenta cada archivo maestro lgico, o sea una agrupacin lgica de
datos que puede ser una parte en una gran base de datos o un archivo independiente.
El numero de interfaces externas todas las interfaces legibles por la maquina que son utilizadas
para transmitir informacin a otro sistema.
Una vez calculados los datos de la tabla de ponderacin se asocian dichos valores, donde
CUENTA_TOTAL es la suma de todas las entradas.
Los valores 0,65 y 0,01 son valores establecidos por Albrecht obtenidos
!
!
!
Las 14 cuestiones sealadas son las siguientes:
Tabla4. Preguntas establecidas por Albrecht7 para el clculo de los puntos de funcin
Preguntas
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Valor asignado
de acuerdo a la
respuesta (0 - 5)
Allan Albrecht, de IBM, en 1979 defini la mtrica del punto funcin como un mtodo utilizado en
ingeniera del software para medir el tamao del software.
(f cuenta)i : la suma total de los valores que se han asignado a cada de una de las preguntas
establecidas por Albrecht dentro de las mtricas orientadas a la funcin para el desarrollo de un proyecto
especficamente en la programacion.
Una vez obtenidos los valores de cada uno de las variables procedemos a encontrar el valor del punto de
funcin dentro del desarrollo de un proyecto.
En las mtricas orientadas a la funcin una vez calculado los puntos de funcin se usan de forma
analgica a las LDC como medida de la productividad, calidad y otros productos del software.
Ejercicio: para poder calcular las expresiones mencionadas lo realizaremos por medio de un
ejemplo:
calidad = errores / pf
calidad = 29 / 12100
calidad = 0.002 errores / pf
El promedio de la calidad es el resultado de tomar los valores errores sobre las KLDC (lneas de
cdigo), el cual nos da un resultado de 0.002 errores de cdigo por cada 12100 lneas de cdigo
producidas, especificando que el proyecto se encuentra en etapa de pruebas del usuario final.
coste = dlares / pf
coste = 168500 / 12100
coste = 13.92 dlares / pf
El promedio del costo total del proyecto es el resultado de tomar los valores del coste sobre KLDC
(lneas de cdigo) el cual nos da un resultado de 13.92 dlares por cada lnea de cdigo.
documentacin=pgs. de documentacin./pf
documentacin = 378 / 12100
documentacin = 0.03 pgs. de documentacin / pf
El promedio de la documentacin es el resultado de tomar los valores de las pginas de
documentacin sobre KLDC (lneas de cdigo) el cual nos da un resultado de 0,03 pginas de
documentacin por cada punto de funcin .
6.
Tabla 5. Ejemplo para calcular la integridad de un paquete de base de datos en dos proyectos 8
Proyecto 1
No oculta ficheros
No hace backup
amenaza
Seguridad
Borrado BD
Aplicacin
0,7
Proyecto 2
Oculta ficheros
Hace backup
Amenaza Integridad
0,2
0,8
Si la amenaza (la probabilidad de que un ataque ocurrir) es 0,25 y la seguridad (la posibilidad de
repeler un ataque) es 0,95, la integridad del sistema es 0,99 (muy elevada).
Si por otra parte, la probabilidad de amenaza es 0,50 y la posibilidad de repeler un ataque es solo
0,25, la integridad del sistema es 0,63(inaceptablemente baja).
El establecimiento de una lnea base ayuda a los gestores de proyecto como desarrollar estimaciones de
proyecto significativas, producir sistemas de alta calidad, liberar el producto a tiempo, etc. Una lnea base
permite controlar los cambios sin impedir seriamente los cambios justificados, adems consiste en la
obtencin de datos recopilados en proyectos previos de desarrollo de software.
Para ser eficaz:
En el desarrollo de proyectos de software se han considerado como bsicas las siguientes mtricas para
determinar los factores de calidad
Facilidad de auditoria
Exactitud
Normalizacin de las comunicaciones
Completitud
Concisin
Consistencia
Estandarizacin de los datos
Tolerancia de errores
Eficiencia de la ejecucin
Facilidad de expansin
Generalidad
Independencia del hardware
Instrumentacin
Modularidad
Facilidad de operacin
Seguridad
Auto documentacin
Simplicidad
Independencia del sistema software
Facilidad de traza
Formacin
Una especificacin o producto que se ha revisado formalmente y sobre los que se ha llegado a un
acuerdo, y que de ah en adelante sirve como base para un desarrollo posterior y que puede cambiarse
solamente a travs de procedimientos formales de control de cambios.(IEEE) 610.12/1990
8.
10
Primeramente recopilamos los datos de proyectos previos, as obtenemos las medidas, las cuales
utilizamos para calcular las mtricas. Dichas mtricas deben evaluarse y aplicarse durante la estimacin
del trabajo tcnico, produciendo as un conjunto de indicadores que guan el proceso o proyecto.
8.1 Medidas que se pueden recopilar fcilmente:
Tiempo que transcurre desde que se hace una solicitud hasta que la evaluacin est completa.
Esfuerzo necesario para hacer la evaluacin.
Tiempo que transcurre desde que se completa la evaluacin hasta que se asigna el pedido de
cambio al personal.
Esfuerzo requerido para hacer el cambio.
Tiempo requerido para hacer el cambio
Errores descubiertos mientras se haca el cambio
Defectos descubiertos despus de que el cambio es liberado a los clientes
Una vez recopiladas las medidas de varios cambios solicitados es posible calcular promedios y
porcentajes que permitan mejorar el proceso para reducir los tiempos.
Tambin podremos calcular la EED as:
EED = E cambio/ (E cambio+ D cambio)
E cambio: Errores descubiertos mientras se haca el cambio y D cambio: Defectos descubiertos despus de
que el cambio es liberado a los clientes.
El valor ideal de EED es 1
9.
Sugerencia: centrarse en los resultados, no en las mediciones. Por ejemplo: Reducir el tiempo para
evaluar e implementar los cambios solicitados.
Una organizacin pequea puede seleccionar el siguiente conjunto de medidas:
Tiempo transcurrido desde el momento en que se hizo una solicitud hasta que la evaluacin esta
completa.
Esfuerzo para realizar la evaluacin.
Tiempo transcurrido desde que se completa la evaluacin hasta la asignacin del pedido de
cambio del personal.
Esfuerzo requerido para hacer el cambio.
Tiempo requerido para hacer el cambio.
Errores descubiertos durante el trabajo para hacer el cambio.
Defectos descubiertos despus de que el cambio es liberado a la base de clientes.
10. ESTABLECIMIENTO DE UN PROGRAMA DE MTRICAS DE SOFTWARE
Esta dirigido por metas segn el SEI(SOFTWARE ENGINEERING INSTITUTE)
siguientes pasos:
y define los
11
Al trabajar como equipo, la ingeniera del software y los gestores del negocio pueden confeccionar una
lista de metas priorizadas del negocio:
11. CONCLUSIONES:
El uso de mtricas en la mayora de empresas es ocasional y depende mucho del estado y avance
del proyecto, ya que al experimentar retrasos la actividad de recopilacin de datos para la
formacin de mtricas se suspende, debido principalmente a que la documentacin del proyecto
se posterga o no se realiza.
Mejora las estadsticas del proceso de desarrollo de software.
Si no medimos, no podemos saber si estamos mejorando. Si no mejoramos, estamos perdidos.
Las mtricas del proyecto guan los ajustes necesarios para evitar riesgos, retrasos y mitigar
problemas.
Las mtricas del proyecto permiten evaluar la calidad actual de los productos y modificar el
enfoque tcnico para mejorarla.
En el desarrollo de un proyecto de software los conocimientos adquiridos representan una ruta
potencial en las metas de calidad del producto mientras que las debilidades deben ser
neutralizadas y asociadas a acciones preventivas para evitar su crecimiento.
12. REFERENCIAS:
[1] R. S. Pressman. Ingeniera del software. Un enfoque prctico. 6 Edicin. McGrawHill (1993)
[2] Guide to the Software Engineering Body of Knowledge, 2004 Version, SWEBOK A project of the
IEEE Computer Society Professional Practices Committee, CHAPTER 9 SOFTWARE ENGINEERING
PROCESS.
[3] Revista de Procesos y Mtricas de las tecnologas de la informacinVolumen1 nmero 1, abril 2004.
[4] Proceso de software y Mtricas de proyectos
http://www.fdi.ucm.es/profesor/anavarro/4._Proceso_de_software_y_metricas_de_proyectos.pd
f
[5] Mtricas de Proceso y Proyecto Sistemas de Informacin II 2009 Facultad de Ingeniera
UNJU
http://www.fi.unju.edu.ar/materias/materia/SI2/document/Clase_20-may2009/SIII2009_-_Metricas_de_Proceso_y_Proyecto.pdf?cidReq=SI2
[6] Mtricas, Estimacin y Planificacin en Proyectos de Software
http://www.willydev.net/descargas/willydev_planeasoftware.pdf
[7] Mtricas del Software, Por Alejandro De coss
http://www.gdl-mexcomp.com/Documents/metricas%20de%20software.pdf
[8] Medicin y Mtricas del Software
http://trevinca.ei.uvigo.es/~ebalonso/asignaturas/esx/guiones/esxClase26.pdf
12