Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 15

Mtricas de software

Cuando pueda medir lo que est diciendo y expresarlo con nmeros, ya conoce algo sobre ello; cuando no pueda medir, cuando no pueda expresar lo que dice con nmeros, su conocimiento es precario y deficiente; puede ser el comienzo del conocimiento, pero en tus pensamientos apenas ests avanzando hacia el escenario de la ciencia

www.inacap.cl

Medida. Proporciona una indicacin cuantitativa de extensin, cantidad, dimensiones, capacidad y tamao de algunos atributos de un proceso o producto. Pueden ser directas o indirectas. Medidas Directas. Del proceso del software: Costo y Esfuerzo aplicados Del producto: Nmero de lneas de cdigo Velocidad de ejecucin Tamao de memoria Nmero de errores y defectos encontrados Medidas Indirectas. Funcionalidad Calidad Complejidad Eficiencia Fiabilidad Facilidad de Mantenimiento www.inacap.cl

Medicin. Acto de determinar una medida. Mtrica. Es una medida cuantitativa del grado en que un sistema o proceso posee un atributo dado. Por lo general relaciona una o ms medidas, p.e. nmero de errores encontrados por cada mil lneas de cdigo. Indicador. Es una mtrica o combinacin de mtricas que proporcionan una visin del proceso, del proyecto o del software en s, y poder hacer ajustes para que las cosas mejoren. Sirve para: Evaluar el estado del proyecto. Hacer un seguimiento de los riesgos. Detectar las reas problemticas. Ajustar el flujo y las tareas del trabajo para evitar retrasos. Evaluar la habilidad del personal. Evaluar la calidad del producto.

www.inacap.cl

Para qu medir el software? Para indicar la calidad del producto. Para evaluar la productividad de las personas. Para evaluar los beneficios derivados del uso de nuevos mtodos y herramientas. Para establecer una lnea de base para la estimacin. Para justificar el uso de nuevas herramientas y la necesidad de formacin

www.inacap.cl

Mtricas del Software


De Productividad.Rendimiento del proceso de ingeniera de software. De Calidad. Ajuste a los requisitos implcitos y explcitos. Tcnicas. Se centra en las caractersticas del software, no en cmo se obtiene. Orientadas a: El Tamao. Medidas directas del software y el proceso. A la Funcin. Medidas indirectas del software y del proceso. A la Persona. Medida de la efectividad de los mtodos y las herramientas.

www.inacap.cl

Mtricas orientadas al tamao.


Si en una organizacin se realizan registros como en la tabla siguiente se puede obtener alguna informacin interesante. Supongamos que contamos con la siguiente informacin:

Proyecto

KLOC

Esfuerzo (personasmes)

Documentacin (# pginas)

# personas

errores

Costo total (US$)

Proy1

12,1

26

370

29

180

Proy2

27,8

60

1200

86

450

Proy3

20

43

1050

64

320

www.inacap.cl

Medidas Lneas de cdigo (LOC). Esfuerzo en hombre-mes. Costo en pesos o dlares. Nmero de pginas de documentacin. Nmero de errores. Fallas detectadas antes de entregar el software al cliente. Nmero de defectos. Fallas detectadas despus de entregar el software al cliente. Nmero de personas en el proyecto. Mtricas Con los datos contenidos en la tabla anterior se pueden desarrollar un conjunto de mtricas de productividad y calidad orientadas al tamao. Productividad KLOC / Esfuerzo LOC / Esfuerzo Errores / Esfuerzo Calidad Errores/KLOC Defectos / KLOC Coste Costo/KLOC Costo / Pgina de documentacin Tasa Documentacin Pginas de Documentacin / KLOC

www.inacap.cl

Para efectos de la estimacin del esfuerzo de desarrollo como base de la planificacin, las mtricas orientadas al tamao han sido utilizadas en varias propuestas. La mayora de ellas son lo que se llaman modelos de estimacin, que en este caso son funciones de las lneas de cdigo o de las miles de lneas de cdigo que tendr el software a desarrollar. Los principales problemas de utilizar lneas de cdigo como mtrica son la falta de una definicin universal de lnea de cdigo, su dependencia con el lenguaje de desarrollo y la dificultad de estimar en fases tempranas del desarrollo la cantidad de lneas que tendr una aplicacin para efectos de estimacin del esfuerzo.

www.inacap.cl

Ventajas Son fciles de calcular. Muchos modelos de estimacin de software usan LOC o KLOC como datos de entrada. Existen un amplio conjunto de datos y literatura basados en LOC. Desventajas Son dependientes del lenguaje de programacin. Perjudica a los programas cortos pero bien diseados. Su uso en estimacin es difcil porque hay que estimar las LOC a producirse mucho antes de que se complete el anlisis y el diseo.

www.inacap.cl

Mtricas orientadas a la funcin.


Son medidas indirectas del software y el proceso por el cual se desarrolla. En lugar de calcular las lneas de cdigo, stas se centran en la funcionalidad o utilidad del software. La primera propuesta fue realizada por Albrecht, mtrica que hasta hoy es muy utilizada. De los puntos de funcin de Albrecht han salido algunas variaciones tales como los puntos de caracterstica y los puntos de funcin para estimacin temprana. Es un mtodo para cuantificar el tamao y la complejidad de un sistema software en trmino de las funciones de usuario que este desarrolla (o desarrollar). Esto hace que la medida sea independiente del lenguaje o herramienta utilizada en el desarrollo del proyecto.

www.inacap.cl

Mtricas orientadas a la funcin.


Est diseado para medir aplicaciones de negocios; no es apropiado para otro tipo de aplicaciones como aplicaciones tcnicas o cientficas. Esas aplicaciones generalmente median con algoritmos complejos que el mtodo de puntos de funcin no est diseado para manejar. El enfoque de puntos de funcin tiene caractersticas que sobrellevan los principales problemas de utilizar lneas de cdigo como mtrica del tamao del software: 1.Son independientes del lenguaje, herramientas o metodologas utilizadas en la implementacin; por ejemplo, no tienen que considerar lenguajes de programacin, sistemas de administracin de bases de datos, hardware, o cualquier otra tecnologa de procesamiento de datos.

www.inacap.cl

2. Pueden ser estimados a partir de la especificacin de requisitos o especificaciones de diseo, haciendo posible de este modo la estimacin del esfuerzo de desarrollo en etapas tempranas del mismo. Como los puntos de funcin estn ntimamente relacionados con la declaracin de requisitos, cualquier modificacin a sta, puede ser reflejada sin mayor dificultad en una reestimacin. 3. Como los puntos de funcin estn basados en una visin externa del usuario del sistema, los usuarios no tcnicos del software poseen un mejor entendimiento de lo que los puntos de funcin estn midiendo. El mtodo resuelve muchas de las inconsistencias que aparecen cuando se utiliza lneas de cdigo como mtrica del tamao del software.

www.inacap.cl

En resumen, los puntos de funcin aparecen con ventajas sustanciales por sobre las lneas de cdigo, para fines de estimacin temprana del tamao del software. Adems es una medida ampliamente utilizada, y con xito, en muchas organizaciones que desarrollan software en forma masiva.

www.inacap.cl

Clculo del punto de funcin


Hay que completar la siguiente tabla de valores del dominio de la informacin:

Factor de ponderacin Parmetro Subtotal

Cuenta Nmero de entradas de usuario Nmero de salidas de usuario Nmero de peticiones de usuario Nmero de archivos internos

Simple * 3 + * 4 + * 3 + * 7 +

Cuenta

Medio * 4 + * 5 + * 4 + * 10 +

Cuenta

Complejo * 6 = * 7 = * 6 = * 15 =

Nmero de interfaces externas Total

* 5 +

* 7 +

* 10 =

www.inacap.cl

donde: Entradas de usuario. Son entradas que proporcionan diferentes datos a la aplicacin. Datos de proceso o informacin de control que viene de fuera de la frontera de la aplicacin y que se muestra como un proceso elemental que mantiene uno o ms archivos lgicos internos. Salidas de usuario. Son reportes, pantallas o mensajes de error que proporcionan informacin. Los elementos de un reporte, no se cuentan de forma separada. Proceso elemental que genera datos o informacin de control enviada al exterior de la frontera de la aplicacin. Peticiones de usuario. Es una entrada interactiva que produce la generacin de alguna respuesta del software en forma de salida interactiva. Proceso elemental constituido por una combinacin de entrada-salida que proporciona una recuperacin de datos; la parte de salida no contiene datos derivados; ningn archivo interno lgico es mantenido mediante el proceso.
www.inacap.cl

Archivos Internos. Son los archivos que pueden ser parte de una base de datos o independientes. Agrupacin de datos relacionados lgicamente o informacin de control identificable por el usuario y mantenida dentro de la aplicacin. Interfaces externas. Son los archivos que se usan para transmitir informacin a otro sistema.Agrupacin de datos relacionados lgicamente o informacin de control identificable por el usuario, referenciada por la aplicacin, pero mantenida dentro de los lmites de OTRA aplicacin.

www.inacap.cl

Indicaciones para el uso de la tabla de valores del dominio de la informacin anterior: a. Contar cada medida por separado. b. Asociar, de alguna manera, un valor de complejidad a cada medida. Las tablas siguientes muestran una heurstica para decidir la complejidad de todo el sistema.

www.inacap.cl

Complejidad de los Archivos


Registro Lgicos Referenciados 1 2-5 6+ Tipos de datos elementales 1-19 bajo bajo medio 20-50 bajo medio alto 51+ medio alto alto

Complejidad de las entradas


Archivos Referenciados 1-4 0-1 2 3+ bajo bajo medio Tipos de datos elementales 5-15 bajo medio alto 16+ medio alto alto

Complejidad de las Salidas


Tipos de datos elementales Archivos Referenciados 0-1 2-3 4+ 1-5 bajo bajo medio 6-19 bajo medio alto 20+ medio alto alto

www.inacap.cl

c. Para cada medida, multiplicar cada cuenta por el factor de complejidad encontrado, acumularlo y escribir este subtotal en la columna de la extrema derecha. d. Sumar la columna de la extrema derecha y obtener un total T que indica el valor del dominio de la informacin.

www.inacap.cl

Responder a cada una de las siguientes catorce preguntas y asignarles un valor entre 0 y 5, donde 0 es no influencia, 1 es incidental, 2 es moderado, 3 es medio, 4 es significativo y 5 es esencial. 1. Requiere el sistema copias de seguridad y de recuperacin fiables? 2. Requiere comunicacin de datos? 3. Existen funciones de procesamiento distribuido? 4. Es crtico el rendimiento? 5. Se ejecutar el sistema en un entorno operativo existente y fuertemente utilizado? 6. Requiere entrada de datos interactiva? 7. Requiere la entrada de datos interactiva que las transacciones de entrada se lleven a cabo sobre mltiples pantallas u operaciones? 8. Se actualizan los archivos maestros de forma interactiva? 9. Son complejas las entradas, las salidas, los archivos o las peticiones? 10. Es complejo el procesamiento interno? 11. Se ha diseado el cdigo para ser reutilizable? 12. Estn incluidas en el diseo la conversin y la instalacin? 13. Se ha diseado el sistema para soportar mltiples instalaciones en diferentes organizaciones? 14. Se ha diseado la aplicacin para facilitar los cambios y para ser fcilmente utilizada por el usuario? www.inacap.cl

10

Sumar los puntos asignados a cada respuesta y obtener un total F que indica un valor de ajuste de complejidad. El punto de funcin FP se calcula con la siguiente ecuacin: PF = T * (0.65 + 0.01 * F). Mtricas Errores por PF. Defectos por PF. Costo por PF. Pgina de documentacin por PF. PF por hombre-mes.

www.inacap.cl

Mtricas ampliadas de punto de funcin


Los puntos de funcin fueron diseados originalmente para sistemas de informacin y por eso le da ms importancia a los datos y menos a los aspectos de control y funcionales. Para subsanar esto, se han propuesto los puntos de caracterstica y los puntos de funcin 3D. Puntos de caracterstica. Debido a que el anlisis por Puntos de Funcin fue diseado para software de negocios y no es fcil de generalizar a aplicaciones cientficas, de tiempo real y otras, Caper Jones propuso ampliaciones al mtodo que denomin Puntos de Caracterstica, que da cabida a aplicaciones cuya complejidad algortmica es alta. Se calcula igual que el punto de funcin y solo agrega la cuenta de algoritmos y elimina los niveles de complejidad.
www.inacap.cl

11

Parmetro

Factor de ponderacin

Total

Entradas de usuario

* 4 =

Salidas de usuario

* 5 =

Peticiones de usuario

* 4 =

Archivos internos

* 7 =

Interfaces externas

* 7 =

Algoritmos

* 3 =

www.inacap.cl

En este contexto se define un algoritmo como un problema de clculo limitado que se incluye dentro de un programa de computadora especfico. Invertir una matriz, decodificar un string o manejar una interrupcin son ejemplos de algoritmos.

www.inacap.cl

12

Puntos de funcin 3D.


El mbito de aplicacin de los Puntos Funcin se amplia a sistemas con elevada complejidad computacional, como sistemas cientficos, de tiempo real, etc... El trmino asociado a su nombre hace referencia al 3D hecho de que los Puntos Funcin 3D consideran las tres dimensiones en las que puede proyectarse un sistema software: La dimensin de los datos (bastante similar a la considerada por los Puntos Funcin clsicos). La dimensin funcional, que considera las transformaciones de los datos (la complejidad de los algoritmos utilizados para esas transformaciones). La dimensin del control, que considera el nmero de estados-transiciones principales del sistema.

www.inacap.cl

As concebidos, los Puntos Funcin 3D parecen ser mucho ms completos y potentes que los Puntos Funcin tradicionales. Sin embargo, presentan un inconveniente: es necesario disponer de una mayor cantidad de informacin acerca del sistema, sobre todo referente a la complejidad de los algoritmos que se van a implementar y a las posibles transiciones y estados en los que puede encontrarse el sistema. Disponer de esta informacin no siempre es tan fcil y menos an durante las primeras etapas del ciclo de vida. Una de las aplicaciones conocidas de los Puntos Funcin 3D es la estimacin del esfuerzo de desarrollo requerido para implementar clases concretas en diseo orientado a objetos. De esta forma, sirven como mtrica intermedia entre los Puntos Funcin tradicionales y las mtricas OO.

www.inacap.cl

13

Los puntos de funcin 3D se calculan llenando la siguiente tabla:

www.inacap.cl

donde: 1. Estructuras internas de datos. Son arreglos, listas ligadas, pilas, colas, etc. 2. Datos externos. Equivale a la suma de los archivos y las interfaces externas tal y como estn definidos para el punto de funcin. 3. Entradas de usuario. Definidas igual que para el punto de funcin. 4. Salidas de usuario. Definidas igual que para el punto de funcin. 5. Peticiones de usuario. Definidas igual que para el punto de funcin. 6. Transformaciones. Son las operaciones internas requeridas para transformar datos de entrada en datos de salida. Multiplicar dos matrices cuenta como una transformacin. Leer datos de un archivo y guardarlos en memoria no. 7. Transiciones. Ocurre cuando el software pasa de un estado a otro como resultado de algn suceso. En un sistema de altas, bajas y cambios, al tomar la opcin de altas, pasa del estado "men principal" al estado "procesa altas" y puede ser que en ese momento pida datos para dar la alta.
www.inacap.cl

14

Indicaciones: Para cada medida, contar por separado, de acuerdo a algn criterio de asignacin de complejidad, las veces que aparezca con complejidad baja, media y alta. Para cada medida, multiplicar cada cuenta por el factor de complejidad correspondiente, sumar las tres cantidades y escribir el total en la columna de la extrema derecha. Sumar la columna de la extrema derecha y obtener el punto de funcin 3D.

www.inacap.cl

15

También podría gustarte