tema 3 estimacion
DESCRIPTION
un pptTRANSCRIPT
INTRODUCCION….
• La realización de estimaciones adecuadas sobre el tamaño y esfuerzo requerido es una de las características fundamentales de un proyecto de desarrollo de software exitoso.
• Las malas estimaciones o más comúnmente las no estimaciones, son posiblemente una de las principales causas de los fracasos.
…..• Las estimaciones están asociadas con el
esfuerzo, costo y el tiempo de las actividades identificadas del proyecto.
• Los administradores del proyecto deben estimar las respuestas a las siguientes preguntas:
1. ¿Cuánto esfuerzo (personal necesario) se requiere para completar una actividad?
2. ¿Cuánto tiempo se necesita para completar una actividad?
3. ¿Cuál es el costo total de una actividad?
CONCEPTO DE ESTIMACIÓN DE PROYECTO SOFWARE
• Estimar es echar un vistazo al futuro con algún grado de incertidumbre.
• La estimación, es mas un arte que una Ciencia.• Es una actividad importante que no debe llevarse a
cabo de forma descuidada.
• Una estimación es una predicción basada en un modelo probabilístico, no un modelo determinístico; es decir, la cantidad que se está estimando puede tomar no solamente un valor sino distintos valores
ESTIMACIÓN DEL PROYECTO DE SOFTWARE.
Para realizar estimaciones seguras de costos y esfuerzos se tienen varias opciones:
•Dejar la estimación para mas adelante.•Desarrollar las estimaciones en proyectos similares ya terminados.•Utilizar técnicas de descomposición relativamente sencillas para generar las estimaciones de costos y esfuerzo del proyecto. •Desarrollar un modelo empírico para el calculo de costos y esfuerzos del Software.
TECNICAS DE ESTIMACIÓN.
Se han desarrollado varias técnicas de estimación para el desarrollo de software, las cuales todas tienen en común los siguientes atributos:
• Se han de establecer de antemano el ámbito del proyecto.
• Como bases para la realización de estimaciones se usan datos de software de proyectos pasados.
• El proyecto se descompone en partes más pequeñas que se estiman individualmente.
TECNICAS DE ESTIMACIÓN.
ESTIMACIÓN DEL ESFUERZO.
Es la técnica más común para calcular el costede un proyecto de ingeniería de software. Seaplica un número de personas-día, mes o año a lasolución de cada tarea del proyecto.
TECNICAS DE ESTIMACIÓN.
ESTIMACIÓN LDC Y PF:
Las estimaciones de LDC y PF son técnicas de estimación distintas:
LDC (Orientadas al tamaño)PF (Orientadas a la función)
Los datos de LDC y PF se utilizan de dos formas durante la estimación del proyecto de software.
TECNICAS DE ESTIMACIÓN.
ESTIMACIÓN LDC Y PF:
• Como una variable de estimación que se utiliza para «dimensionar» cada elemento del software.
• Como métricas de línea base recopiladas de proyectos anteriores
El valor esperado para la variable de estimación, E, puedeobtenerse como una media ponderada de las estimacionesLDC o PF optimista (a), más probable (m), y pesimista (b)
delas estimaciones LDC o PF por ejemplo:
E = (a + 4m + b)/6
EJEMPLO: LDC
MODELOS DE ESTIMACIÓN.
LOS MODELOS EMPÍRICOS:
• Los datos que soportan la mayoría de los modelos de estimación se obtienen una muestra limitada de proyectos.
• El modelo de estimación no es adecuado para todas las clases de software y en todos los entornos de desarrollo.
• Por lo tanto los resultados obtenidos de dichos modelos se deben utilizar con prudencia.
MODELOS DE ESTIMACIÓN.
EL MODELO COCOMO: Modelo Constructivo de Costos
COCOMO es una jerarquía de modelos deestimación de costes de software que incluyesubmodelos básico, intermedio y avanzado.
MODELO 1 (COCOMO básico)calcula el esfuerzo y el coste del desarrollo en función del tamaño estimado del programa (LDC). Se utiliza para una aproximación rápida al principiodel ciclo de vida.
ESFUERZO: E = ab KLDCbb
TIEMPO: D = cb Edb
MODELO 1 (COCOMO básico)calcula el esfuerzo y el coste del desarrollo en función del tamaño estimado del programa (LDC). Se utiliza para una aproximación rápida al principiodel ciclo de vida.
ESFUERZO: E = ab KLDCbb
TIEMPO: D = cb Edb
MODELO 2 (COCOMO intermedio)calcula el esfuerzo y el coste en función del Tamaño estimado del programa y de un conjunto de “guías de coste” que incluyen una evaluación subjetiva del producto, hardware, personal yatributos del producto
ESFUERZO: E = ai KLDCbi x FAE (factorde ajuste del esfuerzo)
MODELO 2 (COCOMO intermedio)calcula el esfuerzo y el coste en función del Tamaño estimado del programa y de un conjunto de “guías de coste” que incluyen una evaluación subjetiva del producto, hardware, personal yatributos del producto
ESFUERZO: E = ai KLDCbi x FAE (factorde ajuste del esfuerzo)
MODELO 3 (COCOMO avanzado)incorpora las características del mod. 2 y evalúa el impacto de los FAE en cada fase del desarrollo.
MODELO 3 (COCOMO avanzado)incorpora las características del mod. 2 y evalúa el impacto de los FAE en cada fase del desarrollo.
MODELOS DE ESTIMACIÓN.
Existen Tres tipos de proyectos en COCOMO:Orgánicos: relativamente pequeños y sencillos, en los que trabajan pequeños equipos con experiencia, sobre un conjunto de requisitos poco rígidos.
Semiacoplados: proyectos intermedios (en tamaño y complejidad) en los que participan equipos con variados niveles de experiencia, y que deben satisfacer requisitos poco o medio rígidos
Empotrados: proyectos que deben ser desarrollados en un conjunto de hardware, software y restricciones operativas muy restringido.
MODELO COCOMO BASICO
PROYECTO a b c d
ORGANICO 2.4 1.05 2.5 0.38
SEMIACOPLADO 3.0 1.12 2.5 0.35
EMPOTRADO 3.6 1.20 2.5 0.32
EJEMPLO
MODELOS DE ESTIMACIÓN.
MODELOS DE ESTIMACION DE PUTNAM
El modelo de estimación de Putnam es un modelomultivariable dinámico que asume unadistribución específica del esfuerzo a lo largo dela vida de un proyecto de desarrollo de software.El modelo ha sido derivado de distribuciones demano de obra de grandes proyectos (esfuerzoTotal de 30 personas año o más). Sin embargo, esposible extrapolar a proyectos más pequeños.
MODELO PUNTO DE FUNCION
Este modelo se crea como una alternativa a laestimación del tamaño de un producto softwaremediante LDC (Líneas de Código Fuente).
El método de estimación de puntos de función seutiliza para determinar el tamaño del software.
Están orientadas a la función es decir se centran en la funcionalidad o utilidad del programa.
EJEMPLO
MODELOS ESTADISTICOS
• Se realiza el análisis de regresión estadística sobre los datos recogidosde una gran cantidad de proyectos.
• El objeto de un análisis de regresión es investigar la relación estadística que existe entre una variable dependiente (Y) y una variable (X) independiente.
• Debido a su simplicidad analítica, la forma funcional que más se utiliza en la práctica es la “REGRESIÓN LINEAL”.
y = a + b x Costo = a + b (LDC)
Donde los coeficientes a y b son parámetros que definen la posición e inclinación de la recta
EJEMPLO:
CONCLUSIONES
La Estimación del Proyecto de Software debe considerar cuatro aspectos antes de que comience el proyecto:
– Cuanto durara.– Cuanto esfuerzo.– Costo requerirá.– Cuanta gente estará implicada.
• Los modelos a pesar de su perfeccionamiento sobre diferentes entradas para la estimación de esfuerzo, costo, tiempo no modelan de manera exacta.
• Es necesario comparar con otros modelos y Proyectos para no cometer errores en la estimación que a la larga pueden causar perdidas.
La evaluación del alcance indica que se requieren las siguientes funciones principales para el software de CAD:
* Interfaz de usuario y facilidades de control (IUCF)
* Análisis geométrico bidimensional (AG2D)
* Análisis geométrico tridimensional (A3GD)
* Gestión de estructuras de datos (GED)
* Facilidades de visualización de gráficos de computadora (FVGC)
* Control de periféricos (CP)
* Módulos de análisis de diseño (MAD) E = (a + 4m + b)/6
Considerar un paquete de software a desarrollar para una aplicación de diseño asistido por computador (CAD). Revisando la especificación del sistema encontramos que el software va ejecutarse en una estación de trabajo de microcomputadora y se conectará con varios periféricos gráficos incluyendo ratón, digitalizador, pantalla en color de alta resolución, y una impresora de alta resolución.
EJEMPLO: LDC
SOLUCIONFunción Optimista Más
probablePesimista Esperado $linea Linea
/ mesCoste Meses
Control de interfaz de usuario
1800 2400 2650 2340 14 315 32.760 7,4
Análisis geométrico en 2-D
4100 5200 7400 5380 20 220 107.600 24,4
Análisis geométrico en 3-D
4600 6900 8600 6800 20 220 136.000 30,9
Gestión de la estructura de datos
2950 3400 3600 3350 18 240 60.300 13,9
Visualización de gráficos en la computadora
4050 4900 6200 4950 22 200 108.900 24,7
Control periféricos 2000 2100 2450 2140 28 140 59.920 15,2
Análisis de diseño 6600 8500 9800 8400 18 300 151.200 28,0
33360 $656.680 144,5 LDC estimadas Coste del PY
Estimados ($) Esfuerzo
requerido Estimado (PM)
REGRESAR
EJEMPLO: COCOMO BASICO
Orgánico Semiacoplado Empotrado
Esfuerzo estimado
ED=2,4(KLDC)1.05 h-m
ED=3.0(KLDC)1.12 h-m
ED=3,6(KLDC)1.20 h-m
Tiempo de desarrollo
TD=2.5(ED)0.38 m TD=2.5(ED)
0.35 m TD=2.5(ED)0.32 m
Productividad
PR = LDC / ED
Nº medio de personas
PE = ED / TD h
Datos:LDC = 33360Sueldo = 6950$/mEl EsfuerzoED=2,4(KLDC)1.05 h-m 2.4 ( 33.36)1.05 = 95.41 h-m = 96 h-mTiempo de desarrolloTD=2.5(ED)0.38 m TD=2.5(96)0.38 m = 14.16 m
ProductividadPR = LDC / ED PR = 33360 / 96 = 347.5 LDC/h-m
Nº médio de personasPE = ED / TD h PE = 96 / 14.16 h = 6.77 = 7 h
Calculando el costo de PyCosto por LDC = 33360 / 347.5 = 20 $/LDC Costo total del proyecto = 33360 * 20 =667200 $
EJEMPLO: COCOMO BASICO
REGRESAR
EJEMPLO PF
Desarrollo de un proyecto matemático de métodos numéricos:Datos :Productividad = 1000 pf / per-mesSueldo = 3000 Bs / per-mes
TIPO DE FUNCIONNIVEL DE COMPLEJIDAD
TOTALSIMPLE MEDIO COMPLEJO
Entradas de Usuario
* 3 18 * 4 = 72 * 6 72
Salidas de Usuario * 4 25 * 5 = 125 * 7 125
Archivos Internos 5 * 7 = 35 * 10 * 15 35
Archivos Externos * 5 2 * 7 = 14 * 10 14
Consultas de Usuario
* 3 20 * 4 = 120 * 6 120
TOTAL PF SIN AJUSTAR PF = 326
EJEMPLO PF
ESCALA DE GRADO DE INFLUENCIA
No influye 0
Insignificante 1
Moderada 2
Medio 3
Significativa 4
Fuerte 5
Copia de seguridad y recuperación2
Comunicaciones3
Proceso distribuido1
Rendimiento crítico4
Entorno operativo existente4
Entrada de datos online 5Transacciones entrada en varias pant
1Archivos maestros actualizados online
2Complejidad valores dominio información
3Complejidad procesamiento interno
3Código diseñado para reutilización
4Conversión en diseño 1Instalaciones múltiples 3Aplicación diseñada para cambios
5
Copia de seguridad y recuperación2
Comunicaciones3
Proceso distribuido1
Rendimiento crítico4
Entorno operativo existente4
Entrada de datos online 5Transacciones entrada en varias pant
1Archivos maestros actualizados online
2Complejidad valores dominio información
3Complejidad procesamiento interno
3Código diseñado para reutilización
4Conversión en diseño 1Instalaciones múltiples 3Aplicación diseñada para cambios
5
pf
Bs
mesperpfmesper
Bs
CostoporPF 31000
3000
Factor de Ajuste CP =0.65 + 0.01 * GI = 0.65 + 0.01 * 41 = 1.06 Total puntos de función PF = CF * CP =326 * 1.06 = 345.56 pfCalcular el costo estimado del proyecto:
Costo del proyecto = PF * Costo por PF = 345.56 pf * 3Bs / pf Costo del proyecto = 1036.68 Bs.
REGRESAR
EJEMPLO REGRESION LINEALGráficamente se tiene lo siguiente:
Estimacion de Costo
0
2000000
4000000
6000000
8000000
10000000
12000000
14000000
16000000
0 100000 200000 300000 400000
LDC
Costo
Datos Sin Regresionar:
LDCCOSTO
122722 4218868
207507 7320252
294547 10574357
418927 15306888
LDC COSTO
* 80000 2577511
122722 4177901
207507 7353995
294547 10614562
418927 15273907
* 450000 16437919
Datos Regresionados:
22
xxn
xyxynb
bn
x
n
ya
Costo = - 419334.169 + 37.461(LDC)
t=4.3 student con n-2 GL y 95% de confianza 3006128945463 REG