Planificación de Proyectos Inf.:
Puntos de FunciónJosé Onofre Montesa AndrésUniversidad Politécnica de
ValenciaEscuela Superior de Informática Aplicada
2003-2004
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 2
Métrica de los Puntos de Función
• Es una métrica aceptada como estándar en el mercado.– IFPUG (International Function Point Users
Group).– CPM 4.0 de 1994 (Counting Practice
Manual)• Inicialmente Albrecht en IBM. (1979)• ¿Como medir el software?
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 3
Métrica de los Puntos de Función
• Es una métrica que se puede aplicar en las primeras fases de desarrollo.
• Se basa en características fundamentalmente “Externas” de la aplicación a desarrollar.
• Mide dos tipos de características:– Los elementos de función (entradas,
salidas, ficheros, etc.)– Los factores de Complejidad.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 4
Elementos de Función• Son elementos fácilmente
identificables en los diagramas de especificación del sistema. (DFD, Entidad-Relación, DD)
• Los usuarios los entienden perfectamente.
• Observamos la aplicación como una caja negra.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 5
Visión de caja negra• Nos centramos en característica
visibles del objeto en estudio.• Ejemplo:
– Equipo de música.– Coche– Animales
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 6
Elementos de función• Entradas• Salidas• Consultas• Ficheros Lógicos o Internos• Ficheros de Interfaz
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 7
Algunas Definiciones• Proceso elemental• Datos e información de control• Lógica de proceso
– Ediciones, algoritmos o cálculos– Accesos a ficheros para consulta o
actualización
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 8
Proceso elemental:• Menor unidad de actividad que tiene
sentido para el usuario, conocedor del sistema en estudio.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 9
Datos e informaciones de control:
• Datos elementales con los que trabaja la aplicación en estudio. Nos referimos a ellos siempre como datos aunque se componen de los datos propios del sistema en estudio, más las informaciones de control que solicita el usuario: mensajes de error, claves de seguridad... etc.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 10
Lógica de proceso:• Procesos que se producen como
consecuencia de un proceso elemental. Pueden ser de dos tipos: – Ediciones, algoritmos o cálculos– Accesos a un fichero para consulta o
actualización.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 11
Ficheros Lógicos o Internos• Agrupaciones de datos, tal
y como los percibe el usuario
• Es diferente de:– Entidades y Relaciones– Tablas o archivos
resultantes del diseño físico• Los grupos de datos serán
accedidos y actualizados por la aplicación
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 12
FICHEROS LÓGICOS INTERNOS
Cuestión: Respuesta,
debe ser
Se trata de una agrupación de datos lógica o identificable desde el
punto de vista del usuario y satisface un requerimiento especifico
del usuario
Si
La agrupación de datos es mantenida por procesos de la aplicación
en estudio Si
La agrupación de datos es mantenida mediante un proceso
elemental de la aplicación Si
La agrupación de datos no ha sido contada como un fichero de
interfaz externo Si
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 13
Clasificación de los Ficheros Lógicos o Internos
DIFICULTAD
FICHEROS
Número de Campos o Atributos
LÓGICOS 1-19 Atributos 20-50Atributos 51 + Atributos
1 Registro
LógicoBAJA BAJA MEDIA
2 a 5 Registros
LógicosBAJA MEDIA ALTA
6 o más
Registros Lógic.MEDIA ALTA ALTA
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 14
DIAGRAMA DE CONTEXTO
Ficheros de Interfaz• Ficheros a los que
accede la aplicación con el único objetivo de obtener información.
• Son mantenidos por otras aplicaciones
• Nunca los actualiza la aplicación.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 15
FICHEROS DE INTERFAZ EXTERNOS
Cuestión: Respuesta,debe ser
Se trata de una agrupación de datos lógica o identificable desde el puntode vista del usuario y satisface un requerimiento especifico del usuario SiLa agrupación de datos es referenciada, y externa, a la aplicación enestudio SiLa agrupación de datos no es mantenida mediante la aplicación enestudio SiLa agrupación de datos ha sido contada como un fichero lógico Internoen otra aplicación SiLa agrupación de datos no ha sido contada como un fichero lógicoInterno de la aplicación en estudio Si
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 16
Clasificación de los Ficheros de Interfaz
DIFICULTAD
FICHEROS
Número de Campos o Atributos
DE INTERFAZ 1-19 Atributos 20-50Atributos 51 + Atributos
1 Entidad o
Registro LógicoBAJA BAJA MEDIA
2 a 5 Registros
LógicoBAJA MEDIA ALTA
6 o más
Registros Lógic.MEDIA ALTA ALTA
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 17
Entradas• Informaciones que
llegan a la aplicación desde el exterior.
• Tienen una sola dirección (Exterior à Interior)
• Siempre actualizan algún fichero interno.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 18
EntradasCuestión: Respuesta,
debe serEntran datos desde exterior de la aplicación SiExisten datos en algún fichero lógico interno que son actualizados SiEl proceso es la unidad mínima de actividad que tiene sentidopara el usuario SiEl proceso es completo y deja al sistema en un estadoconsistente SIPara el proceso subyacente se debe de cumplir alguna de lassiguientes reglas A o BA La lógica del proceso es exclusiva de esta entrada, o la
primera vez que la contamosB Los datos elementales son diferentes de otras entradas
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 19
Clasificación de las entradasDIFICULTAD
ENTRADAS
Número de Campos o Atributos de la Entrada
1-4 Atributos 5-15 Atributos 16 + Atributos
0 ó 1 ficheros
accedidosBAJA BAJA MEDIA
2 ficheros
accedidosBAJA MEDIA ALTA
3 + ficheros
accedidosMEDIA ALTA ALTA
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 20
Salidas• Informaciones
elaboradas por la aplicación que son transmitidas al usuario.
• Tienen una sola dirección (Interior a Exterior)
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 21
SalidasCuestión: Respuesta
El proceso envía datos o información al exterior de la aplicación Si
El proceso es la unidad mínima de actividad que tiene sentido
para el usuario
Si
El proceso es completo y deja al sistema en un estado
consistente SI
Para el proceso subyacente se debe de cumplir alguna de las
siguientes reglas A o B
A La lógica del proceso es exclusiva de esta salida (o la
primera vez)
B Los datos elementales son diferentes de otras salidas
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 22
Clasificación de las salidasDIFICULTAD
SALIDAS
Número de Campos o Atributos de la Salida
1-5 Atributos 6-19 Atributos 20 + Atributos
0 ó 1 ficheros
accedidosBAJA BAJA MEDIA
2 ó 3 ficheros
accedidosBAJA MEDIA ALTA
4 + ficheros
accedidosMEDIA ALTA ALTA
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 23
Consultas• Entradas que
producen inmediatamente una salida
• No modifica los datos del sistema
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 24
ConsultasCuestión: Respuesta,
Una petición atraviesa la frontera del sistema Sí
El proceso envía datos o información al exterior de la aplicación Sí
Se recuperan datos Sí
No se calculan datos derivados para enviar al exterior Sí
El proceso (entrada/salida) es la unidad mínima de actividad que tiene
sentido para el usuario Sí
El proceso es completo y deja al sistema en un estado consistente Sí
El proceso no actualiza ningún Fichero Lógico Interno Sí
Para el proceso subyacente se debe de cumplir alguna de las siguientes
reglas A o B
A La lógica del proceso en su parte de entrada o salida, es distinta del
de otras consulta del sistema (o la primera vez)
B Los datos elementales de la entrada o salida son diferentes de otras
consultas
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 25
Clasificación de las consultas
• Calculamos la complejidad de la parte de entrada
• Calculamos la complejidad de la parte de salida
• Nos quedamos sólo con la complejidad mayor de las dos.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 26
Hoja para calcular los Puntos de función sin ajustar
(PFSA)Simple Media Compleja TotalCantidad * Peso Cantidad * Peso Cantidad * Peso
Entradas * 3 * 4 * 6Salidas * 4 * 5 * 7Consultas * 3 * 4 * 6Fic. Lógicos * 7 * 10 * 15Fic. Interfaz * 5 * 7 * 10
Total puntos de función sin ajustar (PFSA)
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 27
FACTORES DE COMPLEJIDAD• Son catorce factores que completan
la visón externa de la aplicación.• No están recogidos en la
funcionalidad de la aplicación.• Toman un valor entre 0 y 5
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 28
SIGNIFICADO DEL VALOR DE CADA F.C.
Valor Significado del valor0 Sin influencia, factor no presente1 Influencia insignificante, muy baja2 Influencia moderada o baja3 Influencia media, normal4 Influencia alta, significativa5 Influencia muy alta, esencial
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 29
1) Comunicación de Datos.• Los datos usados en el sistema se
envían o reciben por líneas de comunicaciones.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 30
FC1: Comunicación de datos0: Sistema aislado del exterior1: Batch, usa periféricos E o S remotos2: Batch, usa periféricos E y S remotos3: Captura de datos en línea o teleproceso
que pasa los datos o sistema de consulta4: Varios teleprocesos con mismo protocolo5: Varios protocolos. Sistema Abierto y con
interfaces de todo tipo al exterior.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 31
2) Proceso Distribuido.• Existen Procesos o Datos distribuidos,
y el control de estos forma parte del sistema.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 32
FC2: Proceso distribuido0: Sistema totalmente centralizado1: Sistema realiza procesos en un equipo,
salidas usadas vía Sw por otros equipos2: Sistema captura, los trata en otro3: Proceso distribuido, trans. una sola direc.4: idem, transferencia en ambas direcciones. 5: procesos cooperantes ejecutándose en
distintos equipos.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 33
3) Objetivos de Rendimiento.
• Si el rendimiento es un requisito del sistema. Es decir es crítico algún factor como tiempo de respuesta o cantidad de operaciones por hora. Se tendrá que hacer consideraciones especiales durante el diseño, codificación y mantenimiento.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 34
FC3: Objetivos de rendimiento
0: Rendimiento normal ( no se da énfasis )1: Se indican requisitos, no medida especial.2: Crítico en algunos momentos. Procesos
acabados antes de prox. sesión de trabajo.3: Tiempo de respuesta es crítico. 4: ... en diseño hacer análisis de rendimiento
en tiempo respuesta o cantidad oper./hora5: .. uso herramientas para alcanzar el
rendimiento demandado por el usuario
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 35
4) Configuración de Explotación Usada por Otros
Sistemas.• El sistema tendrá que ejecutarse en un equipo en el que coexistirá con otros, compitiendo por los recursos, teniendo que tenerse en cuenta en las fase de diseño.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 36
FC4: Conf. explotación usada intensamente por
otros sistemas0: No se indican restricciones1: Existen las restricciones usuales2: Características de seguridad o tiempos.3: Restricciones en algún procesador4: El Sw deberá funcionar con restricciones
de uso en algún procesador.5: Restricciones especiales para aplicación en
los componentes distribuidos del sistema
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 37
5) Tasa de Transacciones.• La tasa de
transacciones será elevada. Se tendrá que hacer consideraciones especiales durante el diseño, codificación e instalación.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 38
FC5: Tasa de transacciones0: No se prevén picos1: Se prevén picos poco frecuentes (mensual)2: Se prevén picos semanales3: Se prevén horas punta, diarias4: Tasa de trans. tan elevada que en diseño
se hace análisis de rendimiento5: Análisis de rendimiento en diseño,
implementación e instalación.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 39
6) Entrada de Datos EN-LÍNEA.
• La entrada de datos será directa desde el usuario a la aplicación, de forma interactiva.– 0: Todo es Batch– 5: Más del 30% de
las entradas son en línea
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 40
FC6: Entrada de datos en línea
0: Todo es Batch1: 1%<entradas interactivas <7%2: 8%<entradas interactivas <15%3: 16%<entradas interactivas <23%4: 24%<entradas interactivas <30%5: Entradas interactivas >30%
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 41
7) Eficiencia con el Usuario Final.
• Se demanda eficiencia para el usuario en su trabajo, es decir se tiene que diseñar e implementar la aplicación con interfaces fáciles de usar y con ayudas integradas.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 42
Eficiencia del usuario con:• Menús.• Uso de ratón.• Ayudas "en_línea".• Movimiento automático del cursor; • Efectos de Scroll (papiro); • Teclas de función predefinidas• Lanzamiento de procesos Batch desde
las transacciones "en_línea";
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 43
Eficiencia del usuario con (cont.):
• Selección mediante cursor de datos de la pantalla;
• Pantallas con muchos colores y efectos; • Posibilidad de "hard-copy".• Ventanas de "pop-up";• Aplicación bilingüe (cuenta por cuatro).• Aplicación Multilingüe (mas de dos,
cuenta por seis).
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 44
FC7: Eficiencia con el usuario final
0: No se da énfasis al tema1: 1 a 3 de los factores2: 4 a 5 de los factores3: 6 o más factores, sin requerir eficiencia4: ... con requerimientos que implican estudio
de los factores humanos en el diseño5: … se demandan prototipos y herramientas
para verificar que se alcanzaran los objetivos
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 45
8) Actualizaciones EN-LÍNEA.• Los ficheros
maestros y las Bases de Datos son modificadas directamente de forma interactiva.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 46
FC8: Actualizaciones en línea
0: No hay1: De 1 a 3 ficheros con información de
control. Cantidad baja y ficheros recuperables
2: ... pero con 4 o más ficheros de control3: Actualización de ficheros importantes4: ... esencial la protección ante pérdidas5: Gran cantidad de actualizaciones
interactivas. Sistemas de recuperación muy automatizados
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 47
9) Lógica de Proceso Interno Compleja.
• La complejidad interna en un proceso esta en función de las siguientes características:– Especificados algoritmos matemáticos complejos.– Proceso con lógica compleja.– Especificado muchas excepciones, consecuencia de
transacciones incompletas, que deberán tratarse.– Manejar múltiples dispositivos de entrada/salida.– Se incorporaran sistemas de seguridad y control.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 48
FC9: Lógica de proceso interno compleja
0: Ninguna de las características1: 1 Característica2: 2 Características...5: Las 5 características
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 49
10) Reutilización del Código.• Se tendrá que hacer consideraciones
especiales durante el diseño, codificación y mantenimiento para que el código se reutilice en otras aplicaciones o lugares.
• Hablaremos de reutilización:– Dentro de la propia aplicación,– Por varios sistemas,– Parametrizable.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 50
FC10: Reusabilidad del código
0: No se prevé1: Reutilizar código en la misma aplicación2: Menos de un 10% de la aplicación tiene
en cuenta las necesidades de + de 1 usuario
3: El 10 % o más ...4: Aplicación preparada para ser reutilizable.
Nivel de código5: Aplicación preparada para ser reutilizable.
Por medio de parámetros
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 51
Antiguo Nuevo
11) Contempla la Conversión e Instalación.• Se proveerán facilidades de
conversión en el sistema, se tendrá que hacer consideraciones especiales durante el diseño, codificación y pruebas para que la conversión del sistema antiguo sean fáciles de realizar durante la puesta en marcha del sistema nuevo.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 52
FC11: Contempla conversión e instalación
0: No se requiere conversión.1: Se solicita facilidad de instalación2: Se solicitan procesos de conversión e
instalación, no importantes para el proyecto3: ... si son importantes4: 2, y herramientas conversión e instalación5: 3, y herramientas conversión e instalación.
Sistema crítico para la empresa
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 53
12) Facilidad de Operación.• Operación del sistema: los trabajos
asignados al centro de proceso de datos.– arranque, parada, recuperación ante fallos,
copias de seguridad o minimización de las actividades manuales en el CPD.
• Se valora cuando ha sido descrita desde las primeras fases dedicandose especial atención durante el diseño, codificación y pruebas.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 54
FC12: Facilidad de operación0: Nada, en todo caso, back-up1 a 4: Suma de ítems
Arranque, back-up y recuperaciónIdem, sin intervención operador ( X2 )Minimizar necesidad de disp. externos almac.Minimiza necesidad de manejar papel
5: Sistema automático sin intervención humana
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 55
13) Instalaciones Múltiples• El sistema ha de incluir los
requerimientos de diversas empresas o departamentos en donde se ejecutara (incluso plataformas). Estas características se estarán presentes durante el diseño, codificación y pruebas.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 56
FC13: Instalaciones múltiples
0: 1 solo lugar1: Múltiples lugares, mismo Hw y Sw2: En diseño se tiene en cuenta el caso (1)3: En diseño se tiene en cuenta múltiples
entornos Hw y Sw4: Se documenta y planea para (1) y (2)5: Idem, para (3)
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 57
14) Facilidad de Cambios• Se tendrá que hacer
consideraciones especiales durante el diseño, codificación y mantenimiento para que en el sistema sea fácil de introducir cambios y fácil de adaptar al usuario.
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 58
FC14: Facilidad de cambios• Items a tener en cuenta:
– Consultas flexibles del usuario:• Simples con condiciones. lógicas And/Or que implican
un único fichero lógico• Medias con cond. lógicas sobre más de 1 F.L. (X2)• Complejas con condiciones lógicas complejas que
afectan a varios F.L. (X3)– Parámetros de la aplic. con tablas ajenas al
código:• El cambio se hace efectivo al arrancar el sistema• El cambio es interactivo (X2)
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 59
FC14: Facilidad de cambios0: No se especifica nada1: Un ítem de valor 12: Items por valor 23: ...5: Items por valor 5
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 60
Tabla para el calculo de los FC.
# Factor de Complejidad Valor(0..5)
1 Comunicación de Datos.
2 Proceso Distribuido.
3 Rendimiento
4 Configuración Operacional compartida
5 Ratio de Transacciones
6 Entrada de Datos EN-LÍNEA
7 Eficiencia con el Usuario Final
8 Actualizaciones EN-LÍNEA
9 Complejidad del Proceso Interno
10 Reusabilidad del Código
11 Contempla la Conversión e Instalación
12 Facilidad de Operación (back up, etc.)
13 Instalaciones Múltiples
14 Facilidad de Cambios
Factor de Complejidad Total (FCT) Valori
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 61
Calculo de los puntos de función ajustados
• PFA = PFSA * (0,65 + (0.01 * FC))• Cada factor de complejidad afecta en
+/- 2,5% en los PFSA• PFSA * 65% <= PFA <= PFSA * 135%
0 35 700
20406080
100120140
0 35 70
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 62
Estimación del Esfuerzo Requerido
• Partimos de los datos históricos de la Organización
• Esfuerzo = PFA * Promedio_Organización( Lenguaje)
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 63
Estimación del Esfuerzo Requerido (Datos históricos)
Nombre Proyecto Puntos de Función Lenguaje Esfuerzo en horas
Sénia 200 COBOL 5.017Paláncia 150 PASCAL 2.569Turia 375 4GL 3.011Albufera 500 PASCAL 9.479Magro 425 4GL 3.342Cabriel 800 PASCAL 13.349Júcar 180 PASCAL 2.800Serpis 325 4GL 2.541Montnegre 225 PASCAL 4.528Segura 470 COBOL 13.218
GPI-P2B. Planificación de Proyectos Inf.: Puntos de Función 64
OTRAS UTILIDADES DE LOS PUNTOS DE FUNCIÓN.
• Comparar lo que solicitó el cliente con lo que recibió.
• Comparar la productividad de los diferentes entornos de desarrollo.
• Comparar la calidad que se obtiene mediante las diferentes técnicas de desarrollo.
Top Related