puntos de funcion
-
Upload
darwin-cajamarca -
Category
Documents
-
view
485 -
download
7
Transcript of puntos de funcion
1
Puntos de Función
Puntos de Función 2
Plan
• Visión general• IFPUG
Frontera de la aplicaciónTransaccionesDatos
Puntos de Función 3
PF - Visión general
Objetivo: traducir en un Número el tamaño de la funcionalidad que brinda un producto de software
• Desde el Punto de vista del usuario• Suma ponderada de características del producto: Transacciones
Nro. Entradas Externas (EI- External Input) Nro. Salidas Externas (EO- External Output) Nro. Consultas Exts. (EQ- External inQuiry)
Datos Nro.Archivos Int. Lógicos (ILF- InternalLogical File) Nro.Arch. Interfaz Externa (EIF-External Interface File)
Puntos de Función 4
Modelo para contar PF
EI
EQ
EO
Archivos Lógicos Internos (ILF)
Archivos de InterfazExternos (EIF)
Frontera de la aplicación
datos derivados y/o afecta
comportamiento
14 Características Generales de la
Aplicación
PF = PFSA x Factor de Ajuste
transacciones datos
No mantenidos por la aplicación
Puntos de Función 5
Estandarización por IFPUGFactores de ajuste
comunicaciones de datos procesamiento distribuido consideraciones de performance configuración operacional altamente utilizada entrada de datos on-line eficiencia para el usuario final (diálogos interactivos) actualización on-line y respaldo y recuperación procesamiento interno complejo tasa de transacciones reusabilidad facilidad de instalación facilidad de operación uso en múltiples sitios facilitar el cambio
Puntos de Función 6
Visión del Cliente-UsuarioNo todo archivo físico o tabla se traduce en un
ILF (o EIF)No todo archivo o tabla tiene por qué ser un ILF
o EIF (archivos transitorios o de trabajo NO se cuentan)
Una transacción que ocurre en múltiples entradas físicas (archivo de transacciones o pantallas, con idéntica lógica de procesamiento, se considera como una sola transacción
Un mismo reporte físico, pantalla o archivo de salida pueden corresponder a más de un EO/EQ
Reordenar o reacomodar los datos no se considera como lógica de procesamiento única
Puntos de Función 7
Frontera de la Aplicación
• Define lo que es “externo” a la aplicación• Interfaz entre lo “interno” y el “mundo exterior”• Se puede concebir como una “membrana” que
atraviesan los datos procesados por las transacciones (EI, EO, EQ)
• Encierra los archivos lógicos mantenidos por la aplicación(ILF)
• Asiste en la identificación de los archivos lógicos referenciados pero no mantenidos por la aplicación (EIF)
• Depende de la visión del negocio y externa del usuario
• Es independiente de consideraciones técnicas o de implementación
Puntos de Función 8
Frontera de la Aplicación (2)
RR.HH.
Contabilidad
Ventas
Usuario 1
Fronteras definidas a partir de la visión del
negocio
¿cómo impactaría en la cuenta total de PF considerar esta otra
frontera?
Puntos de Función 9
Frontera de la Aplicación (3)• Incide en la cuenta total de PF
al partir una aplicación se incrementan los PF totales porque los ILF se cuentan una vez como tales (por lo menos) y también se cuentan como EIF
• Se determina a partir de la visión de usuario basada en áreas funcionales separadas y NO en consideraciones técnicas una aplicación Cliente/Servidor es una unidad; la
frontera debe englobar a ambos: Cliente y Servidor una aplicación que se extiende para que funcione en
Internet no se puede (por eso solo) considerar como dos aplicaciones a los efectos de los PF
• Desconfiar de la frontera si: no se identifican EIF hay demasiados EIF o un mismo archivo es ILF en varias
aplics.
Puntos de Función 10
Contar TransaccionesPasos:• Identificar transacciones• Asignar a cada una un tipo (EI, EO, EQ)• Identificar la cantidad de DET y FTR• Asignar a cada una un valor de complejidad (Alta,
Media, Baja) en función de la cantidad de DET y FTR
Definiciones:• Data Element Type (DET):
es un campo único (no repetitivo) reconocible por el usuario
• File Type Referenced (FTR): es un tipo de archivo al que se hace referencia en una
transacción; tiene que ser un ILF o EIF
Puntos de Función 11
Tipos de transaccionesDefiniciones:• EI (External Input) - Entrada Externa
Proceso elemental en el que datos cruzan la frontera de la aplicación de afuera hacia adentro. La intención primordial es mantener uno o más ILF y/o alterar el comportamiento del sistema
• EO (External Output) - Salida Externa Proceso elemental en el que datos derivados a partir de
uno o más ILF o EOF cruzan la frontera de adentro hacia fuera. Un EO puede actualizar un ILF o alterar el comportamiento del sistema.
• EQ (External Query) - Consulta Externa Proceso elemental en el que datos o información de
control cruzan la frontera de adentro hacia fuera. NO incluye datos derivados y NO mantiene ningún ILF y NO altera el comportamiento del sistema
Puntos de Función 12
Proceso ElementalDefinición:• Es la mínima unidad de actividad que tiene un
significado para el Usuario debe ser autocontenido, no requiere de otra actividad
para que adquiera significado debe dejar al sistema en un estado consistente
Ejemplo:si el usuario desea agregar un empleado, puede requerir
incorporar: nombre fecha de ingreso CI sueldo estado civil fecha de nacimiento
Este proceso elemental se
completa al ingresar todos los datos
requeridos
Puntos de Función 13
Tipos de Transacciones - Resumen
Función EI EO EQ
Altera el comportamiento del sistema IP O NO
Mantiene uno o más ILF IP O NO
Presenta información al usuario O IP IP
Presenta datos derivados al usuario O IP NO
IP= Intención Primordial
O= Opcional
Puntos de Función 14
Proceso en TransaccionesTipo de Proceso EI EO EQ
Acepta datos o inf. de control que entra SI p pPresenta información fuera de la frontera p SI SI
Altera el comportamiento del sistema p* p* NO
Al menos se actualiza un ILF p* p* NO
Fórmulas matemáticas y cálculos p p* NOCrea datos derivados p p* NO
Al menos un ILF o EIF referenciado p p SIRecupera datos o información de control p SI SI
Validaciones p p pSe convierten valores equivalentes p p p
Selección y filtro de datos p p p
Se evalúan condiciones p p pReordena un conjunto de datos p p p
p=posible
p*=uno por lo menos debe estar presente
Puntos de Función 15
Transacciones - Unicidad
Se cuenta si se cumple al menos una de:• Para EI:
lógica distinta de otras EI el conjunto de DET distinto del de otras EI conjunto de ILF o EIF distinto del de otras EI
• Para EO, EQ: lógica distinta de otras EO o EQ el conjunto de DET distinto del de otras EO o EQ conjunto de ILF o EIF distinto del de otras EO o EQ
Puntos de Función 16
Complejidad de Tr - Número de FTR• Contar un FTR por cada ILF mantenido• Contar un FTR por cada ILF o EIF leído durante el
proceso del EI• Contar sólo un FTR por cada ILF que es leído y
mantenidoEjemplo: Retiro de una cuenta bancariaILF en la aplicación:
Cuenta Movimientos Cotizaciones dólar
El proceso de retiro lee la cuenta, verifica saldo , graba movimiento y actualiza la cuenta.2 FTR
Puntos de Función 17
Complejidad de Tr - Número de DET• Contar un DET por cada campo reconocible por el
usuario, no repetido, que entra o sale de la aplicación atravesando su frontera y es requerido para completar el EI
• No contar campos leídos o derivados por la aplicación y almacenados en un ILF si los campos no cruzaron la frontera
• Contar un DET por la posibilidad de que el sistema envíe un mensaje fuera de la frontera de la aplicación para indicar un error , confirmar que el proceso está completo o verificar si el proceso debiera continuar
• Contar un DET por la posibilidad de especificar una acción, mismo si hay múltiples métodos para invocar el mismo proceso lógico
Puntos de Función 18
Complejidad de EI - Número de DETEjemplo 1 - agregar un empleado con los datos:
nombre fecha de ingreso CI fecha de nacimiento
Ejemplo 2 - ingreso de datos de factura de proveedor: código proveedor (E) nombre proveedor (S) fecha factura (E) importe total (E)
° * ( código artículo° precio unitario° cantidad° importe) (E)
4 DET
8 DET
Puntos de Función 19
Complejidad de Tr – Nro. de DETNO CONTAR:• Campos recuperados o derivados por el sistema y
almacenados en un ILF por el proceso elemental, si no cruzaron la frontera de la aplicación
Ejemplo: Al imprimir cheques, el registro en el archivo se marca para no volver a imprimirlo
Esta marca NO se cuenta como DET
• Literales Ejemplo: Los títulos (si son fijos) no se cuentan como DET
• Variables generadas por el sistema relacionadas con el paginado o fecha y hora
Ejemplos: nros. de página información de posicionamiento (filas 32 a 56 de 781) Comandos para paginar (anterior, siguiente, barra de
posicionamiento) Fecha y hora
Puntos de Función 20
Caracterización de la complejidad
Para EI 1 a 4 DET 5 a 15 DET 16 o más DET
0 a 1 FTR Baja Baja Media
2 FTRs Baja Media Alta
3 o más FTRs
Media Alta Alta
Para EO/EQ 1 a 5 DET 6 a 19 DET 20 o más DET
0 a 1 FTR Baja Baja Media
2 a 3 FTRs Baja Media Alta
4 o más FTRs
Media Alta Alta
Puntos de Función 21
Contribución de Transacciones
\ ComplejidadTipo de Transacción
Baja Media Alta
External Input (EI)
3 4 6
External Output (EO)
4 5 7
External inQuiry (EQ)
3 4 6
Puntos de Función 22
Contribución de TransaccionesEjemplo - Aplicación integrada por:
• Alta cliente (#cliente, nombre, dirección)
• Listado de clientes (#cliente, nombre, dirección)
• Consulta de la cantidad de clientes existentes
• un único ILF (Clientes)
Transacción Tipo Nivel Complejidad
Cuenta
Alta Cliente EI Baja 3Listado Clientes EQ Baja 3
Cantidad Clientes EO Baja 4Total de Contribución de
Transacciones:10
Puntos de Función 23
Consulta de EmpleadosSistema de RRHH
Empleado Tareas Asignaciones Informes Ayuda
Lista de Empleados
Apellido Nombre CI Sueldo
Pérez Juan 1.234.567-8 10.000
Martínez Pedro 2.345.678-9 20.000
Fernández María 3.456.789-0 30.000
Giménez Ana 4.567.890-1 40.000
Detalle Núcleo Familiar Cancelar
Puntos de Función 24
Consulta de EmpleadosArchivo Empleados: (CI, apellido, nombre,
sueldo)
• EQ• 1 FTR• DET:
Nombre y Apellido (nombre)CISueldoAcciones (Detalle, Núcleo Familiar, Cancelar)
• Complejidad: Baja• Contribución: 3 PF
Puntos de Función 25
Consulta ImplícitaLa modificación de datos del empleado es
incómoda si no parte de los datos que existen.
El usuario no pidió una consulta de los datos, sin embargo la espera.
¿Cómo considerarla?EQ
Si ya está prevista la consulta del empleado ¿se debe contar dos veces?
Puntos de Función 26
Archivo para otra aplicaciónAl fin del día, la información de los cheques
impresos por la aplicación de RRHH se envía a la aplicación Contable usando un archivo de texto
Archivos involucrados:Cheque (#cheque, importe, banco, cuenta, orden)Cheque_txt (linea)
¿Es un proceso elemental? En caso afirmativo, ¿de qué tipo y complejidad?
EQ , 1 FTR, 5 DET, Baja
Puntos de Función 27
Datos
Puntos de Función 28
Modelo para contar PF
EI
EQ
EO
Archivos Lógicos Internos (ILF)
Archivos de InterfazExternos (EIF)
Frontera de la aplicación
datos derivados y/o afecta
comportamiento
14 Características Generales de la
Aplicación
PF = PFSA x Factor de Ajuste
transacciones datos
Puntos de Función 29
Contar DatosPasos:• Identificar Archivos• Asignar a cada uno un tipo (ILF, EIF)• Identificar la cantidad de RET y DET• Asignar a cada uno un valor de complejidad (Alta,
Media, Baja) en función de la cantidad de RET y DET
Definiciones cortas:• Data Element Type (DET):
es un campo único (no repetitivo) reconocible por el usuario (ya lo habíamos visto al contar funciones)
• Record Element Type (RET): es un subconjunto de campos de un archivo,
reconocible como tal por el usuario
Puntos de Función 30
Tipos de Archivos
Internal Logical File (ILF)• Es un grupo de datos o de información de control,
lógicamente relacionado, identificable por el usuario y mantenido dentro de la frontera de la aplicación.
External Interface File (EIF)• Es un grupo de datos o de información de control,
lógicamente relacionado, identificable por el usuario, referenciado por la aplicación, pero mantenido fuera de la frontera de la aplicación.
Nota: Un EIF para una aplicación tiene que ser un ILF para alguna otra.
Puntos de Función 31
Record Element Type (RET)• 2 tipos de subgrupos:
Opcionales - al crear una instancia de los datos, puede no estar presente ninguno
Obligatorios - el usuario debe ingresar los datos de al menos un subgrupo obligatorio
Ejemplo: Aplicación de RRHH. Empleado tiene datos generales y además puede ser mensual o jornalero. Adicionalmente, puede tener personas a su cargo (núcleo familiar).
RET: Mensual (incluyendo generales) - obligatorio Jornalero (incl. generales) - obligatorio Núcleo Familiar - opcional
Nota: Los subgrupos no necesariamente son disjuntos
Puntos de Función 32
Data Element Type (DET)• Contar un DET por cada campo no repetitivo,
reconocible por el usuario, que se recupera o mantiene desde ILF o EIF a través de un proceso elemental
Ejemplos: Número de cuenta que se almacena en varios
campos cuenta como 1 (un) DET Imagen previa y posterior de un archivo con 10
campos, para auditoría, cuenta como 2 DET (uno por la previa y otro por la posterior)
El registro de fecha y hora de alta/modificación en un archivo, cuenta como un DET si fue requerido por el usuario
Puntos de Función 33
Caracterización de la complejidad
AltaAltaMedia6 o más RET
AltaMediaBaja2 a 5 RET6
MediaBajaBaja1 RET
51 o más DET 20 a 50 DET1 a 19 DETPara ILF/EIF
1075Ext.Interface File(EIF)
15107Int. Logical File (ILF)
AltaMediaBaja \ ComplejidadTipo de Archivo
Contribución de datos
Puntos de Función 34
Contribución de DatosEjemplo - Aplicación mantiene los archivos:
• Tarea ( #tarea, nom_tarea, escala)
• Descripcion_Tarea ( #tarea, #linea, l_descrip)
• Empleado ( CI, nom_empleado, fecha_nac, fecha_ingreso, #tarea)
ILF identificados: Tarea, Empleado
Tarea: 2 RET - Tarea, Descripcion_Tarea
5 DET - #tarea, nom_tarea, escala, #linea, l_descrip
Empleado: 1 RET
5 DET - CI, nom_empleado, fecha_nac, fecha_ingreso, #tarea
Puntos de Función 35
Contribución de Datos (cont.)
14Total de Contribución de Datos :
ILF
ILF
Tipo
7BajaTarea
7BajaEmpleado
CuentaNivel Complejidad
Archivo
Puntos de Función 36
UsuarioDefinición:• Un usuario es cualquier persona que especifica
Requerimientos Funcionales de Usuario y/o cualquier persona o cosa que se comunica o interactúa con el software
Ejemplos:• Para la aplicación de RRHH incluye al personal
del departamento de RRHH que interactúan con la aplicación y a la aplicación contable que interactúa para recibir la información de los asientos contables correspondientes a la liquidación de sueldos
Puntos de Función 37
Contribución de Datos – Guía• ¿Los datos son un grupo lógico que soporta
requerimientos del usuario?
• Una aplicación puede usar un mismo ILF o EIF en múltiples procesos, pero el archivo se cuenta una sola vez
• Un mismo archivo no se puede contar a la vez como ILF y EIF; si cumple ambos criterios, contarlo como ILF
• Si un grupo de datos no fue contado como ILF ni EIF, contar sus DET para el ILF o EIF que incluye al grupo
• No asumir que un archivo físico, tabla o clase de objetos corresponde a un archivo lógico desde el punto de vista del usuario
• No asumir que todo archivo físico debe ser contado o incluido como parte de un ILF o EIF
Puntos de Función 38
Contribución de Datos – Guía(2)• ¿Dónde se mantienen los datos, dentro o fuera de la
aplicación?
• Archivos lógicos mantenidos por más de una aplicación se consideran como ILF al contar cada una
• Recordar que en el caso anterior, en cada aplicación sólo se consideran los DET que usa y estos se determinan desde el punto de vista de cada aplicación
Puntos de Función 39
Contribución de Datos – Ejemplo 1Usuario desea poder:
• Ingresar, consultar y listar los datos de tareas
• La información relativa a las tareas consiste en:
• #tarea, nom_tarea, grado
• (#tarea,nro_linea, linea_descripcion)
dos grupos de datos (tarea y descripción)
(1) ILF con (2) RET
5 DET (#tarea se cuenta sólo una vez)
Puntos de Función 40
Contribución de Datos – Ejemplo 2Para la aplicación de RRHH el Usuario desea:
• Poder restringir el acceso a cada pantalla a ciertas personas
• Poder cambiar estas restricciones
• Emitir un listado con todos los agregados o cambios en las restricciones de acceso que incluya los datos:
• Id de usuario que hizo el cambio
• Id de pantalla cuya seguridad se cambió o agregó
• La Id de usuario y los datos de seguridad anteriores y posteriores
• Fecha y hora del cambio