Javier Garzas (URJC Kybele) Claves para implantar un modelo de estimación software en grandes empresas

1,235 views

Published on

Primera jornada en España especializada en estimación software

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,235
On SlideShare
0
From Embeds
0
Number of Embeds
359
Actions
Shares
0
Downloads
0
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Javier Garzas (URJC Kybele) Claves para implantar un modelo de estimación software en grandes empresas

  1. 1. Dr. Javier Garzás @jgarzasKYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  2. 2. La mayor causa de fracasoen proyectos software vienede la presión del calendario…por haber hecho malasestimaciones- Brooks (1975)
  3. 3. 5 áreas más problemáticas 5 Gestión de la Configuración4Aseguramiento 12,9% 1 Medición 30,5% de la Calidad 12,9% Planificación del Proyecto 2 Institucionaliza (ESTIMACIÓN) ción3 21,1% 23,5%
  4. 4. #1 –Método y unidad de medición del tamaño KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information. #2 –Ajustar el método a la organización 42 KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information. KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2011 All rights reserved. Contains propietary information.
  5. 5. #1 – Método y unidad de medición del tamaño KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  6. 6. Putnam COCOMO Effort Cost Estimation Estimation Puntos Size Función StaffingEstimation LOC Estimation Duration Scheduling Estimation KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  7. 7. - Basados en la experiencia- Históricos – Analogía- De base estadística(Putnam, COCOMO, PuntoFunción, etc.) KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  8. 8. Se utilizan las líneas decódigo como unidad,pero es difícil estimarlasen las primeras fasesdel ciclo de vida KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  9. 9. Puntos Funciónmiden eltamañofuncional (noesfuerzo, y sólosoftware) enbase a losrequerimientos
  10. 10. KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  11. 11. COSMIC FISMA IFPUG MK II NESMAKYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2012 All rights reserved. Contains propietary information.
  12. 12. MÉTODOS SIMPLIFICADOS FP LitePunto Caso de Uso 13KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  13. 13. La estimación parte de losrequisitos, del pliego dePrescripciones Técnicas ode una descripcióninformal de requisitos 14 KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  14. 14. PROCESO (MÉTODO ESTÁNDAR DE IFPUG)1. Identificar la Frontera de la Aplicación2. Identificar los 5 Elementos Funcionales3. Evaluar la Complejidad4. Calcular lo PF Sin Ajustar5. Evaluar los 14 Atributos de Ajuste6. Calcular el Factor de Ajuste7. Calcular el Valor Final de los PF
  15. 15. CÁLCULO DE LOS 5 ELEMENTOS CLAVE Ficheros Lógicos Internos (ILFs) Funciones de datos Ficheros Lógicos Externos (ELFs)Cálculo de Puntos Función Entradas (EI) Funciones de transaccione Salidas (EO) s Consultas (EQ) KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  16. 16. PROCESO (MÉTODO ESTÁNDAR DE IFPUG)1. Identificar la Frontera de la Aplicación2. Identificar los 5 Elementos Funcionales3. Evaluar la Complejidad4. Calcular lo PF Sin Ajustar5. Evaluar los 14 Atributos de Ajuste6. Calcular el Factor de Ajuste7. Calcular el Valor Final de los PF
  17. 17. Puntos Función =cada elemento * su complejidad Parámetro significativo Complejidad Complejidad Complejidad Total baja media alta parámetroEntradas x3 x4 x6Salidas x4 x5 x7Ficheros internos lógicos x7 x 10 x 15Ficheros de interfaz x5 x7 x 10externosConsultas externas x3 x4 x6Puntos de función noajustados KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  18. 18. PROCESO (MÉTODO ESTÁNDAR DE IFPUG)1. Identificar la Frontera de la Aplicación2. Identificar los 5 Elementos Funcionales3. Evaluar la Complejidad4. Calcular lo PF Sin Ajustar5. Evaluar los 14 Atributos de Ajuste6. Calcular el Factor de Ajuste7. Calcular el Valor Final de los PF
  19. 19. AJUSTE DE LOS PF14 factores que contribuyen a lacomplejidad de una aplicación. Se valoran del 0-5 Factores de complejidad (FC) 0-5 Factores de complejidad (FC) 0-5 Comunicación de datos Funciones distribuidas Rendimiento Gran carga de trabajo Frecuencia de transacciones Entrada on-line de datos Requisitos de manejo del usuario Actualizaciones on-line final Procesos complejos Utilización con otros sistemas Facilidad de mantenimiento Facilidad de operación Instalación en múltiples lugares Facilidad de cambio KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  20. 20. Factor Ajuste =(0.01 * Factores Complejidad) + 0.65 El FA puede oscilar entre 0,65 y 1,35, es decir, permite una variación máxima de 35% sobre el valor de los PF KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  21. 21. Puntos FunciónPF sin ajustar Factor Ajuste KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  22. 22. www.qsm.com/resources/function-point-languages-tableKYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  23. 23. PROCESO (MÉTODO ESTÁNDAR DE IFPUG)1. Identificar la Frontera de la Aplicación2. Identificar los 5 Elementos Funcionales3. Evaluar la Complejidad PUNTOS4. Calcular lo PF Sin Ajustar FUNCIÓN LITE5. Evaluar los 14 Atributos de Ajuste6. Calcular el Factor de Ajuste7. Calcular el Valor Final de los PF
  24. 24. Caso de uso: Descripciónnarrativa de la secuencia deeventos entre un actor y elsistema KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  25. 25. Use Case Name: COMPRAR LIBROSBasic flow of events:1. El “usuario” introduce su login y password2. El “usuario” selecciona el libro a comprar3. El “usuario” selecciona las unidades del libro a comprar4. El “usuario” introduce su número de tarjeta de crédito5. El “sistema” valida la tarjeta con el “centro de validación del Banco”6. El “sistema” muestra una confirmaciónAlternative flow of events:3.1 No hay suficientes unidades del libro: 3.1.1 El sistema informa que no se puede realizar la compra.5.1 La tarjeta de crédito no es valida 6.1.1 El sistema informa al usuario de que la tarjeta no es valida 6.1.2 El cliente puede cancelar la operación o repetirla. KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  26. 26. Los diagramas no sonsuficiente, es necesariala descripción textual, ycasos de usocortos, claros yunificados
  27. 27. KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  28. 28. “Actors” categorizados “Use cases” categorizados según complejidad según complejidad Unadjusted Use Technical Factors Environmental Case Point (TCF) Factors (EF) (UUCP) USE CASE POINTS (UCP) ESTIMATION KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  29. 29. ACTOR TYPE WEIGHT Simple (another system with defined API) 1Average (interaction through a protocol such as TCP/IP) 2Complex (interaction through a GUI or Web Page) 3 * Se miden más las interacciones que los casos de uso KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  30. 30. Num of TransactionsUSE CASE (UC steps, including WEIGHT TYPE secondary scenarios)Simple 3 or minor 1Average 4 to 7 2Complex 7 or major 3 KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  31. 31. UNADJUSTED USE CASE POINTS Complejidad de cada actor Complejidad de cada CUKYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  32. 32. KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  33. 33. Los “unadjusted use case points” se ajustan en base a 13 factores técnicos Influence (0 = no influence; 3 Factor Description Weight Resultant = average; 5 strong) T1 Distributed System 2 n1 r1 = 2*n1 T2 Response adjectives 2 n2 r2 = 2*n2 T3 End-user efficiency 1 n3 r3 = 1*n3 T4 Complex processing 1 n4 r4 = 1*n4 T5 Reusable code 1 n5 r5 = 1*n5 T6 Easy to install 0,5 n6 r6 = 0,5*n6 T7 Easy to use 0,5 n7 r7 = 0,5*n7 T8 Portable 2 n8 r8 = 2*n8 T9 Easy to change 1 n9 r9 = 1*n9 T10 Concurrent 1 n10 r10 = 1*n10 T11 Security features 1 n11 r11 = 1*n11 T12 Access for third parties 1 n12 r12 = 1*n12 T13 Special training required 1 n13 r13 = 1*n13 TECHNICAL FACTORS (TCF) r 13 0,6 (0,01* r1 ) KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  34. 34. Los “unadjusted use case points” se ajustan en base a 8 factores de entorno Influence (0 = no influence; 3 Factor Description Weight Resultant = average; 5 strong) F1 Familiar with RUP 1,5 n1 r1 = 1,5*n1 F2 Application experience 0,5 n2 r2 = 0,5*n2 F3 Object-oriented experience 1 n3 r3 = 1*n3 F4 Lead analyst capability Motivation 0,5 n4 r4 = 0,5*n4 F5 Motivation 1 n5 r5 = 1*n5 F6 Stable requirements 2 n6 r6 = 2*n6 F7 Part-time workers -1 n7 r7 = -1*n7 F8 Difficult programming languaje 2 n8 r8 = 2*n8 ENVIROMENT FACTORS (EF) r8 1,4 ( 0,03 * r1 ) KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  35. 35. PUNTOS CASO DE USOPCU SIN AJUSTAR * FAC. TÉCNICOS * FAC. ENTORNO KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  36. 36. ESFUERZO (horas/hombre) =PF o PCU*FACTOR DEPRODUCTIVIDAD KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  37. 37. Karner propone 20horas por punto casode uso. Barnerjee entre15 y 30 horas
  38. 38. SLIM (Putnam), en baseal estudio de 750sistemas, elabora unmétodo estadístico paraestimar esfuerzo y tiempode desarrollo. COCOMO KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  39. 39. La Productividad incluye unconjunto de factores que afectan atoda la organización, incluyendo: la gestión del proyecto la utilización de buenos requerimientos, diseños, codificaciones, etc. el nivel del lenguaje de programación el estado de la tecnología la experiencia de los miembros del grupo la complejidad de la aplicación. KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  40. 40. Los factores deproductividad (PCU * x)dependen de cadaorganización… loimportante es fijar unoe ir ajustándolo
  41. 41. #2 – Ajustar el método a la organización 42 KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  42. 42. Metodología de Estimación de la DGTCálculo de Puntos de Casos de Uso sin ajustar Adaptación del UAW: Factor de Peso de los Actores sin ajustar Tipo de Actor Descripción Factor de peso Se consideran actores simples aquellos sistemas externos con los que el sistema a desarrollar se comunica mediante una API, Simple como: 1 @Firma. Registro Telemático. Se consideran actores medios aquellos sistemas externos con los que el sistema a desarrollar se comunica mediante protocolo, como: Medio Web Services. 2 Host (JCA). Cuando la implementación de la parte del Host es externa a la aplicación y por tanto el Host es un actor externo al sistema desarrollado. Se consideran actores complejos a los usuarios que interactúan Complejo con el sistema mediante interfaz gráfica. En el caso de la DGT, 3 normalmente será por Web. Metodología y Herramienta de Estimación Software para la DGT (MHES) 19 43 KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  43. 43. Factor Tipología Valor Factor Descripción de DGT Asignado Peso Sistema totalmente centralizado 0 1 2 Sistema Aplicación Internet con acceso Web Service T1 3 3 Distribuido a Intranet Integración con Sistemas Externos con Web 4 Service Integración con Sistemas Externos sin Web 5 Service (NEDAES) Aplicación Batch sin requerimientos 0 especiales Se indican requisitos de rendimiento pero sin 1 tratamiento definido. Rendimiento o Tiempo respuesta < 5 segundos 2 T2 tiempo de 1 Tiempo respuesta < 2 segundos 3 respuesta 4 Aplicación que será ejecutada por otras aplicaciones en background y por tanto el 5 tiempo de respuesta tiene que ser mínimo, o la aplicación es un componente común 0 El usuario es un Área, Subdirección de la 1 DGT 2 Criticidad del T3 1 El usuario es una Jefatura de la DGT 3 usuario final Usuarios Externos (Otros ministerios, 4 Colegios, etc.) El usuario es el ciudadano o la aplicación es un componente común y los usuarios son el 5 resto de desarrollos de la DGT 44KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  44. 44. #3- Utilizar estimación por analogía… o mejora continua 45 KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  45. 45. Analogía: Guardarestimaciones pasadas,y su desviación real,para comparar nuevosproyectos con otrosanteriores similares KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  46. 46. La exactitud de la estimación crece con los datos históricos 20%De Esfuerzo EstimadoSobre/Bajo Procentaje 0% -145% Sin Datos Históricos Con Datos Históricos Varianción entre -145% to +20% Varianción entre +20% to -20% (Mayormente en niveles 1 y 2 CMM) (Nivel 3) Fuente: 120 Projects in Boeing Information Systems KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  47. 47. Concluyendo…
  48. 48. International SoftwareBenchmarking Standards Group (ISBSG) Planificación Especificación Diseño Construcción Pruebas Implantación 9% 11% 15% 43% 16% 6% IFPUG Requisitos y Diseño y Pruebas de Pruebas de Implantación Análisis Construcción Integración Sistema 20% 58% 10% 6% 6% KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  49. 49. La estimación del proyectono es solo la estimaciónsoftware: hayformación, instalación, pasos aproducción, vacaciones,enfermedades, reuniones, etc. KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  50. 50. ¿Cuánto tiempo llevaráhacer una Web?Depende.Es imposible estimar sinapenas tener idea de lo quehay que construir KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  51. 51. Cono de incertidumbre: la exactitud es proporcional a la definición del productoError en la estimación 4x 2x 1.5x 1.25x 1.0x VS. 0.8x 0.67x 0.5x 0.25x Time KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  52. 52. Estimación, no“exactimación”- Al estimar rara vez la probabilidad deacierto será 100%.- A mayor detalle, mejor método y segúnla fase del ciclo de vida, la probabilidadserá mayor. KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.
  53. 53. #1 –Método y unidad de medición del tamaño KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information. #2 –Ajustar el método a la organización 42 KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information. KYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2011 All rights reserved. Contains propietary information.
  54. 54. www.javiergarzas.com @jgarzasKYBELE CONSULTING S.L. www.kybeleconsulting.com - Copyright © 2008 All rights reserved. Contains propietary information.

×