PUNTOS FUNCIONALES
ISO/IEC 20926:2003
Inicio
INTRODUCCION A LOS
PUNTOS DE FUNCION
Inicio
Puntos de Función 1/3
• Esta métrica mide el atributo funcionalidad
o utilidad del producto software desde el
punto de vista del usuario del mismo
• Esta funcionalidad es también designada
como el “size” o “tamaño” del producto
• Esta medida es independiente del ambiente
tecnológico y del proceso de software
utilizado para construirlo
Puntos de Función 2/3
• Permite comparar el mismo producto en
distintos ambientes.
• Permite comparar un producto existente y
su reemplazo
• Puede ser calculada en distintos momentos
del ciclo de vida del producto software
Puntos de Función 3/3
• La precisión del calculo mejora a medida
que se avanza en las actividades de
requerimientos y análisis
• Comparando estimaciones realizadas en el
mismo momento del ciclo de vida de
distintos proyectos, puede estimarse el
proceso de corrección de las mismas para
un nuevo proyecto
Beneficios 1/2
• Mide la funcionalidad de un software
terminado, mediante la cuenta de todas las
funciones incluidas en el mismo
• Ayuda a los usuarios de un software para
medir el beneficio de su uso, mediante la
cuenta de las funciones que específicamente
satisfacen sus requerimientos
Beneficios 2/2
• Permite estimar los recursos y costos
requeridos para el desarrollo y el
mantenimiento del software
• Es un estándar aceptado para la medición de
la funcionalidad del software
• Es una medición adecuada para comparar
proyectos o productos de software
Puntos de Función y Proyectos
• Los puntos de función son métricas de
productos y no de procesos
• Combinados con métricas de procesos son
muy útiles para estimar el uso de recursos,
la duración y el costo de proyectos de
software y por tanto el precio del producto
Puntos de Función y Gestión de
IT 1/2
• Permiten estimar el importe del inventario
de software de una empresa
• Permiten estimar el esfuerzo global de
mantenimiento de software
• Estimar el presupuestar el software dentro
de un plan de tecnologías de la información
Puntos de Función y Gestión de
IT 2/2
• Permiten estimar dotaciones de personal en
un plan de tecnologías de la información
• Permiten negociar contratos con
proveedores
– Desarrollo
– Mantenimiento
Los componentes de puntos de
Función
• Los datos disponibles para el usuario
– data function types
• Los procesos disponibles para el usuario
– transaction function types
Data function types
• Los archivos propios del producto
– internal logical files
• Los archivos reutilizados de otros productos
– external interface files
Transaction function types
• Los procesos de actualizar la base de datos
– external inputs
• Los procesos de explotacion de la base de
datos
– external outputs
• Los procesos de consulta de la base de datos
– external inquiries
EXTERNAL
INPUT
EXTERNAL
OUTUPUT
E.I.
INTERNAL LOGICAL FILES
E.O.
E.Q.
EXTERNAL
INQUIRY
EXTERNAL
INTERFASE
FILES
INTRODUCCION A LOS
PUNTOS DE FUNCION
Terminación
INTERNAL LOGICAL FILES
Inicio
Definición
• Es un grupo de datos o información de
control, lógicamente relacionados,
identificados por el usuario, y mantenidos
por un proceso que se realiza dentro de los
limites del producto
Identificados por el usuario
• Son reconocidos por un usuario
experimentado del producto
• No pueden crearse por motivos de
modelización, tecnología o performance
• Deben ser independientes de otros ILF para
su existencia
Ejemplos de ILF
•
•
•
•
•
Cliente en Ventas
Empleado en RR.HH.
Producto en Inventarios
Cheques en Bancos
Fórmulas en Manufactura
Algunas soluciones para
implementar ILF
• Modelo relacional:
– Kernel
– Associations con atributos que no son claves
foráneas
• Modelo Entidad Relación
– Entidades de Datos
• Modelo UML
– Objetos de Entidad
Datos Elementales
• Son atributos indivisibles que describen las
entidades incluidas en los limites del
producto
–
–
–
–
Numero de Empleado
Importe de un cheque
Fecha de ingreso
Cantidad de un artículo en un depósito
Información de Control
• Son datos utilizados por el producto para
controlar sus procesos elementales
– User Id y password
– Parámetros para realizar ejecuciones de
procesos
Mantenidos por
• Los Datos Elementales o Información de
Control son creados, modificados y
eliminados por procesos incluidos en los
límites del producto
Cuenta de ILF 1/2
• Un ILF puede ser mantenido por distintos
procesos incluidos dentro del mismo
producto, se lo cuenta una sola vez
• Un ILF puede ser mantenido por distintas
procesos incluidas en distintos productos, se
lo cuenta en cada una de los productos
Cuenta de ILF 2/2
• Un ILF identificado en un producto puede
ser referido por otras procesos en el mismo
producto
• No puede ser contado como un EIF y un
ILF simultáneamente
• Tampoco puede ser contado como EIF en
una ampliación del producto
Ejemplos correctos 1/2
• User ID y password mantenidas por el
producto
• Datos de auditoria mantenidos por el
producto (audit trail)
• Helps mantenidos por el producto
• Reglas de negocios y mensajes mantenidos
por el producto
Ejemplos correctos 2/2
• Parámetros mantenidos por el producto
• Archivos de transacciones erróneas,
mantenidas dentro del producto
• Datos históricos mantenidos separadamente
dentro del producto
• Archivos para backup realizados por el
producto
Ejemplos erróneos 1/2
•
•
•
•
Archivos temporarios
Varias iteraciones del mismo archivo
Archivos de trabajo
Extract o View files que repiten datos de
otros ILF o EIF
• Archivos creados por la tecnología de
implementación
Ejemplos erróneos 2/2
• Archivos referidos y no mantenidos por el
producto
• Archivos para backup realizados por fuera
del producto
INTERNAL LOGICAL FILES
Terminación
EXTERNAL INTERFACE
FILES
Inicio
Definición
• Es un grupo de datos o información de
control, lógicamente relacionados,
identificados por el usuario, y mantenidos
por un proceso que se realiza por fuera de
los limites del producto
Identificados por el usuario
• Son requerimientos específicos reconocidos
por un usuario experimentado
– En un Sistema de Ventas, se utiliza el archivo
de Productos, del Sistema de Inventarios, para
describir un item en una Factura
• Debe considerarse solo el grupo de datos
que es significativo para el producto que
los referencia
Datos Elementales
• Son los atributos indivisibles que componen
la vista de la entidad externa que interesan
al producto
–
–
–
–
Numero de Empleado
Importe de un cheque
Fecha de ingreso
Cantidad de un artículo en un depósito
Elementos de control
• Son datos utilizados por el producto para
controlar sus procesos elementales pero que
son mantenidos por otro producto
– User Id. y password
– Parámetros
– Tablas de Mensajes
Mantenidos por
• Los Datos Elementales o Información de
Control son creados, modificados y
eliminados por procesos no incluidos en el
producto
Cuenta de EIF
• Un EIF ha sido contado como ILF en al
menos un producto distintos al que se está
analizando
• No ha sido ya contado como ILF dentro del
mismo producto
• Se lo cuenta una sola vez, aun cuando sea
referenciado en múltiples procesos del
producto
Ejemplos Correctos 1/2
• Datos extraidos de otros productos
• User id y password mantenidas por fuera
del producto
• Datos de auditoria mantenidos por fuera del
producto
• Help mantenidos por fuera del producto
Ejemplos correctos 2/2
• Reglas de Negocios y mensajes mantenidos
por fuera del producto
• Parámetros mantenidos por fuera del
producto
Ejemplos Erróneos 1/2
• Datos recibidos de otro producto y que son
utilizados para mantener uno o mas ILF
dentro del producto, deben ser considerados
como External Input
• Datos mantenidos dentro del producto
donde son contados como ILF y que son
accedidos por otros productos, deben ser
contados como EIF en los otros productos
Ejemplos Erróneos 2/2
• Datos preparados y enviados por el
producto bajo estudio a otros productos,
deben ser contados como external outputs.
EXTERNAL INTERFACE
FILES
Terminación
COMPLEJIDAD FUNCIONAL
PARA ILF y EIF
Inicio
Definición
• Complejidad funcional por datos es la
medida, adecuada para el usuario, de la
riqueza en datos de la aplicacion
• Se mide en puntos de función
• A cada ILF o EIF se le asigna un valor de
puntos funcionales, de acuerdo con tablas
estandarizadas
Record Element Type (RET) 1/2
• Los ILF están compuestos por Records
(RET)
• Récords son sub grupos de datos
reconocibles por el usuario, los sub grupos
pueden ser optativos u obligatorios
• En el proceso de crear un récord debe
utilizarse al menos uno de los sub grupos
obligatorios
Record Element Type (RET) 2/2
• Los optativos pueden o no crearse
• Se debe contar un RET por cada sub grupo
obligatorio u opcional
• Si no hay sub grupos se cuenta el ILF o EIF
como un solo Record
• Una de ambas reglas se debe cumplir
Data Element Type (DET)
• Los ILF O EIF o sus récords están
compuestos por Data Element type (det)
• Son atributos únicos reconocibles por el
usuario que describen la entidad.
• Se incluyen las claves foráneas
Dato Elemental Reglas 1/2
• 1. Se cuenta un DET por cada campo,
atributo o columna reconocible por el
usuario en un ILF o EIF
• 2. Se cuenta un DET por cada dato en un
ILF, que existe porque el usuario exige que
una vinculación con otro ILF sea mantenida
Dato Elemental Reglas 2/2
• 3. Se cuenta como un solo DET un atributo
que aparece dos o mas veces en un ILF o
EIF por razones de tecnología o de
implementaron
• 4. Se cuentan como un solo DET campos
repetitivos, idénticos en formato y que
existen para permitir múltiples ocurrencias
del valor de un dato
Complejidad Funcional para ILF
Y EIF 1/2
• Existe una “Matriz de Complejidad” que les
asigna valores de complejidad a los ILF e
EIF
• La matriz asigna valores de complejidad:
Low, Average y High de acuerdo con el
numero de ret y det del EIL o EIF
Complejidad Funcional para ILF
Y EIF 2/2
• Existe una “Matriz de Contribución” que les
asigna puntos de función a los ILF e EIF de
acuerdo con la complejidad determinada
usando la matriz anterior
Puntos de Función por datos: su
cuenta
• 1. Se identifican los ILF e EIF del producto
• 2. Se miden los puntos de función
correspondientes a cada uno
• 3. Se suman los puntos de función de todos
los ILF e EIF
COMPLEJIDAD FUNCIONAL
PARA ILF y EIF
Terminación
EXTERNAL INPUTS
Inicio
Proceso Elemental 1/2
• Es la unidad indivisible de actividad según
la visión del usuario
• Debe ser auto contenido y dejar el producto
al terminar su ejecución en un estado
consistente
• Puede implementarse como uno o más
Componentes de Software o Technical
Solutions Components
Proceso Elemental 2/2
• Incluye Datos Elementales (DET)
• Incluye File Type Referenced (FTR)
• Incluye Lógica de Procesamiento
Lógica de procesamiento
• Requerimientos específicos pedidos por el
usuario para ser incluidos en un proceso
elemental
• Reglas de Negocios
– Reglas de Integridad
– Reglas de Derivación
• Referencias a ILF o EIF
File Types Referenced
• Son los Internal Logical Files y External
Interaface Files que son leídos o
actualizados por un Procesos elemental
External Input Definición 1/3
• Es un proceso elemental del producto que
procesa datos o información de control que
son ingresados desde fuera de los limites
del producto
• Es utilizada para actualizar uno o mas
Internal Logical Files
• Todos los datos obligatorios deben ser
ingresados
External Input Definición 2/3
• Pueden ser ingresados por usuarios
• Pueden ser enviados desde otra aplicación
• Pueden ser enviados desde un dispositivo de
hardware
• Pueden ser almacenados en los ILF o ser
consumidos por el proceso del External
Input
External Input Definición 3/3
• Los datos ingresados deben diferir de los
datos de otros External Input
• Su lógica de procesamiento debe ser distinta
de las lógicas de los otros External Inputs
del producto bajo estudio
• Los File Type Referenced (FTR) deben ser
distintos de los otros External Inputs del
producto bajo estudio
Ejemplos correctos 1/2
• Ventanas que mantienen ILF o ingresan
información de control
• Ingresos batch para mantener ILF
• Archivos de transacciones enviados desde
otras aplicaciones para actualizar ILF, si hay
múltiples tipos de transacciones, cada tipo
puede exigir un External Input exclusivo
Ejemplos correctos 2/2
• Mantenimiento de cualquier tipo de ILF
– Mensajes, Helps, Parámetros
• Conversión de datos que son migrados de
un producto a otro nuevo; deben contarse
para el proceso de desarrollo, pero no para
el nuevo producto
Ejemplos Erróneos 1/3
• Datos de otro producto que no mantienen
ningún ILF, se contaran como un EIF
• La entrada a un External Inquiry
• Menúes usados para selección o
navegación, pero que no mantienen al
menos un ILF
• Pantallas de log-in que permiten entrar pero
no mantienen ningún ILF
Ejemplos Erróneos 2/3
• Múltiples métodos para invocar la misma
lógica de procesamiento
– Dos botones en una ventana que invocan la
misma acción para el Usuario
• Uso del Mouse para seleccionar
campos/datos a ingresar en un producto
• Actualizar o borrar datos en una pantalla
Ejemplos Erróneos 3/3
• Respuesta a mensajes que exigen al usuario
confirmar o rechazar transacciones
EXTERNAL INPUTS
Terminación
COMPLEJIDAD FUNCIONAL
PARA EI, EO y EQ
Inicio
Definición
• Complejidad funcional por transacciones es
la medida adecuada para el usuario, de la
riqueza en funciones de la aplicacion
• Se mide en puntos de función
• Se asigna un valor en puntos de función de
acuerdo con tablas estandarizadas a cada
External Input, External Output, External
Inquiry
EXTERNAL INPUTS
• A cada EI se le asigna una complejidad
funcional: Low, Average o High; basada en
el numero de Data Element types (DET) y
File Type Referenced (FTR) asociados con
el External Input
• Para esta asignación se usan tablas
estandarizadas
EI: Data Element Types 1/3
• Son campos/atributos únicos reconocibles
por el usuario, que cruzan el limite de la
aplicacion
• Se debe contar un DET por cada campo
(información de control/dato) que cruza los
limites de la aplicacion y que es utilizado
para completar el EI
EI: Data Element Types 2/3
• Se debe contar un DET por cada campo que
no es ingresado por el usuario o desde otro
producto pero es generado por el producto y
es mantenido en un ILF
EI: Data Element Types 3/3
• Se debe contar un solo DET por
– Todos los mensajes que informan sobre errores
cometidos o que el proceso ha terminado
– La capacidad para controlar la acción que
desarrolla el EI, por ejemplo botones en una
ventana
EI: File Types Referenced
• Numero total de ILF actualizados o leídos
mas numero total de EIF leídos
• Se debe contar un FTR por:
–
–
–
–
cada ILF mantenido
cada ILF leído
cada EIF leído
si un ILF es leído y mantenido en el mismo
proceso elemental se lo cuenta una sola vez
Puntos de función por External
Inputs: su cuenta
• 1. Se identifican los External Input del
producto
• 2. Se miden los puntos de función
correspondientes a cada uno
• 3. Se suman los puntos de función de todos
los External Input
COMPLEJIDAD FUNCIONAL
PARA EI, EO y EQ
Terminación
EXTERNAL OUTPUTS
Inicio
DEFINICION 1/2
• Es un proceso elemental del producto que
genera datos y/o información de control
que existen dentro de los limites de la
aplicacion o se derivan de los mismos
• Puede leer varios ILF o EIF
• Puede actualizar EIF
• Un reporte, cualquiera sea su complejidad
es un solo External Output
DEFINICION 2/2
• Datos elementales son todos los campos
contenidos en un reporte
• Sus datos elementales deben diferir de los datos
elementales de otros External Outputs en el
mismo producto
• Su lógica de procesamiento debe ser distinta de las
lógicas de los otros External Outputs del proceso
bajo estudio
LOGICA DE
PROCESAMIENTO
• Requerimientos específicos pedidos por el
usuario para ser incluidos en un proceso
elemental
–
–
–
–
Datos elementales a incluir
Datos a generar
Fórmulas de Cálculo
Referencias a ILF o EIF
EJEMPLOS CORRECTOS 1/3
• Reportes que requieren algoritmos o
cálculos:
– textos impresos
– desplegados en pantalla
– gráficos impresos o desplegados
• Etiquetas con código de barras
• Microfichas
• Cheques emitidos por el producto
EJEMPLOS CORRECTOS 2/3
• Una respuesta enviada a un actuator
• Archivos de transacciones enviados a otros
productos
– Un archivo enviado desde Facturación a
Contabilidad
EJEMPLOS CORRECTOS 3/3
• Si hay múltiples tipos de transacciones,
cada tipo puede exigir un external Output
exclusivo
• Un informe de conversión de datos que son
migrados de un producto a otro nuevo,
deben contarse para el proceso de
desarrollo, pero no para el nuevo producto
• Una respuesta computerizada sobre una
línea telefónica
EJEMPLOS ERRONEOS 1/3
• Distintos reportes con los mismos datos
• Totales por cortes de control en un reporte
con detalles
• La salida a un External Inquiry
• Refresco o cancelación de una pantalla
• Mensajes de error originados en un External
Input o en la entrada de un External Inquiry
EJEMPLOS ERRONEOS 2/ 3
• Múltiples Métodos para invocar la misma
lógica de procesamiento
– Dos botones en una ventana que invocan la
misma acción para el Usuario
• Idénticos datos enviados a mas de un
proceso
• Actualizar o borrar datos en una pantalla
EJEMPLOS ERRONEOS 3/3
• Pantallas de log-off
• Mensajes que confirman que los datos han
sido procesados
• Reportes no planeados que el usuario
controla a través de lenguajes como SQL
COMPLEJIDAD FUNCIONAL
PARA EO
Inicio
DEFINICION
• Cada EO se le asigna una complejidad
funcional basada en el numero de Data
Element types (det) y File type referenced
(ftr) asociados con el External Output
EO: DATA ELEMENT TYPES
1/2
• Son campos/atributos únicos reconocibles
por el usuario, que cruzan el limite del
proceso
• Se debe contar un det por cada
– campo/atributo (información de control/dato)
que aparece en el External Output.
• No se deben contar det: títulos, cabezas de
columnas, nombre de campos, etc
EO:DATA ELEMENT TYPES 2/
2
• Se debe contar un solo det por:
– Información textual
– Cada tipo de etiqueta y cada tipo de equivalente
numérico en un Gráfico
– En un Gráfico de Tortas, dos DET
– Un campo lógico almacenado físicamente como
campo múltiple, por ejemplo una fecha
(dd/mm/yyyy)
EO:FILE TYPES
REFERENCED
• Numero total de Internal Logical Files
leídos o actualizados mas numero total de
External Interface Files leídos
PUNTOS DE FUNCION EO: SU
CUENTA
• 1. Se identifican todos los External Output
del producto
• 2. Se miden los puntos de función
correspondientes a cada uno
• 3. Se suman los puntos de función de todos
los External Output
EXTERNAL OUTPUTS
Terminación
EXTERNAL INQUIRY
Inicio
DEFINICION 1/3
• Es un proceso elemental de la aplicacion
que utiliza un Input y un Output para
recuperar información
• El Input ingresa datos para el proceso de
recuperación
• El Output no contiene datos derivados
DEFINICION 2/3
• Recupero y edición de datos no constituyen
derivación
• No se actualizan ILF
• El proceso elemental incluye: el Input, la
recuperación y el Output
• El Input es validado
DEFINICION 3/3
• Sus datos deben diferir de los datos de otros
External Inquiry
• Su lógica de procesamiento debe ser distinta
de las lógicas de procesamiento de otros
External Inquiry en el proceso bajo estudio
EJEMPLOS CORRECTOS
• Datos recuperados de uno o mas ILF/EIF
• Funciones de usuario como:
– view, lookup, browse, display
• Recuperación de datos por:
– Electronic Data Interface
– Teléfono, using tones
EJEMPLOS ERRONEOS 1/2
• Múltiples medios para invocar la misma
lógica de proceso
• Consultas que son invocadas desde
múltiples pantallas (se cuenta una sola vez)
• Menúes para navegación o selección pero
que no leen ILF o EIF
• Documentación on line del sistema
EJEMPLOS ERRONEOS 2/2
• Pantallas de log-in que permiten entrar pero
que no recuperan datos
• Datos derivados en lugar de recuperados,
contar como External Output
• Mensajes de error o confirmación
EXTERNAL INQUIRY
COMPLEJIDAD FUNCIONAL
• Se calculan separadamente para la entrada y
la salida del External Inquiry
• Se cuentan para ambas:
– Data Element Type (det)
– File Types Referenced (ftr)
• Se asigna al External Inquiry la mayor de
ambas
COMPLEJIDAD FUNCIONAL
ENTRADA AL EQ
• Se cuenta un det por cada:
– Campo que ingresa parámetros para criterios de
selección de datos
– Por todos los mensajes de error o confirmación
emitidos por el proceso elemental
– Línea de comando, boton, etc. que permiten
elegir la acción a ser realizada
COMPLEJIDAD FUNCIONAL
SALIDA DEL EQ 1/2
• Se debe contar un det por cada
– campo/atributo que cruza los limites de la
aplicacion (datos e información de control)
– Un dato lógico que es presentado como
múltiples campos físicos
– Cada tipo de label y cada tipo de equivalente
numérico en gráficos
COMPLEJIDAD FUNCIONAL
SALIDA DEL EQ 2/2
• No se debe contar como det:
– Literales, títulos, cabezas de columnas,
nombres de campos
– Números de paginas, información de posición
(fila x de y), comandos para paginar (previa,
siguiente)
– Fechas y tiempo
COMPLEJIDAD FUNCIONAL
EQ:FILE TYPE REFERENCED
• Se debe contar un ftr por cada
– ILF elido
– EIF elido
• los ILF o EIF leídos se cuentan
separadamente en la entrada y en la salida
PUNTOS DE FUNCION EQ: SU
CUENTA
• 1. Se identifican todos los External Inquiry
del producto
• 2. Se miden los puntos de función
correspondientes a cada uno
• 3. Se suman los puntos de función de todos
los External Inquir
EXTERNAL INQUIRY
Terminación
Descargar

Function Points 20070307