Anda di halaman 1dari 6

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. Lord Kelvin

Definiciones
Medida. Proporciona una indicacin cuantitativa de extensin, cantidad, dimensiones, capacidad y tamao de algunos atributos de un proceso o producto. Pueden ser directas, p.e. nmero de lneas de cdigo, nmero de errores encontrados, etc., o pueden ser indirectas, p.e. funcionalidad, calidad, complejidad, etc. 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.

Mtricas orientadas al tamao.


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 Errores por KLOC (mil lneas de cdigo). Defectos por KLOC. Costo por KLOC. Pginas de documentacin por KLOC. Errores por hombre-mes. LOC por hombre-mes. Costo por pgina de documentacin.

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 dficil porque hay que estimar las LOC a producirse mucho antes de que se complete el anlisis y el diseo.

Mtricas orientadas a la funcin.


La medida de punto de funcin se propuso en 1979 y trata de medir la funcionalidad o utilidad del software. Clculo del punto de funcin 1. Hay que completar la siguiente tabla de valores del dominio de la informacin:

Parmetro Nmero de entradas de usuario Nmero de salidas de usuario Nmero de peticiones de usuario Nmero de archivos Nmero de interfaces externas Total

Cuenta

Factor de ponderacin Simple Medio Complejo 3 4 3 7 5 4 5 4 10 7 6 7 6 15 10

Subtotal

2. donde: o Entradas de usuario. Son entradas que proporcionan diferentes datos a la aplicacin. No confundirlos con las peticiones de usuario. o Salidas de usuario. Son reportes, pantallas o mensajes de error que proporcionan informacin. Los elementos de un reporte, no se cuentan de forma separada. o Peticiones de usuario. Es una entrada interactiva que produce la generacin de alguna respuesta del software en forma de salida interactiva. o Archivos. Son los archivos que pueden ser parte de una base de datos o independientes. o Interfaces externas. Son los archivos que se usan para transmitir informacin a otro sistema. Indicaciones: o Contar cada medida por separado.

Asociar, de alguna manera, un valor de complejidad a cada medida. La siguiente tabla muestra una heurstica para decidir la complejidad de todo el sistema.

Tipos de archivos referenciados 0-1 2-3 4+


o

Tipos de datos elementales 1-5 bajo bajo medio 6-19 bajo medio alto 20+ medio alto alto

Para cada medida, multiplicar su cuenta por el factor de complejidad elegido y escribirlo en la columna de la extrema derecha. o Sumar la columna de la extrema derecha y obtener un total T que indica el valor del dominio de la informacin. 3. 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? Sumar los puntos asignados a cada respuesta y obtener un total F que indica un valor de ajuste de complejidad. 4. El punto de funcin FP se calcula con la siguiente ecuacin: PF = T * (0.65 + 0.01 * F). Mtricas o o o o Errores por PF. Defectos por PF. Costo por PF. Pgina de documentacin por PF.

PF por hombre-mes.

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. Se calcula igual que el punto de funcin y solo agrega la cuenta de algoritmos. 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. Puntos de funcin 3D. Los puntos de funcin 3D se calculan llenando la siguiente tabla:

Elemento de medicin Estructuras internas de datos Datos externos Nmero de entradas de usuario Nmero de salidas de usuario Nmero de peticiones de usuario Transformaciones Transiciones Punto de funcin 3D
donde: o o o o o o

Pesos de complejidad Bajo * 7 * 5 * 3 * 4 * 3 * 7 + + + + + + + Medio * 10 * 7 * 4 * 5 * 4 * 10 + + + + + + + Alto * 15 * 10 * 6 * 7 * 6 * 15 = = = = = = =

Subtotal

Estructuras internas de datos. Son arreglos, listas ligadas, pilas, colas, etc. Datos externos. Equivale a la suma de los archivos y las interfaces externas tal y como estn definidos para el punto de funcin. Entradas de usuario. Definidas igual que para el punto de funcin. Salidas de usuario. Definidas igual que para el punto de funcin. Peticiones de usuario. Definidas igual que para el punto de funcin. 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. 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.

Indicaciones: o o o 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.

Funcionalidad de los lenguajes de programacin La tabla siguiente proporcional estimaciones informales del nmero de lneas de cdigo que se necesitan para construir un punto de funcin en varios lenguajes de programacin:

Lenguaje Ensamblador C Cobol Fortran Pascal Ada OOL 4GL Generadores de cdigo Hojas de clculo Lenguajes de conos

LOC/PF 320 128 105 105 90 70 30 20 15 6 4

Observando la tabla podemos decir que, en promedio, un programa en ensamblador tendr 320/128 = 2.5 veces ms lneas de cdigo que un programa en C que haga lo mismo, y casi 11 veces ms que un lenguaje orientado a objetos (OOL) con la misma funcionalidad.

Medidas de calidad de Gilb.


o o Correcin. Es el grado en el que el software lleva a cabo su funcin requerida. Se mide en defectos por KLOC. Facilidad de mantenimiento. Es la facilidad con que se puede corregir un programa si se encuentra un error, adaptar si su medio ambiente cambia o mejorar si el cliente desea un cambio de requisitos. Se mide en Tiempo Medio de Cambios (TMC), que es el tiempo que se lleva desde analizar la peticin hasta

distribuir el cambio a los usuarios. Integridad. Mide la habilidad de un sistema de resistir ataques. Se calcula aplicando la frmula: 1 - amenaza * (1 - seguridad) Para cada tipo de ataque, y donde amenaza se define como la probabilidad de que ocurra ese ataque y seguridad como la probabilidad que ese ataque sea rechazado.

Facilidad de uso. Mide que tan amigable es el sistema con el usuario en funcin de cuatro caractersticas: Habilidad intelectual y/o fsica para aprender a usarlo. Tiempo requerido para ser moderadamente eficiente al usarlo. Aumento neto de productividad, comparado con el sistema que reemplaza. Valoracin subjetiva de la disposicin de los usuarios hacia el sistema.

Eficacia de la Eliminacin de defectos (EED)


. EED = E / (E + D) donde: E es el nmero de errores (fallas detectadas antes de entregar el sistema al usuario por primera vez) D es el nmero de defectos (fallas detectadas despus de entregar el sistema al usuario por primera vez)

Anda mungkin juga menyukai