1. tema 6 – administración de proyectos enrique barreiro departamento de informática universidade de vigo escuela superior de ingeniería informática ingeniería del software de gestión
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17. planificación temporal escuela superior de ingeniería informática ingeniería del software de gestión 4/7 11/7 18/7 25/7 1/8 8/8 15/8 22/8 29/8 5/9 12/9 19/9 Fernando T4 T8 T11 T12 T1 T3 T9 T2 T6 T10 T7 T5 Juana Ana Jaime María Asignación de personas a actividades Asignación de personas vs diagrama de Gantt El personal no tiene que estar asignado al proyecto todo el tiempo. En los periodos intermedios puede participar en otros proyectos, asistir a cursos de formación, tomar vacaciones,... Tarea Ingeniero T1 Juana T2 Ana T3 Juana T4 Fernando T5 María T6 Ana T7 Jaime T8 Fernando T9 Juana T10 Ana T11 Fernando T12 Fernando
18.
19.
20.
21. medición y métricas del software escuela superior de ingeniería informática ingeniería del software de gestión Ejemplos de métricas estáticas del producto métrica de producto descripción fan-in / fan-out fan-in: medida del número de funciones que llaman a otra función X fan-out: número de funciones que son llamadas por una función X. Un valor alto de fan-in indica que X está fuertemente acoplada al resto del diseño y que los cambios en X pueden tener efectos extensivos al resto del sistema. Un valor alto de fan-out indica que la complejidad de X podría ser excesiva, debido a la complejidad de la lógica de control necesaria para coordinar los componentes llamados. longitud del código Medida del tamaño del programa en líneas de código (LDC). Cuanto mayor sea el tamaño de un componente, más complejo y susceptible de incorporar errores será. complejidad ciclomática Medida de la complejidad del control de un programa, y está relacionada con la comprensión del programa. longitud de los identificadores Medida de la longitud promedio de los diferentes identificadores de un programa. Cuanto mayor sea esta longitud, más probable es que tengan significado, y por tanto el programa será más comprensible. profundidad de los if anidados Medida de la profundidad de anidamiento de las instrucciones if en un programa. Instrucciones if profundamente anidadas son difíciles de comprender y son potencialmente susceptibles a errores. índice de Fog Medida de la longitud promedio de las palabras y declaraciones en los documentos. Cuanto mayor sea el índice de Fog, más difícil será comprender el documento.
22. medición y métricas del software escuela superior de ingeniería informática ingeniería del software de gestión 1 2 3 4 5 6 7 8 9 R1 R2 R3 R4 Complejidad ciclomática V(G) = 4 Número de regiones = 4 11 aristas – 9 nodos = 4
23.
24. medición y métricas del software escuela superior de ingeniería informática ingeniería del software de gestión fuente: Ingeniería de software. Teoría y práctica. S.L. Pfleeger, p. 34 Botón OK Ventana tamaño ancho nombre_cliente fecha_emisión total compras mostrar_factura() Caja de texto Cartas_reclamo Factura fecha_emisión : Date fecha_pago : Date precio() impuesto() cliente() lista_compras() Compra fecha tasa_impuesto precio() impuesto() 1 1..* 1 1..* 1 0..* 1 1..* 1..* 0 Métrica factura compra cartas_ reclamo botón OK ventana caja de texto MPC 4 2 0 0 1 0 NDH 0 0 0 0 0 0 PAH 0 0 1 0 1 0 RPC - - - - - - AEC 3 4 2 1 3 1 CCM - - - - - -
25.
26.
27.
28.
29.
30.
31.
32.
33.
34. estimación basada en el problema escuela superior de ingeniería informática ingeniería del software de gestión descomposición del problema en funciones a partir del ámbito del software F1 F2 Fn cálculo de las variables de estimación (LDC y/o PF) de F1 estimación coste de F1 estimación de esfuerzo de F1 cálculo de las variables de estimación (LDC y/o PF) de F2 aplicación de métricas de productividad o coste coste de F2 aplicación de métricas de productividad o coste coste de F1 coste de Fn esfuerzo de F2 esfuerzo de F1 esfuerzo de Fn estimación global del coste del proyecto estimación global del esfuerzo del proyecto estimación coste de F2 estimación de esfuerzo de F2
35. estimación basada en el problema (LDC) escuela superior de ingeniería informática ingeniería del software de gestión Hay que desarrollar un software CAD que aceptará datos geométricos de 2 o 3 dimensiones por parte del ingeniero. Éste controlará el sistema CAD por medio de una interfaz que debe tener un diseño de buena calidad. Una base de datos CAD contiene todos los datos geométricos y la información de soporte. Se desarrollarán módulos de análisis de diseño para producir la salida requerida que se va a visualizar en varios dispositivos gráficos. El software se diseñará para controlar e interconectar diversos periféricos, como un ratón, un digitalizador y una impresora láser. Funciones identificadas: interfaz de usuario y facilidades de control (IUFC) análisis geométrico de dos dimensiones (AG2D) análisis geométrico de tres dimensiones (AG3D) gestión de base de datos (GBD) facilidades de la interfaz gráfica (FIG) control periféricos (CP) módulos de análisis del diseño (MAD) Estimación en LDC de AG3D: optimista: 4600 más probable: 6900 pesimista: 8600 VE = (S opt + 4S m + S pes )/6 Función LDC estimada IUFC 2300 AG2D 5300 AG3D 6800 GBD 3350 FIG 4950 CP 2100 MAD 8400 Total 33200 Datos históricos : productividad media de la organización en proyectos similares: 620 LDC/pm Tarifa laboral: 8000 $ /mes Coste LDC: 13 $ descomposición de funciones métricas de proyectos anteriores Coste total proyecto: 431000 $ Esfuerzo estimado : 54 personas-mes
36. estimación basada en el problema (PF) escuela superior de ingeniería informática ingeniería del software de gestión Copia de seguridad y recuperación 4 Comunicaciones 2 Proceso distribuido 0 Rendimiento crítico 4 Entorno operativo existente 3 Entrada de datos online 4 Transacciones entrada en varias pant. 5 Archivos maestros actualizados online 3 Complejidad valores dominio información 5 Complejidad procesamiento interno 5 Código diseñado para reutilización 4 Conversión en diseño 3 Instalaciones múltiples 5 Aplicación diseñada para cambios 5 PF estimado = cuenta total x (0,65 + 0,01 x Suma (Fi) PF estimado = 372 Coste total proyecto: 457000 $ Esfuerzo estimado : 58 personas-mes Datos históricos : productividad media de la organización en proyectos similares: 6,5 PF/pm Tarifa laboral: 8000 $ /mes Coste por PF: 1.230 $ métricas de proyectos anteriores
37.
38. estimación basada en el proceso escuela superior de ingeniería informática ingeniería del software de gestión Tarifa laboral: 8000 $ /mes Coste total proyecto : 368.000 $ Esfuerzo estimado : 46 personas-mes Comparación de las distintas estimaciones Estimación basada en el producto (LDC): 54 pm Estimación basada en el producto (PF): 58 pm Estimación basada en el proceso: 46 pm Estimación media: 53 pm Variación máxima: 13%
39.
40.
41.
42. el riesgo en el desarrollo de software escuela superior de ingeniería informática ingeniería del software de gestión Ejemplos de posibles riesgos en el desarrollo de software riesgo tipo de riesgo descripción rotación de personal proyecto, producto y negocio personal con experiencia abandona el proyecto antes de que finalice cambio de administración proyecto cambio de administración organizativa con diferentes prioridades no disponibilidad del hardware proyecto el hardware necesario para el proyecto no se recibe a tiempo cambios de requerimientos proyecto y producto existencia de más cambios de requerimientos de los previstos inicialmente retrasos en la especificación proyecto y producto retrasos en las especificaciones de interfaces esenciales subestimación del tamaño proyecto y producto el tamaño del sistema se ha subestimado bajo rendimiento de la herramienta CASE producto las herramientas CASE que ayudan al proyecto no tienen el rendimiento y las funcionalidades esperadas cambio de tecnología negocio la tecnología fundamental sobre la que se está construyendo el sistema es sustituida por una nueva competencia del producto negocio un producto competitivo se pone en venta antes de que el sistema se complete
43.
44.
45.
46.
47.
48. bibliografía escuela superior de ingeniería informática ingeniería del software de gestión Sommerville, I. Ingeniería de Software , cap. 4 y 24 (pp. 547-554) Pressman, R.S. Ingeniería del Software. Un enfoque práctico , cap. 4, 5 y 6 Bruegge, B., Dutoit, A.H., Ingeniería del Software Orientado a Objetos , cap. 3