31
UNIVERSIDAD SAN PEDRO INGENIERÍA INFORMÁTICA Y DE SISTEMAS CURSO: INGENIERÍA DE SOFTWARE I DOCENTE: ING. EDWIN CIEZA MOSTACERO ALUMNOS: CORPUS MECHATO JULIO GIL AVALOS PATRICIA NARVAEZ CASTILLO DANIEL ROLDAN SALINAS RONALD ESTIMACIÓN DEL SOFTWARE PUNTOS DE FUNCION

Puntos de Función g 2

Embed Size (px)

DESCRIPTION

Ing informatica y Sistemas

Citation preview

UNIVERSIDAD SAN PEDRO

INGENIERÍA INFORMÁTICA Y DE SISTEMAS

CURSO: INGENIERÍA DE SOFTWARE I

DOCENTE: ING. EDWIN CIEZA MOSTACERO

ALUMNOS:

CORPUS MECHATO JULIO

GIL AVALOS PATRICIA

NARVAEZ CASTILLO DANIEL

ROLDAN SALINAS RONALD

CHIMBOTE – PERU

2014

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

INDICE DE CONTENIDOINTRODUCCION..................................................................................................................................3

MARCO TEORICO................................................................................................................................3

1. Puntos de Función.................................................................................................................3

A. Características de los Puntos de Función..........................................................................3

B. Cinco Componentes Principales........................................................................................4

2. PASOS BÁSICOS DEL METODO DE ESTIMACION PUNTOS DE FUNCIÓN...............................6

PASO 1. Determinar el tipo de conteo de puntos de función.....................................................6

PASO 2. Identificar el alcance del conteo y la frontera de la aplicación.....................................8

PASO 3. Calcular Funciones de Datos.........................................................................................9

PASO 4. Calcular las funciones de transacción.........................................................................12

PASO 5. Determinar los puntos de Función sin Ajuste.............................................................15

PASO 6. Determinar el factor de complejidad técnica para ajuste...........................................17

PASO 7. Calcular los Puntos de Función Ajustados...................................................................19

PASO 8. Calcular Esfuerzo y Duración del Proyecto..................................................................20

CONCLUSIÓN:...................................................................................................................................22

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 1

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

INDICE DE TABLA

Tabla 1: Funciones del Sistema de Planilla.........................................................................................8Tabla 2: Identificación de los Archivos Incluidos..............................................................................11Tabla 3: Nivel de Complejidad..........................................................................................................11Tabla 4: Resultado Nivel de Complejidad para los ILF y EIF..............................................................11Tabla 5: Identificación de lo EI con sus DET y FTR............................................................................13Tabla 6: Nivel de Complejidad para EI..............................................................................................13Tabla 7: Resultado de Nivel de Complejidad para los EO.................................................................13Tabla 8: Identificación de los EQ con sus DET y FTR.........................................................................14Tabla 9: Resultado Nivel de Complejidad para los EQ......................................................................14Tabla 10: Puntos de Función Sin Ajustar..........................................................................................16Tabla 11: Calculo de Complejidad Técnica.......................................................................................17Tabla 12: Resultado de Cálculo de Complejidad Técnica..................................................................18Tabla 13: Estimación de Esfuerzo.....................................................................................................20

INDICE DE IMÁGENES

Ilustración 1: Conteo Durante el Desarrollo.......................................................................................6Ilustración 2: Diagrama de Entidad Relación......................................................................................9

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 2

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

INTRODUCCION

En la actualidad es necesario calcular y estimar el esfuerzo y tamaño del proyecto en etapas muy

tempranas del desarrollo del mismo. Sin embargo, si en el ámbito de software se hacen las

estimaciones en estas fases iniciales, dichas previsiones pueden estar basadas en unos

requerimientos erróneos o incompletos, por lo que disminuye mucho su fiabilidad.

El proceso de estimación del costo de un producto de software está formado por un conjunto de

técnicas y procedimientos que se usan en la organización para poder llegar a una predicción fiable.

Éste es un proceso continuo, que debe ser usado y consultado a lo largo de todo el ciclo de vida

del proyecto.

MARCO TEORICO

1. PUNTOS DE FUNCIÓN

Una mejor forma de estimar el esfuerzo requerido para desarrollar un proyecto de software

es la determinación de los “Puntos de Función” asociados a él.

La predicción precisa del tamaño de un software ha preocupado la industria del software por

más de 45 años. Los Puntos de Función se están convirtiendo en un estándar aceptado para la

medición del tamaño del software.

Los Puntos de Función miden el software cuantificando la funcionalidad provista al usuario en

base principalmente en el diseño lógico. Para ello descompone los sistemas en componentes

más pequeños de tal manera que los usuarios, desarrolladores y administradores los

entiendan y analicen mejor.

(Elliot, 2012)

A. Características de los Puntos de Función

Ser un método independiente de las herramientas de análisis, diseño y

programación. Debido a que se preocupa sólo de la complejidad de las funciones a

implementar.

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 3

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

Requerir de una descomposición funcional del proyecto de software a realizar, en

términos tales que se detecten todas las piezas elementales que componen el

producto final (Funciones Elementales).

Estimar la “Cantidad de Puntos de Función” de las funciones medidas, se realiza

contando la cantidad d entradas, salidas, archivos, consultas e interfaces que

utiliza. A mayor cantidad, mayor es el “Peso de Complejidad” que se le asignará.

Ajustar la estimación del esfuerzo requerido, por la vía de determinar la presencia

de ciertos elementos que dificultan el desarrollo del proyecto.

Los beneficios de utilizar esta técnica son evidentes, permite realizar la estimación

del trabajo requerido en una etapa temprana del proyecto y es independiente del

entorno tecnológico a utilizar.

(Elliot, 2012)

B. Cinco Componentes Principales

Una buena fuente de información para determinar las entradas externas (EI’s) son las

formas de pantalla y las formas de diálogo, o bien cualquier forma de entrada. Las

entradas adicionales de otras aplicaciones deben actualizar los registros lógicos

internos (ILF’s) de la aplicación que se está midiendo.

1) External Imputs (EI)

La entrada externa es un proceso elemental en el cual los datos cruzan los

límites de afuera hacia adentro. Estos datos pueden venir de una pantalla de

entrada de datos o de otra aplicación. Los datos son usados para mantener uno

o más archivos lógicos internos (ILF’s). Los datos pueden ser de información de

control o del negocio. Si son de información de control, no se tiene que

actualizar un archivo lógico interno.

2) External Ouputs (EO)

Una salida externa es un proceso elemental en el cual los datos derivados

cruzan los límites de adentro hacia afuera. Los datos crean reportes o archivos

de salida enviados a otras aplicaciones. Estos reportes y archivos son creados

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 4

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

de uno o más archivos lógicos internos (ILF’s) o archivos de interface externos

(EIF’s). Los datos derivados son datos procesados más allá de la edición directa

de información de archivos lógicos internos. También son usualmente el

resultado de algoritmos o cálculos.

3) External Inquiry (EQ)

Una consulta externa es un proceso elemental con componentes de entrada y

de salida que resultan en la adquisición de datos de uno o más archivos lógicos

internos (ILF’s) o archivos de interface externo (EIF’s). El proceso de entrada no

actualiza ningún archivo lógico interno (ILF’s). Y el proceso de salida no

contiene datos derivados.

4) Internal Logical Files (ILF)

Un archivo lógico interno es un grupo de datos definidos por el usuario que

están relacionados lógicamente, que residen en su totalidad dentro de los

límites de la aplicación y que son mantenidos a través de entradas externas

(EI’s).

5) External Interface File (EIF)

Un archivo de interface externo es un grupo de datos definidos por el usuario

que están relacionados lógicamente y que sólo son usados para propósitos de

referencia. Los datos residen enteramente fuera de la aplicación y son

mantenidos por otra aplicación. El archivo de interface externo es un archivo

lógico interno (ILF) para otra aplicación.

(Elliot, 2012)

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 5

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

2. PASOS BÁSICOS DEL METODO DE ESTIMACION PUNTOS DE FUNCIÓN

PASO 1: DETERMINAR EL TIPO DE CONTEO DE PUNTOS DE FUNCIÓN

Existen tres posibles tipos de conteo que se describen a continuación:

1. Conteo de puntos de función para Proyectos en Desarrollo :

Mide la funcionalidad provista a los usuarios finales en la primera instalación de

la aplicación. Incluye la funcionalidad que se contará de la nueva aplicación y la

requerida por los usuarios, para convertir los datos que residen en los archivos de

datos viejos, hacia los nuevos archivos de datos. Los siguientes conteos deben

validarla funcionalidad identificada previamente y capturar la funcionalidad

agregada. Los conteos podrían ocurrir durante las siguientes fases, ya sea en un

enfoque de cascada o un proceso iterativo.

Ilustración 1: Conteo Durante el Desarrollo

2. Conteo de puntos de función para proyectos en mantenimiento :

Mide las modificaciones a una aplicación existente e incluye la funcionalidad

provista a los usuarios al agregar nuevas funciones, borrar funciones viejas y

cambiar las funciones existentes. Después de realizarse el mantenimiento se

debe revisar el conteo para reflejar los cambios apropiados en la funcionalidad de

la aplicación actual.

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 6

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

3. Conteo de puntos de función para una aplicación desarrollada :

Mide el tamaño de una aplicación ya instalada. Es conocido como “conteo de

línea base” y provee el total de la funcionalidad provista a los usuarios finales.

Típicamente representa las aplicaciones que actualmente están siendo utilizadas

y mantenidas.

EJEMPLO:

Se tiene que desarrollar un Sistema Planilla que cumpla con los siguientes

requerimientos:

Capacidad para consultar, mantener y reportar información del empleado. El

reporte podría incluir los datos de ubicación de un determinado empleado

obtenido de un archivo al que otra aplicación le da mantenimiento.

Capacidad para consultar, mantener y reportar información de las tareas. El

usuario considera que la descripción de la tarea debe ser un conjunto de 80

caracteres por línea que describen la tarea. Esta información no se mantiene

independientemente de la tarea.

Capacidad para consultar, mantener y reportar información de la asignación de

tareas a los empleados.

Capacidad para consultar y reportar las diferentes ubicaciones dentro de la

compañía, incluyendo la lista de empleados en una ubicación particular. La

ubicación es leída solamente porque se mantiene en otra aplicación.

El tipo de conteo a utilizar en este ejemplo es CONTEO DE PUNTOS DE FUNCION

PARA PROYECTOS EN DESARROLLO.

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 7

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

PASO 2: Identificar el alcance del conteo y la frontera de la aplicación

Identificar el alcance es identificar los sistemas, aplicaciones o subconjuntos de una aplicación que será medida. Podría incluir las funciones que serán satisfechas por la compra de un paquete; todas las aplicaciones que serán contratadas; o podría restringir las funciones dentro de una aplicación con un propósito específico como por ejemplo: los reportes. La frontera de la aplicación es el límite entre la aplicación que está siendo medida y las aplicaciones externas al dominio del usuario. De manera más sencilla es: Las tablas que son administradas por otra aplicación están fuera de las fronteras y se convierten en EIF. Las tablas administradas por la aplicación que se está estimando, están dentro de las fronteras y corresponden a los ILF.

EJEMPLO: En el caso del sistema de Planillas tenemos las siguientes funciones:

Mantenimiento De Empleados Crear Empleados

Consultar Empleados

Borrar Empleados

Reportar Empleados

Borrar Empleados

Mantenimiento De Tareas Crear Tareas

Consultar Tareas

Actualizar Tareas

Borrar Tareas

Reportar Tareas

Mantenimiento Del Asignador De

Tareas

Asignar Tarea al empleado

Consultar Asignación de la tarea

Transferir Empleado

Borrar Asignación

Reportar Asignación de la Tarea

Reportar Ubicación Consultar Ubicación

Reportar Ubicación

Tabla 1: Funciones del Sistema de Planilla

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 8

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

En el caso del Sistema de Planilla el único que está fuera de las fronteras de la aplicación, que

será leído y es administrado por otra aplicación es Reportar Ubicación.

PASO 3: Calcular Funciones de Datos

Representan la funcionalidad que satisfacen requerimientos de datos internos y

externos

Pasos:

1) Identificar archivos

2) Asignar a cada uno un tipo (ILF, EIF)

3) Identificar la cantidad de DET y RET

4) Asignar a cada uno un valor de complejidad (alta, medio, baja) en función de la

cantidad de DET y RET

Donde:

ILF: Archivos Lógicos Internos

EIF: Archivos Lógicos Externos

DET: Campo único (no repetitivo) reconocible por el usuario

RET: Subconjunto de campos de un archivo

EJEMPLO: Tomando el Subsistema Empleados del Sistema de Planillas, consideramos

el siguiente Diagrama de Entidad Relación

Ilustración 2: Diagrama de Entidad Relación

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 9

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

Se muestra la identificación de los ILF, los EIF y sus respectivos DET y RET.

1. ENTIDAD EMPLEADO ILF: No cuenta como RET porque tiene subgrupo

Número de DNI DET 1 Nombre DET 2 Sexo DET 3 Edad DET 4 Número Dependientes DET 5 Tipo (docente o administrativo) DET 6 Nombre Ubicación(Clave Externa) DET 7

SUBGRUPO EMPLEADO_DOCENTE 1 RET DE FUNCIONARIO Régimen docente DET 8 Número de Pasos DET 9 Puntos DET 10 Carga DET 11 Escalafón Docente DET 12 Anualidad Docente DET 13

SUBGRUPO EMPLEADO_ADMINISTRATIVO 1 RET DE FUNCIONARIO Horario DET 14 Años de Servicio DET 15 Escalafón Administrativo DET 16 Anualidad Administrativo DET 17

2. ENTIDAD TAREA ILF: Cuenta como RET porque no tiene subgrupos

Nombre de Tarea DET 1 Número de Tarea DET 2 Tipo de Pago DET 3

3. ENTIDAD DESCRIPCIÓN_TAREA No cuenta como ILF porque se crea por razones de implementación

Número de Tarea (Clave externa) No cuenta Número de Línea No cuenta Descripción de Línea DET 4

4. ENTIDAD ASIGNADOR_TAREA ILF: Cuenta como RET porque no tiene subgrupos

Fecha Ingreso DET 1 Salario DET 2 Tasa de Rendimiento DET 3 Número de Tarea (Clave Externa) DET 4 Cedula (Clave Externa) DET 5

5. ENTIDAD UBICACIÓN EIF: Cuenta como RET porque no tiene

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 10

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

subgrupos Nombre Ubicación DET 1 Dirección DET 2 Número de DNI(clave externa) DET 3

Tabla 2: Identificación de los Archivos Incluidos

Una vez identificados y contados los ILF y los EIF con sus DET y RET se debe

determinar el nivel de complejidad de cada uno de acuerdo a la siguiente tabla:

Nº DE CAMPOS

Nº DE

REGISTROS

PARA ILF / EIF 1 a 19 DET 20 a 50

DET

51 o más

DET

1 RET Baja Baja Media

2 a 5 RET Baja Media Alta

6 o más RET Media Alta Alta

Tabla 3: Nivel de Complejidad

Donde:

ILF: Archivos Lógicos Internos

EIF: Archivos Lógicos Externos

DET: Campo único (no repetitivo) reconocible por el usuario

RET: Subconjunto de campos de un archivo

EJEMPLO: Ver la que muestra el nivel de complejidad:

ENTIDAD TIPO(ILF o EIF) DET RET COMPLEJIDAD

EMPLEADO 1 ILF 17 DET 2 RET Bajo

TAREA 1 ILF 4 DET 1 RET Bajo

ASIGNADOR_TAREAS 1 ILF 5 DET 1 RET Bajo

UBICACIÓN 1 EIF 3 DET 1 RET Bajo

RESULTADO: 3 ILF con complejidad Baja y 1 EIF con complejidad Baja

Tabla 4: Resultado Nivel de Complejidad para los ILF y EIF

PASO 4: Calcular las funciones de transacción

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 11

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

Representan la funcionalidad proporcionada al usuario para procesar datos.

Pasos

1) Identificar las transacciones

2) Asignar a cada una un tipo (EI, EO, EQ)

3) Identificar la cantidad de DET y FTR

4) Asignar a cada una un valor de complejidad (Alta, Media, Baja) en función de

la cantidad de DET y FTR.

Donde:

EI: Entradas Internas

EO: Salidas Externas

EQ: Consultas Externas

DET: Campo único (no repetitivo) reconocible por el usuario

FTR: Tipo de archivo que se hace referencia en una transacción(Tiene que ser

un ILF o EIF)

EJEMPLO: En la siguiente tabla podemos observar en la columna izquierda 10 transacciones EI y en la columna derecha los DET y los FTR identificados por cada EI.

TRANSACCIONES (EI) CONTADAS COMOMANTENIMIENTO EMPLEADOS Crear EMPLEADOS 19 DET y 2 FTR, EMPLEADO Y UBICACION Actualizar EMPLEADOS 19 DET y 2 FTR, EMPLEADO Y UBICACIÓN Borrar EMPLEADOS 3 DET y 2 FTR, EMPLEADO Y ASIGNADOR

TAREA(no borrar un empleado si tiene una tarea)

MANTENIMIENTO TAREAS Crear TAREAS 6 DET y 1 FTR, TAREA Actualizar TAREAS 6 DET y 1 FTR, TAREA Borrar TAREAS 3 DET y 2 FTR, TAREA y ASIGNADOR TAREA

(no borrar una tarea con empleado asignado)

MANTENIMIENTO ASIGNADOR TAREASAsignar EMPLEADO a TAREA 6 DET y 3 FTR, EMPLEADO, TAREA y

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 12

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

ASIGNADOR TAREATransferir EMPLEADO 6 DET y 3 FTR, EMPLEADO, TAREA y

ASIGNADOR TAREAEvaluar EMPLEADO 6 DET y 1 FTR, ASIGNADOR TAREABorrar ASIGNACION 4 DET y 1 FTR, ASIGNADOR TAREA

Tabla 5: Identificación de lo EI con sus DET y FTR

Ahora se debe determinar el nivel de complejidad de cada uno de acuerdo a la

siguiente tabla:

PARA EI 1 a 4 DET 5 a 15 DET 16 o más DET0 a 1 FTR Baja Baja Media2 FTR Baja Media Alta3 o más FTR Media Alta Alta

Tabla 6: Nivel de Complejidad para EI

EJEMPLO: El nivel de complejidad asociado a los EI con sus correspondientes DET y

RET se muestra a continuación:

EO FTR DET COMPLEJIDADReportar EMPLEADOS

2(EMPLEADOS y UBICACIÓN)

Más de 20 Alto

Reportar TAREAS

1(TAREAS) 5 (número fue dado)

Bajo

Reportar ASIGNADOR TAREAS

3(ASIGNADOR DE TAREAS, EMPLEADO y TAREA)

6 – 19 Medio

Reportar UBICACIÓN

2(UBICACIÓN y EMPLEADO)

6 Medio

RESULTADOS: 1 EO con complejidad alta2 EO con complejidad media1 EO con complejidad baja

Tabla 7: Resultado de Nivel de Complejidad para los EO

Ahora Se deben identificar los EQ

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 13

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

EQ FTR DET

Consultar

EMPLEADOS

1 (EMPLEADOS) 19

Consultar TAREAS 1 (TAREAS) 6

Consultar

ASIGNADOR TAREAS

1(ASIGNADO

TAREAS)

7

Consultar UBICACIÓN 1 (UBICACIÓN) 5

Tabla 8: Identificación de los EQ con sus DET y FTR

EJEMPLO: El nivel de complejidad asociado a los EQ se muestra en:

EQ FTR DET COMPLEJIDAD

Consultar

EMPLEADOS

1

(EMPLEADOS)

19 Baja

Consultar TAREAS 1 (TAREAS) 6 Baja

Consultar

ASIGNADOR

TAREAS

1(ASIGNADO

TAREAS)

7 Baja

Consultar

UBICACIÓN

1 (UBICACIÓN) 5 Baja

RESULTADO: 4 EQ con complejidad baja

Tabla 9: Resultado Nivel de Complejidad para los EQ

PASO 5: Determinar los puntos de Función sin Ajuste

Para el cálculo de los puntos de función sin ajustar se utiliza la siguiente formula:

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 14

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

Donde:

PFSA: Puntos de Función Sin Ajustar

PFTE: Total puntos de Función para las entradas del sistema

PFTO: Total puntos de Función para las salidas del sistema

PFTQ: Total puntos de Función para las consultas del sistema

PFTIF: Total puntos de Función para los archivos internos del sistema

PFTEF: Total puntos de Función para los archivos externos del sistema

EJEMPLO: Pasar en limpio todos valores obtenidos:

ENTRADAS: 4 EI de complejidad alta y 6 EI de complejidad baja.

SALIDAS: 1 EO de complejidad alta, 2 EO de complejidad media y 1 EO de

complejidad baja.

CONSULTAS: 4 EQ de complejidad baja.

FICHEROS LOGICOS INTERNOS: 3 ILF de complejidad baja.

FICHEROS EXTERNOS: 1 EIF de complejidad baja.

Ahora se debe calcular los puntos de función sin ajustar completando la siguiente

tabla:

Componentes Niveles de Función TOTAL

Baja Media Alta

Archivos Lógicos 3 *7= 21 0 *10= 0 0 *5 = 0 21

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 15

PFSA = PFTE + PFTO + PFTQ + PFTIF + PFTEF

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

Internos (ILF)

Archivos de

Interface Externo

(EIF)

1 *5= 5 0 * 7 = 0 0 *10= 0 5

Entradas Externas

(EI)

6 *3= 18 0 * 4 = 0 4 *6= 24 42

Salidas Externas

(EO)

1 *4= 4 2 *5= 10 1 *7= 7 21

Consultas Externas

(EQ)

4 *3= 12 0 *4= 0 0 *6= 0 12

Total PFSA 101

Tabla 10: Puntos de Función Sin Ajustar

PFSA = PFTE + PFTO + PFTQ + PFTIF + PFTEF

PFSA = 42 + 21 + 12 + 21 + 5

PFSA = 101

PASO 6: Determinar el factor de complejidad técnica para ajuste.

Para el cálculo de Grado Total de Influencia se utiliza la siguiente formula:

Donde:

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 16

GTI = ¿

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

GTI: Grado Total de Influencia

Fi: Factores de Complejidad

FACTORES DE COMPLEJIDAD:

Son catorce factores que completan la visión externa de la aplicación. No están

recogidos en la funcionalidad de la aplicación. Toman un valor entre 0 y 5.

Nº de Factor Factores Valor (0 – 5)

F1 Comunicación de DatosF2 Procesamiento

DistribuidoF3 Objetivos de

RendimientoF4 Disponibilidad del

SoftwareF5 Tasa de TransaccionesF6 Entrada de Datos en

LíneaF7 Eficiencia con el Usuario

FinalF8 Actualizaciones en LíneaF9 Lógica de Proceso

Interno ComplejaF10 Reusabilidad del CódigoF11 Conversión e instalación

ContempladasF12 Facilidad de OperaciónF13 Instalaciones MúltiplesF14 Facilidad de Cambios

Tabla 11: Calculo de Complejidad Técnica

EJEMPLO: Procederemos a continuar con el ejemplo que venimos trabajando y damos valores a cada uno de los catorce factores:

Nº DE FACTOR

FACTOR Valor (0 -5)

1 Comunicación de Datos 42 Procesamiento Distribuido 03 Objetivos de Rendimiento 3

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 17

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

4 Disponibilidad del Software 25 Tasa de Transacciones 36 Entrada de Datos en Línea 57 Eficiencia con el Usuario Final 48 Actualizaciones en Línea 39 Lógica de Proceso Interno Compleja 1

10 Reusabilidad del Código 011 Conversión e instalación

Contempladas0

12 Facilidad de Operación 313 Instalaciones Múltiples 114 Facilidad de Cambios 2

Grado Total de Influencia (GTI) 31Tabla 12: Resultado de Cálculo de Complejidad Técnica

Una vez evaluadas las 14 Características Generales descritas anteriormente se suman para obtener el Grado Total de Influencia o GTI.

GTI = ¿

GTI = 31

Nota: Se espera que para una aplicación en lote simple se obtenga un GTI menor a 15, para una aplicación “front-end” un GTI entre 15 y 30, para una aplicación interactiva un GTI entre 30 y 45 y para un sistema en tiempo real, o de telecomunicación eso de control de procesos un GTI entre 30 y 60.

PASO 7: Calcular los Puntos de Función Ajustados

Una vez evaluadas las 14 Características Generales descritas anteriormente se suman para obtener el Grado Total de Influencia o GTI. Posteriormente el GTI se aplica en la siguiente fórmula y se obtiene el Factor de Ajuste de Valor o FAV:

Los Puntos de Función Ajustados Son calculados por medio de una fórmula de acuerdo con el tipo de conteo seleccionado

Desarrollo del proyecto

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 18

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

Mantenimiento del proyecto Aplicación

Para determinar el cálculo de Puntos de Función Ajustados de un nuevo proyecto aplicamos la siguiente fórmula:

Donde:

PFA: Puntos de Función Ajustados PFSA: Puntos de Función Sin Ajustar GTI: Grado Total de Influencia

EJEMPLO: Usando la fórmula en nuestro ejemplo:

PFA = PFSA x [(GTI x 0.01) + 0.65]

PFA = 101 x [(31 x 0.01) + 0.65]

PFA = 96.96

Por lo tanto, el tamaño de la aplicación o proyecto de desarrollo es de 96.96 PFA.

Recordemos que ese número representa la cantidad de unidades de software de un proyecto o aplicación. Con este valor podremos realizar estimaciones de plazos, costos, recursos, etc. Tal como veremos a continuación.

PASO 8: Calcular Esfuerzo y Duración del Proyecto

Estimación del esfuerzo

Entorno y lenguaje Líneas de Código por PF Horas por PFLenguajes 2G 300 20 a 30Lenguajes 3G: 100 10 a 20Lenguajes 4G 20 5 a 10

Tabla 13: Estimación de Esfuerzo

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 19

PFA = PFSA x [(GTI x 0.01) + 0.65]

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

EJEMPLO: Calcular Hs efectivas por horas productivas estimadas

Esfuerzo de Horas/personas = PFA / [1/8 personas/horas]

Esfuerzo de Horas/personas = 96.96 / 0.125

Esfuerzo de Horas/personas = 775.68 hrs. / personas

Estimación de la Duración del proyecto

Se utiliza la siguiente formula:

Donde:

D: Duración del Proyecto en horas E: Esfuerzo de Horas/personas NI: Número de Integrantes

EJEMPLO: Siguiendo con el ejemplo calculamos la duración del subsistema:

D= E¿

D=775.685

D=155.136 hs por integrante

Duración en meses = Duración del proyecto en horas / 100 hrs. /mes

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 20

Horas/mes productivas estimadas en el proyecto Calculadas de 20 días laborables y de 5 horas productivas estimadas de las 8 de la jornada laboral normal diaria

D = E¿

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

Ejemplo: Siguiendo con el ejemplo:

Duración en meses = 155.136 horas / 100 horas/mes =

Duración en meses = 1.55 meses aproximadamente 2 meses para desarrollar el Subsistemas Empleados

CONCLUSIÓN:

La industria del software tanto desarrolladores como compradores requiere mejores prácticas. En

este documento se ha presentado el método de estimación de software “Puntos de Función” y

descrito cada uno de los pasos que contiene el método:

Determinar el tipo de conteo de puntos de función.

Identificar el alcance del conteo y la frontera de la aplicación.

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 21

ESTIMACIÓN DE SOFTWARE “PUNTOS DE FUNCIÓN” INGENIERÍA DE SOFTWARE I

Calcular Funciones de Datos.

Calcular las funciones de transacción.

Determinar los puntos de Función sin Ajuste.

Determinar el factor de complejidad técnica para ajuste.

Calcular los Puntos de Función Ajustados.

Calcular Esfuerzo y Duración del Proyecto.

El método de Puntos de Función, además de 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 las etapas tempranas y de manera aproximada, el costo la

duración y los recursos necesarios para el desarrollo de proyectos de software.

GRUPO 02: DANIEL, JULIO, RONALD, PATRICIA 22