Está en la página 1de 60

Tcnicas de estimacin de costo y esfuerzo

Cuando se planifica un proyecto se deben hacer estimaciones del esfuerzo humano requerido, de la duracin cronolgica del proyecto y del costo. En la mayora de los casos las estimaciones se hacen valindose de la experiencia pasada como nica gua. Aunque en algunos casos puede que la experiencia no sea suficiente.

Mtodos utilizados para la estimacin de costo y esfuerzo


Basados en la experiencia. Basados exclusivamente en el mercado. Basado en los componentes del producto
Puntos de Funcin (PF) Lneas de cdigo (LDC) Puntos de Casos de Uso (PCU)

Mtodos algortmicos.
COCOMO

Mtodos basados en la experiencia

Juicio experto
Puro, Delphi

Analoga Distribucin de la utilizacin de recursos en el ciclo de vida

Juicio experto: Puro

Un experto estudia las especificaciones y hace su estimacin. Se basa fundamentalmente en los conocimientos del experto. Si desaparece el experto, la empresa deja de estimar.

Juicio experto: Wideband Delphi


Se dan las especificaciones a un grupo de expertos. Se les rene para que discutan tanto el producto como la estimacin. Remiten sus estimaciones individuales al coordinador. Cada estimador recibe informacin sobre su estimacin, y las ajenas pero de forma annima. Se renen de nuevo para discutir las estimaciones. Cada uno revisa su propia estimacin y la

Mtodo de trabajo del Wideband Delphi


Juan Alicia Jos Mara * * * *

Estimaciones

Juan Alicia Jos Mara *

* *

Estimaciones

Analoga

Consiste en comparar las especificaciones de un proyecto, con las de otros proyectos. Pueden variar los siguientes factores:

Tamao: mayor o menor? Complejidad: Ms complejo de lo usual? Usuarios: Si hay ms usuarios habrn ms complicaciones. Otros factores:

Sistema Operativo, entornos (la primera vez ms). Hardware, Es la primera vez que se va a utilizar? Personal del proyecto, nuevos en la organizacin?

Usualmente las organizaciones tienen una estructura de costos similar entre proyectos. Si en un proyecto ya se han realizado algunas fases, es de esperar que los costos se distribuyan de manera Diseo Estudio de Desarrollo Prueba Diseo Factibilidad proporcional. General Detallado

Planificacin y Requisitos

Distribucin de recursos en el ciclo de vida

10% 2 m.

17%

15% ?

15%

33%

10%

Mtodo basado en el mercado


Lo importante es conseguir el contrato. El precio se fija en funcin de lo que se cree que esta dispuesto a pagar el cliente. Si se usa en conjuncin con otros mtodos puede ser aceptable, para ajustar la oferta. Peligroso si es el nico mtodo

Mtrica de los Puntos de Funcin

Es una mtrica para establecer el tamao y complejidad de los sistemas informticos basada en la cantidad de funcionalidad requerida y entregada a los usuarios. Se puede aplicar en las primeras fases de desarrollo. Los PF miden el tamao lgico o funcional de las aplicaciones de SW

Mtrica de los Puntos de Funcin

Se basa en caractersticas fundamentalmente Externas de la aplicacin a desarrollar. Mide dos tipos de caractersticas:
Los elementos de funcin (entradas, salidas, archivos, etc.) Los factores de Complejidad.

Elementos de Funcin

Son elementos fcilmente identificables en los diagramas de especificacin del sistema. (DFD, Entidad-Relacin, DD)
Entradas Salidas Consultas Archivos Lgicos o Internos Archivos de Interfaz

Entradas
Informacin que

llega a la aplicacin desde el exterior. Tienen una sola direccin (Exterior a Interior) Siempre actualizan algn archivo interno.

Clasificacin de las entradas


DIFICULTAD ENTRADAS 1-4 Atributos 0 1 archivos accedidos 2 archivos accedidos 3 + archivos accedidos 5-15 Atributos 16 + Atributos Nmero de Campos o Atributos de la Entrada

BAJA BAJA

BAJA

MEDIA

MEDIA ALTA ALTA

MEDIA ALTA

Salidas
Informacin

elaborada por la aplicacin que son transmitidas al usuario. Tienen una sola direccin (Interior a Exterior)

Clasificacin de las salidas


DIFICULTAD SALIDAS 1-5 Atributos 0 1 archivos accedidos 2 3 archivos accedidos 4 + archivos accedidos 6-19 Atributos 20 + Atributos Nmero de Campos o Atributos de la Salida

BAJA BAJA

BAJA

MEDIA

MEDIA ALTA ALTA

MEDIA ALTA

Consultas
Entradas que

producen inmediatamente una salida No modifica los datos del sistema

Clasificacin de las consultas


Se calcula la complejidad de la

parte de entrada Se calcula la complejidad de la parte de salida Se toma la complejidad mayor de las dos.

Archivos Lgicos o Internos


Agrupaciones de

datos, tal y como los percibe el usuario Es diferente de:


Entidades y Relaciones Tablas o archivos resultantes del diseo fsico

Los grupos de datos

sern accedidos y actualizados por la

Clasificacin de los Archivos Lgicos o Internos DIFICULTAD Nmero de Campos o Atributos


ARCHIVOS LGICOS 1 Archivo Lgico 2 a 5 Archivos Lgicos 6 o ms Archivos Lgic. 1-19 Atributos 20-50Atributos 51 + Atributos

BAJA BAJA

BAJA

MEDIA

MEDIA ALTA ALTA

MEDIA ALTA

Archivos de Interfaz
Archivos a los

que accede la aplicacin con el objetivo de obtener informacin. Son mantenidos por otras aplicaciones Nunca los actualiza la

Clasificacin de los Archivos de Interfaz


DIFICULTAD ARCHIVOS DE INTERFAZ 1 Archivo Lgico 2 a 5 Archivos Lgicos 6 o ms Archivos Lgic. 1-19 Atributos 20-50Atributos 51 + Atributos Nmero de Campos o Atributos

BAJA BAJA

BAJA

MEDIA

MEDIA ALTA ALTA

MEDIA ALTA

Calculo de los Puntos de funcin sin ajustar (PFSA)


Simple
Cantidad * Peso

Media
Cantidad * Peso

Compleja
Cantidad * Peso

Total *6 *7 *6 * 15 * 10 23 39 34 140 10 203

Entradas Salidas Consultas Fic. Lgicos Fic. Interfaz

3 *3 2 *4 5 *4 1 *5 6 *3 4 *4 6 *7 4 * 10 2 *5 0 *7 Total puntos de funcin sin ajustar (PFSA)

1 2 0 1 0

Factores de complejidad

Son catorce factores que completan la visn externa de la aplicacin. No estn recogidos en la funcionalidad de la aplicacin. Toman un valor entre 0 y 5

Asignacin del valor de cada factor de complejidad


Valor Significado del valor 0 Sin influencia, factor no presente 1 Influencia insignificante, muy baja 2 Influencia moderada o baja 3 Influencia media, normal 4 Influencia alta, significativa 5 Influencia muy alta, esencial

FC1: Comunicacin de Datos


Los datos usados en el sistema se

envan o reciben por lneas de comunicaciones.

FC1: Comunicacin de datos


0: Sistema aislado del exterior 1: Batch, usa perifricos E o S remotos 2: Batch, usa perifricos E y S remotos 3: Captura de datos en lnea o teleproceso que pasa los datos o sistema de consulta 4: Varios teleprocesos con mismo protocolo Teleproceso: Telecomunicacin en Proceso de Datos. 5: Varios protocolos. Sistema Abierto y Medios de Telecomunicacin: Telegrafa, Telfono, Radio, con Transferencia interfaces de todo tipo al exterior. Televisin, va Satlite, Redes

FC2: Proceso Distribuido


Existen Procesos o Datos

distribuidos, y el control de estos forma parte del sistema.

FC2: Proceso distribuido


0: Sistema totalmente centralizado 1: Sistema realiza procesos en un equipo, salidas usadas va Sw por otros equipos 2: Sistema captura, los trata en otro 3: Proceso distribuido, trans. una sola direc. 4: Proceso distribuido, transferencia en ambas direcciones. 5: Procesos cooperantes ejecutndose

FC3: Objetivos de Rendimiento


Si el rendimiento es un

requisito del sistema. Es decir, es crtico algn factor como tiempo de respuesta o cantidad de operaciones por hora. Se tendr que hacer consideraciones especiales durante el diseo, codificacin y mantenimiento.

FC3: Objetivos de rendimiento


0: Rendimiento normal ( no se da nfasis ) 1: Se indican requisitos, no medida especial. 2: Crtico en algunos momentos. Procesos acabados antes de prox. sesin de trabajo. 3: Tiempo de respuesta es crtico. 4: ... en diseo hacer anlisis de rendimiento en tiempo respuesta o cantidad oper./hora

FC4: Configuracin de Explotacin Usada por Otros Sistemas


El sistema tendr que ejecutarse

en un equipo en el que coexistir con otros sistemas, compitiendo por los recursos.

FC4: Conf. explotacin usada intensamente por otros sistemas


0: No se indican restricciones 1: Existen las restricciones usuales 2: Caractersticas de seguridad o tiempos. 3: Restricciones en algn procesador 4: El Sw deber funcionar con restricciones de uso en algn procesador. 5: Restricciones especiales para aplicacin en los componentes

FC5: Tasa de Transacciones


La tasa de

transacciones ser elevada. Se tendr que hacer consideraciones especiales durante el diseo, codificacin e instalacin.

FC5: Tasa de transacciones


0: No se prevn picos 1: Se prevn picos poco frecuentes (mensual) 2: Se prevn picos semanales 3: Se prevn horas punta, diarias 4: Tasa de trans. tan elevada que en diseo se hace anlisis de rendimiento 5: Anlisis de rendimiento en diseo, implementacin e instalacin.

FC6: Entrada de Datos EN-LNEA.


La entrada de

datos ser directa desde el usuario a la aplicacin, de forma interactiva.


0: Todo es Batch 5: Ms del 30% de las entradas son en lnea

FC6: Entrada de datos en lnea


0: Todo es Batch 1: 1%<entradas interactivas <7% 2: 8%<entradas interactivas <15% 3: 16%<entradas interactivas <23% 4: 24%<entradas interactivas <30% 5: Entradas interactivas >30%

FC7: Eficiencia con el Usuario Final


Se debe disear e

implementar la aplicacin con interfaces fciles de usar y con ayudas integradas.

Eficiencia del usuario con:


Mens. Uso de ratn. Ayudas "en_lnea". Movimiento automtico del cursor; Efectos de Scroll (papiro); Teclas de funcin predefinidas Lanzamiento de procesos Batch

desde las transacciones "en_lnea";

Eficiencia del usuario con:


Seleccin mediante cursor de

datos de la pantalla; Pantallas con muchos colores y efectos; Posibilidad de "hard-copy". Ventanas de "pop-up"; Aplicacin bilinge (cuenta por cuatro). Aplicacin Multilinge (mas de dos,

FC7: Eficiencia con el usuario final


0: No se da nfasis al tema 1: 1 a 3 de los factores 2: 4 a 5 de los factores 3: 6 o ms factores, sin requerir eficiencia 4: ... con requerimientos que implican estudio de los factores humanos en el diseo 5: se demandan prototipos y herramientas para verificar que se alcanzaran los objetivos

FC8: Actualizaciones EN-LNEA.


Las Bases de Datos son

modificadas directamente de forma interactiva.

FC8: Actualizaciones en lnea


0: No hay 1: De 1 a 3 archivos con informacin de control. Cantidad baja y archivos recuperables 2: ... pero con 4 o ms archivos de control 3: Actualizacin de archivos importantes 4: ... esencial la proteccin ante prdidas 5: Gran cantidad de actualizaciones interactivas. Sistemas de recuperacin muy automatizados

FC9: Lgica de Proceso Interno Compleja


La complejidad interna en un proceso esta

en funcin de las siguientes caractersticas:


Algoritmos matemticos complejos. Proceso con lgica compleja. Muchas excepciones, consecuencia de transacciones incompletas, que debern tratarse. Manejar mltiples dispositivos de entrada/salida. Se incorporaran sistemas de seguridad y

FC9: Lgica de proceso interno compleja


0: Ninguna de las caractersticas 1: 1 Caracterstica 2: 2 Caractersticas ... 5: Las 5 caractersticas

FC10: Reutilizacin del Cdigo


Se tendr que hacer

consideraciones especiales durante el diseo, codificacin y mantenimiento para que el cdigo se reutilice en otras aplicaciones o lugares. Reutilizacin:
Dentro de la propia aplicacin, Por varios sistemas,

FC10: Reusabilidad del cdigo


0: No se prev 1: Reutilizar cdigo en la misma aplicacin 2: Menos de un 10% de la aplicacin tiene en cuenta las necesidades de + de 1 usuario 3: El 10 % o ms ... 4: Aplicacin preparada para ser reutilizable. Nivel de cdigo 5: Aplicacin preparada para ser

Se proveern facilidades de

FC11: Contempla la Conversin e Instalacin


conversin en el sistema, se tendr que hacer consideraciones especiales durante el diseo, codificacin y pruebas para que la conversin del sistema antiguo sean fciles de realizar durante la puesta en marcha del sistema Antiguo Nuevo nuevo.

FC11: Contempla conversin e instalacin

0: No se requiere conversin. 1: Se solicita facilidad de instalacin 2: Se solicitan procesos de conversin e instalacin, no importantes para el proyecto 3: ... si son importantes 4: 2, y herramientas conversin e instalacin 5: 3, y herramientas conversin e instalacin. Sistema crtico para la

FC12: Facilidad de Operacin


Operacin del sistema: los trabajos

asignados al centro de proceso de datos.


arranque, parada, recuperacin ante fallos, copias de seguridad o minimizacin de las actividades manuales en el CPD.

Se valora cuando ha sido descrita

desde las primeras fases dedicandose especial atencin

FC12: Facilidad de operacin


0: Nada, en todo caso, back-up 1 a 4: Suma de tems
Arranque, back-up y recuperacin Idem, sin intervencin operador. Minimizar necesidad de disp. externos almac. Minimiza necesidad de manejar papel

5: Sistema automtico sin intervencin humana

FC13: Mltiples

Instalaciones

El sistema ha de incluir los requerimientos de diversas empresas o departamentos en donde se ejecutara (incluso plataformas). Estas caractersticas se estarn presentes durante el diseo, codificacin y pruebas.

FC13: Instalaciones mltiples


0: 1 solo lugar 1: Mltiples lugares, mismo Hw y Sw 2: En diseo se tiene en cuenta el caso (1) 3: En diseo se tiene en cuenta mltiples entornos Hw y Sw 4: Se documenta y planea para (1) y (2)

FC14: Facilidad de Cambios


Se tendr que hacer

consideraciones especiales durante el diseo, codificacin y mantenimiento para que en el sistema sea fcil de introducir cambios y fcil de adaptar al usuario.

FC14: Facilidad de cambios

Items a tener en cuenta:


Consultas flexibles del usuario: Simples con condiciones. lgicas And/Or que implican un nico archivo lgico Medias con cond. lgicas sobre ms de 1 archivo lgico Complejas con condiciones lgicas complejas que afectan a varios archivos lgicos Parmetros de la aplic. con tablas ajenas al cdigo: El cambio se hace efectivo al arrancar el

FC14: Facilidad de cambios


0: No se especifica nada 1: Un tem de valor 1 2: Items por valor 2 3: ... 5: Items por valor 5

Tabla p/el calculo de los FC


# 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Factor de Complejidad Comunicacin de Datos. Proceso Distribuido. Rendimiento Configuracin Operacional compartida Ratio de Transacciones Entrada de Datos EN-LNEA Eficiencia con el Usuario Final Actualizaciones EN-LNEA Complejidad del Proceso Interno Reusabilidad del Cdigo Contempla la Conversin e Instalacin Facilidad de Operacin (back up, etc.) Instalaciones Mltiples Facilidad de Cambios Valor (0..5) 2 3 1 2 4 5 5 4 3 0 0 2 1 2 34

Factor de Complejidad Total (FCT)

Estimacin de esfuerzo
PFA = PFSA * (0,65 + (0.01 * FCT)) PFA = 203 * (0.65 + (0.01 * 34)) = 201 Partimos de los datos histricos de la

Organizacin Esfuerzo = PFA * Promedio_Organizacin( Lenguaje) Esfuerzo = 201 / 22 (Visual Net) Esfuerzo = 9.2 mp

Estimacin del Esfuerzo Requerido (Datos histricos)


Nombre Proyecto Puntos de Funcin Lenguaje Esfuerzo en meses Puntos de funcin/ persona - mes

Promedios: JAVA: 7 PF pm VB: 10 PF pm VN: 22 PF pm

SIIPRO SINCA SIRES SICARA SININSA SICAFI SITEL SIGFA SIGMAN SIRA

200 JAVA 150 VB 375 VISUAL NET 500 VB 425 VISUAL NET 800 VB 180 VB 325 VISUAL NET 225 VB 470 JAVA

28 15 17 54 19 75 16 15 26 75

7 10 22 9 22 11 11 22 9 6

Otras utilidades de los PF


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 tcnicas de desarrollo.

También podría gustarte