Este documento explica el método de puntos de función para estimar el esfuerzo requerido para un proyecto de software. Describe cómo se calculan los puntos de función sin ajustar contando elementos como entradas, salidas, consultas y archivos. Luego explica cómo usar factores de ajuste para calcular los puntos de función ajustados basados en características del proyecto. El objetivo es poder estimar de manera temprana el tamaño, costo y duración de un proyecto de desarrollo de software.
2. INDICE
CALCULO DE ESFUERZO EN PUNTOS DE FUNCION……………………………………………..2
TÉCNICA DE PUNTOS DE FUNCIÓN…………………………………………………………………..2
PUNTOS DE FUNCIÓN EN CASOS DE USO………………………………………………………………3
CALCULO DE ESFUERZO EN PUNTOS DE FUNCION………………………………………………….4
CÁLCULO DE LOS PUNTOS DE FUNCIÓN SIN AJUSTAR…………………………………………….4
CUANDO SE CUENTEN LOS ATRIBUTOS EN UN FICHERO SE TENDRÁ EN CUENTA………….4
PARA CALCULAR PUNTOS DE FUNCIÓN SE UTILIZA LA RELACIÓN SIGUIENTE…………5
ANEXO 1…………………………………………………………………………………………………………………….5
ANEXO 2…………………………………………………………………………………………………………………….6
ANEXO 3…………………………………………………………………………………………………………………….6
CONCLUSION……………………………………………………………………………………………………………..7
BIBLIOGRAFIA…………………………………………………………………………………………………………….7
2
3. CALCULO DE ESFUERZO EN PUNTOS DE FUNCION
El análisis por puntos de función es un método para cuantificar el tamaño y la complejidad de un sistema en
términos de las funciones que desempeña o desempeñara el usuario. Está diseñado para manejar
aplicaciones de negocios; no es apropiado para otro tipo de aplicaciones como aplicaciones técnicas o
científicas.
Los puntos de función tienen características que permiten superar los principales problemas de utilizar
líneas de códigos de métrica del tamaño del software.
1.-Los puntos de función son independientes del lenguaje, herramientas o metodologías utilizadas en la
implementación.
2.-Los puntos de función pueden ser estimados a partir de la especificación de requisititos o
especializaciones de diseño, hace posible de este modo la estimación del esfuerzo de desarrollo en etapas
tempranas del mismo.
3.-Los puntos de función están basados en una visión externa del usuario del sistema, los usuarios no
técnicos del software poseen un mejor entendimiento de lo que los puntos de función están midiendo.
En resumen, los puntos de función aparecen con ventajas substanciales sobre las líneas de código, para
fines de estimación temprana del tamaño del software, y por ende, del esfuerzo de desarrollo.
TÉCNICA DE PUNTOS DE FUNCIÓN
La funcionalidad es proporcionada externamente, midiendo lo que el usuario pide y recibe, proporcionando
un factor para la comparación de distintos productos, independientemente de la tecnología utilizada para su
implementación.
Este análisis se desarrolla considerando cinco medidas básicas, externas del sistema:
Entrada: pantallas, formularios, cuadros de diálogo, controles, mensajes.
Salida: pantallas, informes, gráficos, mensajes.
Consultas: entrada simple, generalmente produce una salida simple.
Archivos lógicos internos: tablas o archivos de la base de datos.
Archivos externos: utilizados en otros programas. Multiplicadores de puntos de función
Cada una de estas transacciones deben ser clasificados con una complejidad ya sea simple, media o
compleja.
Con estos datos, se determinan los puntos de función sin ajustar. Con estos puntos de función obtenidos,
calculamos los costos del software por desarrollar, con base a una serie de valoraciones relativas a las
características generales del sistema. Pero la Técnica no está enfocada al paradigma de la orientación a los
objetos, ni a los ciclos de vida interactivos – incrementales, por lo que se complementó con los casos de
uso. De aquí se deriva lo que ahora se conoce como puntos de función de casos de uso.
PUNTOS DE FUNCIÓN EN CASOS DE USO
Los casos de uso por sí mismo no permiten efectuar una estimación del tamaño que tendrá el sistema, ni
del esfuerzo y el tiempo necesario para implementarlo.
Estos permiten documentar los requerimientos del software de una manera compacta y precisa, luego con
los puntos de función se puede estimar el tamaño del software a partir de los requerimientos obtenidos de
los casos de uso.
Punto de función de uso consiste en evaluar la complejidad de un sistema por medio de una técnica en la
que se asigna una cantidad de puntos de peso, que califican diferentes elementos que conforman el sistema
3
4. así como algunos factores del entorno, para obtener una aproximación del tiempo requerido y la cantidad de
esfuerzo necesario para la implementación del mismo.
Así, se da el resultado de los casos de uso ajustados, que caracteriza la complejidad del sistema y este es
usado para obtener una idea del número de horas- personas para un proyecto.
CALCULO DE ESFUERZO EN PUNTOS DE FUNCION
Pasos para el cálculo
• Calcular el tamaño del producto(puntos de función o líneas de códigos)
• Calcular el esfuerzo (personas - meses)
• Calcular la programación (calendario-meses)
• Calcular el tamaño del equipo (persona – mes )
• Ofrecer cálculos en rangos y reajustar según avance la precisión a lo largo del proyecto.
CÁLCULO DE LOS PUNTOS DE FUNCIÓN SIN AJUSTAR.
Las siguientes tablas muestran como clasificar los diferentes elementos de función y asignarles pesos. Así
por ejemplo una entrada que contenga 10 atributos y que en su lógica se requiera acceder a un fichero
diremos que se clasifica de complejidad baja y tiene asociados tres puntos de función, ver tablas de anexos.
En el caso de las consultas diferenciaremos la complejidad de lo que sería la entrada y la salida, le
asignaremos la complejidad mayor de las dos (baja, media o alta).
Los ficheros de las entradas, salidas y consultas se calculan a partir de los ficheros, lógicos internos o de
interfaz externo, que son accedidos durante el proceso asociado.
Los atributos son tipos de datos elementales reconocibles por el usuario. En las entradas se contarán
también aquellos datos que son almacenados en un fichero como consecuencia de la entrada. Los datos
que se almacenen en muchos campos se contarán sólo una vez. Ejemplo DNI en la gestión de notas.
En las salidas se contarán los campos calculados, por ejemplo totales. En las salidas no se deben contar ni
los literales ni los campos provenientes de variables del sistema como fecha, número de página, opciones
de próxima página o página previa. Siempre se contarán los mensajes de verificación y error como un
campo que puede contener estos valores. También se cuentan las opciones que indican la tarea a realizar,
ejemplos son: aceptar o continuar.
CUANDO SE CUENTEN LOS ATRIBUTOS EN UN FICHERO SE TENDRÁ EN CUENTA
Sólo aquellos que el usuario es capaz de reconocer, aunque aparezcan de forma repetida se cuentan una
sola vez.
Se han de contar los campos que hacen falta para mantener las relaciones con otros ficheros Internos o
Externos.
Contar como un solo campo aquellos que aparecen como consecuencia de las técnicas utilizadas en la
implementación física:
Para contar los registros lógicos (tipo de registro) de una agrupación de datos (fichero), se han de tener en
cuenta las siguientes reglas:
Todo fichero tiene un conjunto de datos básicos (no repetitivos) más otros registros lógicos.
Un registro lógico es un subgrupo de datos elementales de un fichero, identificables por el usuario. Hay dos
tipos de subgrupos los obligatorios y los opcionales. En el fichero de alumnos sería obligatorio sus datos de
acceso y opcionales como sus aficiones deportivas, aficiones de lectura, etc. que pueden aparecer o no.
4
5. Contar un registro lógico por cada subgrupo, opcional u obligatorio. Si no hay subgrupos contar un registro
lógico. Con esto se puede realizar la clasificación de los elementos de función y el cálculo del los Puntos de
Función sin Ajustar (PFSA).
PARA CALCULAR PUNTOS DE FUNCIÓN SE UTILIZA LA RELACIÓN SIGUIENTE
FP = cuenta-total x [0,65 + 0,01 x Σ (de ponderaciones)]
Donde cuenta-total es la suma de todas las entradas obtenidas de la figura 3. Fi donde i puede ser de uno
hasta 14 los valores de ajuste de complejidad basados en las respuestas a las siguientes preguntas:
1. ¿Requiere el sistema copias de seguridad y de recuperación fiables?
2. ¿Se requiere comunicación de datos?
3. ¿Existen funciones de procesamiento distribuido?
4. ¿Es crítico el rendimiento?
5. ¿Se ejecutaría el sistema en un entorno operativo existente y fuertemente utilizado?
6. ¿Requiere el sistema entrada de datos interactiva?
7. ¿Requiere la entrada de datos interactiva que las transacciones de entrada se lleven a cabo sobre
múltiples 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 diseñado el código para ser reutilizable?
12. ¿Están incluidas en el diseño la conversi6n y la instalaci6n?
13. ¿Se ha diseñado el sistema para soportar múltiples instalaciones en diferentes organizaciones?
14. ¿Se ha diseñado la aplicaci6n para facilitar los cambios y para ser fácilmente utilizada por el usuario?
Anexo 1
5
6. Anexo2
Anexo 3
Componente Bajo Medio Alto Total
EI Eb * 3 = _ Em * 4 = _ Ea * 6 = _ PFTe
EO Ob * 4 = _ Om * 5 = _ Oa * 7 = _ PFTo
EQ Qb * 3 = _ Qm * 4 = _ Qa * 6 = _ PFTq
ILF IFb * 7 = _ IFm * 10 = _ IFa * 15 = _ PFTif
EIF EFb * 5 = _ EFm * 7 = _ EFa * 10 = _ PFTef
PFSA
6
7. CONCLUSION:
El método de Puntos de Función, además de su combinación con otras técnicas de estimación como Casos
de Uso. La estimación es una de las primeras actividades de la gestión de proyectos informáticos.
Su objetivo es conocer en etapas tempranas y de manera aproximada, el costo, la duración y
los recursos necesarios para el desarrollo de proyectos de software.
BIBLIOGRAFIA:
http://es.wikipedia.org/wiki/Puntos_de_caso_de_uso#T.C3.89CNICA_DE_PUNTOS_DE_FUNCI.C3.93N
http://www.monografias.com/trabajos55/estimacion-por-puntos-de-funcion/estimacion-por-puntos-de-
funcion2.shtml#usorangos.
http://www.slideshare.net/cris_l/puntofunci
7