Estimación de Proyectos Software 1
1. Introducción. Estimación: (Del lat. aestimatĭo, ĭ -ōnis). Aprecio y valor que se da y en que se tasa y considera algo Estimación en relación a la IS: Cumplimiento de plazos en costes. Modelos basados en los conocimientos adquiridos. Tipos: Matemáticos / paramétricos. Basados en la experiencia. Técnicas orientadas al aprendizaje. Modelos Dinámicos. i 2
2.Modelos matemáticos paramétricos. Ecuaciones matemáticas. Introducción de valores. Variables dependientes: Esfuerzo y tiempo. Aron 1969 Doty 1977 Bailey Basili 1981 ESD 1975 Cocomo 1981 Farr & Zagorski 1965 Cocomo II 1997-2000 Puntos Función 1979 Copmo 1984 GRC 1974 Navair SCD Nelson Sech Square SLICE SPQR 1971 1966 1980 1977 1977 IBM TRW Boing Checkpoint Estimacs 1977 1974 1977 1977 1983 Price-S SEER-SEM 1983 Select 1988 SLIM 1978 Softcost 1981 3
3. Experiencia de los expertos. No se dispone de datos empíricos. Fundamentados en la opinión (Subjetivo). Tipos: Método Delphi (1966): Primera fase: recolección individual de opiniones expertas. Segunda fase: conclusiones conociendo las opiniones. Work Breakdown Structure (WBS): Ayuda a determinar el coste de las tareas a partir de la descomposición de las mismas. 4
4. Técnicas orientadas aprendizaje. Basado en datos de proyectos anteriores. Sólo para proyectos del mismo tipo que datos. Tipos: Método del caso. Redes de Neuronas: El más extendido tras los modelos matemáticos. Se entrenan usando datos históricos. Especificaciones de entrenamiento en función de un Delta determinado (Datos-Modelo neuronal). 5
5. Modelos Dinámicos. Un proyecto software cambia a lo largo de su ciclo de desarrollo, tanto en sus factores como en el esfuerzo. Forrester del MIT en 1961. Aplicaciones p o en la Ingeniería e de Software: Modelos generales Modelo de Abdel-Hamid y Madnick Modelo dinámico reducido... Modelos particulares: Modelo de productividad y elementos sociolaborales. 6
5. Modelos Dinámicos. 7
6. COCOMO II. Introducción. Primer estudio LDC [Nelson 1966] Finales de los 70 : 1977 PRICE-S SLIM de Putnam... COCOMO (Constructive Cost Model) 1981 Libre distribución, No propietario, USC... Fortran, Cobol, C COCOMO ADA 1987 COCOMO II (USC Center of SE) 1997-2000 Power Builder, Visual Basic, C#, Java... 8
7. COCOMO II. Modelos (Jerarquía). Composición de la aplicación Proyectos basados en CASE, Generadores. Uso de la Métrica Object Points [Banker1994]: Pantallas, informes, módulos Diseño Previo Para obtener estimaciones aproximadas del coste de un proyecto antes de que esté determinada por completo su arquitectura. Post Arquitectura Usaremos Modelo COCOMO II más detallado. Se utiliza una vez que se ha desarrollado por completo la arquitectura del proyecto. 9
8. COCOMO II. Ecuación esfuerzo. PM meseshombre = A x (Tamaño) B x EM A Constante = 2,94 en calibración 2000 E Ahorro relativo respecto a estimaciones factores. Tamaño = KLDC (1+ (BRAK/100)) BRAK volatilidad de requisitos % desecho LDC EM Multiplicadores de Esfuerzo... Muchos... B = C + 0,01x Σ SF C Constante exponencial = 0,91 en calibración 2000 SF Factores de Escala... Muchos... 10
8. COCOMO II. Ecuación tiempo. TDEV = D x (PM) F x (sced%/100) TDEV Tiempo en meses para aceptación del desarrollo D Constante = 3,67 PM Esfuerzo en personas/mes F 0,28+0,2*(B-0,91) SCED % el porcentaje de reducción o incremento en el calendario nominal del proyecto 11
9. COCOMO II. Multiplicadores esfuerzo. Producto RELY DATA DOCU CPLX RUSE Plataforma TIME STOR PVOL Personal ACAP AEXP PCAP PCEXP LTEX PCON Proyecto TOOL SCED SITE 12
9. COCOMO II. Multiplicadores esfuerzo. RELY: Fiabilidad Requerida del SW. MB, B, N, A, MA, XA Producto DATA: Volumen de datos (BD en bytes/ SLOC) B < 10, N < 100, A < 1000 CPLX: Complejidad del producto medida en 5 áreas: Funcionamiento de CRTL Funcionamiento computacional Funcionamiento de dispositivos Funcionamiento del sector de datos Funcionamiento del gestor de IF de Usuario RUSE: Reutilización requerida DOCU: Documentación asociada a las necesidades del ciclo de vida. 13
9. COCOMO II. Multiplicadores esfuerzo. Plataforma TIME: Restricción del Tiempo de Ejecución (Vigencia) N < 50%, A 70%, MA 85%,XA 95% STOR: Restricción en almacenamiento principal p (Ídem) N < 50%, A 70%, MA 85%,XA 95% PVOL: Volatilidad de la plataforma HW y SW B <12 meses, N <6 meses, A < 2 meses, MA <1 mes 14
9. COCOMO II. Multiplicadores esfuerzo. Personal ACAP: Capacidad de los analistas. MB, B, N, A, MA, XA AEXP: Experiencia en el área funcional. MB, B, N, A, MA, XA PCAP: Capacidad de los programadores. PEXP: Experiencia en el área funcional. LTEX: Experiencia i en el lenguaje y herramientas. PCON: Continuidad del personal. 15
9. COCOMO II. Multiplicadores esfuerzo. Proyecto TOOL: Uso de herramientas software. SITE: Desarrollo en varias localizaciones Situación (Local País) Comunicaciones (Teléfono Multimedia interactiva) SCED: Restricciones de duración del proyecto Muy Bajo Acabar en el 75% de t sobre el nominal Bajo 80% Nominal 100% Alto 130% Muy alto 160% 16
10. COCOMO II. Factores de escala. PREC: Precedencia. MB Sin Precedentes MA Muy Familiar. FLEX: Flexibilidad de desarrollo. MB Riguroso MA Conformidad. RESL: Resolución de Arquitectura: Identificación de riesgos y eliminación de los mismos. % tiempo dedicado a establecer arquitectura: MB 5%... MA 33% % Arquitectos SW alto nivel. Nivel incertidumbre arquitectura. Nº de ítems de riesgo: MB > 10 Crítico... MA > 5 No crítico. TEAM: Cohesión del equipo MB Interacción difícil MA Muy cooperativo. PMAT: Madurez del proceso software. Cuestionario de madurez CMM. 17
11. COCOMO II. Factores de escala. 5. Optimizado 4. Gestionado 3. Definido 2. Repetible 1. Inicial 18
12. COCOMO II. Herramientas. Herramienta libre distribución USC: ftp://ftp.usc.edu/pub/soft_engineering/cocomoii/cocomo9 / f i /COCOMOII/ 9.0/c990windows.exe Instalado en las aulas de informática de la UC3M Gratuito Otras herramienta de pago: www.costxpert.com Multitud de herramientas de pago. 19
13. COCOMO II. Herramienta USC. 20
21