ndice 8. Planificacin temporal y plan del proyecto del software Conceptos bsicos Introduccin Planificacin temporal
Relacin entre personas y esfuerzo Distribucin del esfuerzo
Ingeniera del Software Antonio Navarro
1
Ingeniera del Software Antonio Navarro
2
ndice Definicin de un conjunto de tareas para el proyecto de software Introduccin Grado de rigor. Criterios de adaptacin. Clculo del valor selector del conjunto de tareas. Interpretacin del SCT y seleccin del cjto. tareas.Ingeniera del Software Antonio Navarro 3
ndice Seleccin de las tareas de IS Descomposicin de referencia. Ejemplo.
Refinamiento de las tareas principales Planificacin temporal Grficos Gantt. Redes de tareas. Seguimiento de la planificacin temporal. Anlisis del valor ganado.
Ingeniera del Software Antonio Navarro
4
ndice El plan del proyecto del software Introduccin. Pressman. IEEE Std. 1058-1998.
Conceptos bsicos Introduccin La planificacin temporal y el seguimiento del proyecto tienen como objetivo primordial evitar los retrasos en las entregas del software Causas de los retrasos:- Fechas lmite de entrega poco realistas. - Cambio de los requisitos que no se reflejan en la planificacin temporal.
Conclusiones
Ingeniera del Software Antonio Navarro
5
Ingeniera del Software Antonio Navarro
6
Conceptos bsicos Introduccin- Subestimacin honesta del esfuerzo y/o recursos. - Riesgos predecibles e impredecibles no considerados. - Falta de comunicacin entre la plantilla. - Falta de reconocimiento del retraso en un proyecto. - Falta de medidas para corregir el problema.
Conceptos bsicos Introduccin Las fechas lmite poco realistas son bastante frecuente en el desarrollo de software Jams debemos empezar un proyecto sabiendo que la fecha impuesta es imposible de alcanzar Tampoco es factible cambiar la fecha, pues por lo general, est impuesta por la ley del mercadoIngeniera del Software Antonio Navarro 8
Ingeniera del Software Antonio Navarro
7
Conceptos bsicos Introduccin Solucin:- Realizar una estimacin detallada (productividad>25%). - Utilizar un modelo incremental que implemente la funcionalidad crtica mnima para la fecha lmite impuesta. - Reunirse con los clientes y explicar la situacin.
Conceptos bsicos Planificacin temporal Cmo se retrasan las planificaciones temporales en los proyectos? diariamente [Fred Brooks] Cmo se cumplen las planificaciones temporales en los proyectos? diariamente [Antonio Navarro]
Ingeniera del Software Antonio Navarro
9
Ingeniera del Software Antonio Navarro
10
Conceptos bsicos Planificacin temporal En los proyectos hay tareas ms importantes que otras, e.g.: disear biblioteca vs. comprar billetes y reservar hotel... ... y en planificacin temporal tambin, e.g.: comprar billetes y reservar hotel vs. disear biblioteca Las tareas crticas son aquellas que de retrasarse, retrasan el proyectoIngeniera del Software Antonio Navarro 11
Conceptos bsicos Planificacin temporal El objetivo del gestor es:- Definir las tareas de trabajo del proyecto. - Identificar aquellas que son crticas. - Hacer seguimiento de las tareas, con especial atencin a las crticas.
Con este fin, el gestor realiza la planificacin temporalIngeniera del Software Antonio Navarro 12
Conceptos bsicos Planificacin temporal La planificacin temporal de un proyecto software es una actividad que distribuye el esfuerzo estimado a lo largo de la duracin prevista del proyecto, asignando el esfuerzo a las tareas de trabajo concretas La planificacin temporal no es esttica, evoluciona con el tiempoIngeniera del Software Antonio Navarro 13
Conceptos bsicos Planificacin temporal Podemos distinguir entre una planificacin temporal macroscpica y otra detallada Adems, la planificacin temporal puede hacerse desde dos supuestos:- Fecha de entrega ya establecida. - Lmites cronolgicos aproximados.
Ingeniera del Software Antonio Navarro
14
Conceptos bsicos Planificacin temporal La planificacin temporal se gua por una serie de principios bsicos:- Compartimentalizacin. Nmero de tareas manejables, obtenidas mediante WBS. - Interdependencia. Dependencias entre las tareas identificadas. - Asignacin de esfuerzo. A cada tarea se le debe asignar un cierto nmero de unidades de trabajo, as como fecha de inicio y de fin.Ingeniera del Software Antonio Navarro 15
Conceptos bsicos Planificacin temporal- Validacin de esfuerzo. No se deben sobreasignar recursos. - Responsabilidades definidas. Cada tarea debe tener asignados miembros especficos. - Resultados definidos. Cada tarea debe tener un resultado definido. - Hitos definidos. Las tareas deberan asociarse a hitos del proyecto. Se consigue un hito cuando se acepta uno o ms productos tras revisar su calidadIngeniera del Software Antonio Navarro 16
Relacin entre personas... Desde el punto de vista del esfuerzo da igual tener tres personas trabajando dos meses que dos personas trabajando tres meses Lo que no da igual es aadir personas de manera incontrolada Personas canales de comunicacin descenso en la productividadIngeniera del Software Antonio Navarro 17
Relacin entre personas... Supongamos cuatro desarrolladores con una productividad individual de 600(LDC/pm)- Cuando trabajan juntos, se abren seis posibles vas de comunicacinD1
D2
D4
D3
Ingeniera del Software Antonio Navarro
18
Relacin entre personas...- Cada va de comunicacin requiere un tiempo que podra emplearse en desarrollo - Si suponemos una reduccin en 20 (LDC/vames) debido al gasto en comunicacin, la productividad real es:600(LDC/pm)*4(p) 20 (LDC/vm)*6(v) = 2280 (LDC/m) 2280(LDC/m)/4(p) = 570(LDC/pm)
Relacin entre personas...- Si aadimos dos personas ms, las vas de comunicacin pasan a ser 15. - En este caso, la productividad es:600(LDC/pm)*6(p)20(LDC/vm)*15(v) = 3300(LDC/m) 3300(LDC/m)/6(p) = 550 (LDC/pm)
es decir, una merma del 8,3% en la productividad
es decir, una merma del 5% en la productividadIngeniera del Software Antonio Navarro 19 Ingeniera del Software Antonio Navarro 20
Relacin entre personas... Es decir, cuanta ms gente haya en un equipo, menor ser su productividad Esto puede tener consecuencias nefastas si se aada gente al final de un proyecto- Supongamos que durante diez meses tenemos un equipo de cuatro programadores, y a tres meses de acabar el proyecto incorporamos a dos nuevos programadores.Ingeniera del Software Antonio Navarro 21
Relacin entre personas...- Las 6 vas de comunicacin ya establecidas no suponen ningn cambio, pero las nueve nuevas establecidas entre los dos miembros nuevos y los cuatro existentes van a ser ms conflictivas y supondrn una disminucin en la productividad de 40(LDC/vm). - La productividad del equipo es:600(LDC/pm)*6(p)20 (LDC/vm)*6(v)40(LDC/vm)*9(v) = 3120(LDC/m)Ingeniera del Software Antonio Navarro 22
Relacin entre personas...3120(LDC/m) / 6(p) = 520(LDC/pm)
Relacin entre personas... El razonamiento anterior est muy simplificado Pero si es cierto que cuanto mayor sea el equipo, ms baja va a ser su productividad (por lo general) La ecuacin del software tambin sustenta esta hiptesis23 Ingeniera del Software Antonio Navarro 24
- Por lo tanto en los ltimos tres meses cuatro personas producen:570(LDC/pm)*4(p)*3(m) = 6840(LDC)
- Seis personas en el mismo periodo producen:520(LDC/pm)*6(p)*3(m) = 9360(LDC)
- Es decir, dos personas ms solo aportan 2520(LDC) cuando en teora deberan aportar 3600(LDC), un 30% menos de lo esperado.Ingeniera del Software Antonio Navarro
Relacin entre personas... Ecuacin del software:E = B(LDC/P)3*(1/t4)
Relacin entre personas...E = 35/t4 - Si t=12 mesesE = 35 (pm) equipo = 3 (p)
Es decir:E = (B(LDC/P)3*)/t4
- Si t=13 mesesE= 25 (pm) equipo = 2 (p) - Es decir, es ms rentable menos personas ms tiempo... ... o eso, o estamos forzando la ecuacin del softwareIngeniera del Software Antonio Navarro 26
Supongamos un proyecto con 50000(LDC), B=0,28 y P=10000
Ingeniera del Software Antonio Navarro
25
Distribucin del esfuerzo Regla del 40-20-40 40% esfuerzo en anlisis y diseo. 20% esfuerzo en codificacin. 40% esfuerzo en pruebas.
Distribucin del esfuerzo Una distribucin del esfuerzo puede ser:- Planificacin: 2-3% - Anlisis de requisitos: 10-25% - Diseo: 20-25% - Codificacin: 15-20% - Pruebas: 30-40%
Es una directriz genrica Cada proyecto es un mundo
Ingeniera del Software Antonio Navarro
27
Ingeniera del Software Antonio Navarro
28
Definicin de un conjunto... Introduccin Los modelos de proceso son fijos La estructura rgida de los modelos de proceso se puede adaptar a los proyectos variando el conjunto de tareas de IS en las que descomponemos sus AE. En el modelo en cascada, las tareas de IS se corresponden con las tareas de trabajoIngeniera del Software Antonio Navarro 29
Definicin de un conjunto... Introduccin En los iterativos, las tareas de trabajo son repeticiones de las tareas de IS Luego, es equivalente decidir:- En cuantas tareas de IS se van a descomponer las AE. - En cuantas tareas de trabajo se va descomponer el proyecto.Ingeniera del Software Antonio Navarro 30
Definicin de un conjunto... IntroduccinTarea de Ingeniera del softwareAE CTISMdulo dibujo Mdulo transformaciones Ana, Luis, Paco 01.11.03 01.12.03 Cdigo m. transf.
Definicin de un conjunto... Introduccin El conjunto de tareas de IS debe ser:- Suficientemente elevado para garantizar una alta calidad del software. - Suficientemente bajo para no sobrecargar al equipo de desarrollo.
Comunicacin Cliente TUE SRS
Planificacin Anlisis de riesgos Estim. Planif. Valor. Plan.
Ingeniera
Construccin y adaptacin
Anal. Diseo Codif.
Evaluacin Cliente Prueba Ensam. Instal. Eval.
Mdulo archivo Mdulo impresin
Ejemplo tabla EDT
Tarea de trabajo
Ingeniera del Software Antonio Navarro
31
Ingeniera del Software Antonio Navarro
32
Definicin de un conjunto... Grado de rigor Los conjuntos de tareas se eligen en funcin del grado de rigor que deseemos aplicar en un proyecto A su vez el grado de rigor depende fundamentalmente del tipo de proyecto:- Proyectos de desarrollo del concepto. Se inician para explorar algn nuevo concepto de negocios o aplicacin de alguna nueva tecnologa.Ingeniera del Software Antonio Navarro 33
Definicin de un conjunto... Grado de rigor- Proyectos de desarrollo de una nueva aplicacin. Se aceptan como consecuencia del encargo de un cliente especfico. - Proyectos de mejoras de aplicaciones. Ocurren cuando un software existente sufre grandes modificaciones de su funcionamiento, rendimiento o interfaces que son observables externamente.
Ingeniera del Software Antonio Navarro
34
Definicin de un conjunto... Grado de rigor- Proyectos de mantenimiento de aplicaciones. Corrigen, adaptan o amplan un software existente de manera que pueden no ser obvia para el usuario final. - Proyectos de reingeniera. Se llevan a cabo con la intencin de reconstruir un sistema existente (heredado) en su totalidad o parte.
Definicin de un conjunto... Grado de rigor El grado de rigor en la aplicacin de un proceso del software puede ser:- Casual. - Estructurado. - Estricto. - Reaccin rpida.
Ingeniera del Software Antonio Navarro
35
Ingeniera del Software Antonio Navarro
36
Definicin de un conjunto... Grado de rigor Casual- Se aplican todas las AE, pero ser requiere un conjunto de tareas mnimo. - Se minimizan las tareas protectoras. - Se reducen los requisitos de documentacin. - Son aplicables todos los principios bsicos de IS
Definicin de un conjunto... Grado de rigor Estructurado- Se aplican todas las AE. - Se aplican las actividades de proteccin necesarias para garantizar una alta calidad. - Se aplica SQA. - Se aplica GCS. - Se produce documentacin. - Aparecen tareas de medicin.Ingeniera del Software Antonio Navarro 38
Ingeniera del Software Antonio Navarro
37
Definicin de un conjunto... Grado de rigor Estricto- Se aplican todas las actividades posibles de IS de tal forma que se garantice una altsima calidad.
Definicin de un conjunto... Criterios Los criterios de adaptacin se emplean para determinar el grado de rigor Matizan la importancia del tipo de proyecto Hay once criterios de adaptacin Se puntan de uno (poca rigidez) a cinco (mucha rigidez)
Reaccin rpida- Se aplican las AE. - Tareas mnimas para garantizar calidad. - Se realiza back-filling.Ingeniera del Software Antonio Navarro 39
Ingeniera del Software Antonio Navarro
40
Definicin de un conjunto... Clculo del SCT
Definicin de un conjunto... Clculo del SCT
Tabla para el clculo del SCTIngeniera del Software Antonio Navarro 41
Ejemplo de clculo de SCTIngeniera del Software Antonio Navarro 42
Definicin de un conjunto... Interpretacin del SCTValor del SCT Grado de rigor SCT < 1,2 Casual 1,0 < SCT < 3,0 Estructurado SCT > 2,4 Estricto Solapamiento libertad
Seleccin de las tareas de IS Descomposicin de referencia La seleccin es algo que debe decidir el gestor en base al grado de rigor De todas formas por defecto podemos suponer un grado de rigor estructurado y fijar el conjunto de tareas de IS
Ingeniera del Software Antonio Navarro
43
Ingeniera del Software Antonio Navarro
44
Seleccin de las tareas de IS Descomposicin de referencia e.g. en el espiral de Boston:- Comunicacin con el cliente- TUE - Obtener SRS
Seleccin de las tareas de IS Descomposicin de referencia- Anlisis de riesgos- Valoracin de los riesgos - Obtener plan de gestin del riesgo
- Ingeniera- Anlisis - Diseo
- Planificacin- Estimacin - Realizar plan del proyecto del software
Ingeniera del Software Antonio Navarro
45
Ingeniera del Software Antonio Navarro
46
Seleccin de las tareas de IS Descomposicin de referencia- Construccin y adaptacin- Codificacin - Prueba - EnsamblajeAE CTISMdulo dibujo
Seleccin de las tareas de IS Descomposicin de referenciaTarea de Ingeniera del softwareComunicacin Cliente TUE SRS Planificacin Anlisis de riesgos Estim. Planif. Valor. Plan. Ingeniera Construccin y adaptacin Evaluacin Cliente Prueba Ensam. Instal. Eval. Anal. Diseo Codif.Ana, Luis, Paco 01.11.03 01.12.03 Cdigo m. transf.
Mdulo transformaciones
- Evaluacin por el cliente- Instalacin - Evaluacin
Mdulo archivo Mdulo impresin
Ejemplo tabla EDT
Tarea de trabajo
Ingeniera del Software Antonio Navarro
47
Ingeniera del Software Antonio Navarro
48
Seleccin de las tareas de IS Descomposicin de referencia Por supuesto, las actividades de proteccin estn empotradas en las AE En principio parece razonable suponer la existencia de un brecha entre las tres primeras AEs y las tres ltimas AEs- Al principio del proyecto se proporciona una planificacin temporal que permita obtener la informacin de gestin: SRS*, plan del proyecto y plan de gestin del riesgo.*IdealmenteIngeniera del Software Antonio Navarro 49
Seleccin de las tareas de IS Descomposicin de referencia- Una vez que disponemos de esta informacin, se hace una segunda planificacin para el desarrollo tcnico del proyecto. - No se excluye la posibilidad de hacer algn prototipo para obtener la informacin de gestin - Durante el desarrollo tcnico del proyecto se revisa la informacin de gestin al pasar por las AEs correspondientesIngeniera del Software Antonio Navarro 50
Seleccin de las tareas de IS Ejemplo Veamos un ejemplo de planificacin temporal Asignaremos recursos y fechas a las tareas de la WBS Este ejemplo incluso simplifica la descomposicin de referencia Programa que gestiona las comunicaciones de una empresa: Mdulo Comunicaciones Internas (MCI). Mdulo Comunicaciones Externas (MCE). Mdulo de Comunicaciones (MCI+MCE+extras).
Seleccin de las tareas de IS Ejemplo
Ejemplo de planificacin previa51 Ingeniera del Software Antonio Navarro 52
Ingeniera del Software Antonio Navarro
Seleccin de las tareas de IS Ejemplo Se han fusionado dos AE Se ha optado por hacer primero la SRS y la planificacin despus Tambin se poda haber optado por hacer primero la planificacin y despus la SRS Como parece que la especificacin no iba a dar muchos problemas, se ha decidido hacerla antes que el plan del proyectoIngeniera del Software Antonio Navarro 53
Seleccin de las tareas de IS Ejemplo
Ingeniera del Software Antonio Navarro
Ejemplo de planificacin temporal54
Seleccin de las tareas de IS Ejemplo
Seleccin de las tareas de IS Ejemplo
Ingeniera del Software Antonio Navarro
Ejemplo de planificacin temporal55
Ingeniera del Software Antonio Navarro
Planificacin NO VLIDA
56
Seleccin de las tareas de IS Ejemplo
Estimacin por descomposicin del proceso
La planificacin temporal anterior es macroscpica Si refinamos las tareas de trabajo principales anteriores obtendremos una planificacin temporal microscpica A mi entender, no es necesario dicho refinamiento, ya que la planificacin microscpica est implcita en los conocimientos de los miembros del equipo y sobrecarga el proceso de planificacinIngeniera del Software Antonio Navarro 58
Refinamiento de las tareas de trabajo principales
Ingeniera del Software Antonio Navarro
57
Planificacin temporal Grfico Gantt La WBS + informacin sobre planificacin temporal de la t53 es vital en el proceso de planificacin Sin embargo, esta informacin no se suele presentar en formato tabular (o arbreo) a los miembros del equipo Un mtodo usual es utilizar un grfico GanttIngeniera del Software Antonio Navarro 59
Planificacin temporal Grfico Gantt
Ingeniera del Software Antonio Navarro
Grfico Gantt de la planificacin de la t53
60
Planificacin temporal Redes de tareas El diagrama Gantt anterior incluye informacin sobre precedencia de tareas En general, no tiene porque ser as La informacin sobre precedencia de tareas se incluye en la red de tareas
Planificacin temporal Redes de tareas
Red de tareas de la planificacin de la t53Ingeniera del Software Antonio Navarro 61 Ingeniera del Software Antonio Navarro 62
Planificacin temporal Redes de tareas En rojo aparece el camino crtico El camino crtico est formado por las tareas crticas Una tarea es crtica si su retraso provoca el retraso del final del proyecto El camino crtico es el camino de mayor duracinIngeniera del Software Antonio Navarro 63
Planificacin temporal Redes de tareas Podramos utilizar tcnicas como el Mtodo del camino crtico (CPM) o la Tcnica de evaluacin y revisin de programa (PERT) para calcular la holgura de cada tarea y establecer dimensiones de tiempo ms probables
Ingeniera del Software Antonio Navarro
64
Planificacin temporal Seguimiento de la planificacin El seguimiento es un factor clave en la planificacin temporal Hay distintas formas de implementarlo:- Realizando reuniones peridicas. - Evaluando los resultados de las revisiones. - Determinando si se han conseguido los hitos. - Recavando las opiniones subjetivas del equipo.Ingeniera del Software Antonio Navarro 65
Planificacin temporal Seguimiento de la planificacin- Comparando la fecha real de inicio con las previstas. - Utilizando el anlisis del valor ganado.
La comparacin de las fechas reales y de inicio puede hacerse:- Mediante tablas. - Utilizando diagramas Gantt de seguimiento.Ingeniera del Software Antonio Navarro 66
Planificacin temporal Seguimiento de la planificacin
Planificacin temporal Seguimiento de la planificacin A travs del control, el gestor puede decidir que opciones tomar en funcin del cumplimiento o no de la planificacin temporal Cuando la fecha de entrega es ajustada, adems de la tcnica de la t9, se puede aplicar el time-boxing
Ingeniera del Software Antonio Navarro
Gantt de seguimiento para el diagrama de la t58
67
Ingeniera del Software Antonio Navarro
68
Planificacin temporal Seguimiento de la planificacin El time-boxing permite dejar un porcentaje de las tareas sin terminar Se pueden dejar para el prximo incremento o terminarlas ms tarde Ventaja: no hay estancamiento Inconvenientes: sin comentarios
Planificacin temporal Anlisis del valor ganado El anlisis del valor ganado (Earned value management) es una tcnica para el seguimiento del progreso en la planificacin temporal Indica el valor ganado a lo largo de un proyecto El valor ganado es el coste presupuestado realmente realizado en un momento tIngeniera del Software Antonio Navarro 70
Ingeniera del Software Antonio Navarro
69
Planificacin temporal Anlisis del valor ganado El anlisis del valor ganado:- Proporciona una unidad de medida del progreso total de un proyecto (en esfuerzo o ). - Es un mtodo consistente para el anlisis del progreso y rendimiento en un proyecto (con independencia de su naturaleza). - Sirve para el anlisis del rendimiento del coste de un proyecto (con independencia del coste hasta la fecha).Ingeniera del Software Antonio Navarro 71
Planificacin temporal Anlisis del valor ganado El coste hasta la fecha es una medida que indica el coste de las tareas realizadas hasta una determinada fecha Si el coste hasta la fecha es mejor que el coste planificado el proyecto va bien... ... o no?
Ingeniera del Software Antonio Navarro
72
Planificacin temporal Anlisis del valor ganado e.g.:tarea: A B C D coste(): 10 10 10 10 Si a mitad del proyecto debera tener acabadas A y B, el coste planificado debera ser de 20. Si a mitad del proyecto el coste es de 15 el proyecto va mejor de lo esperado... ... o no?Ingeniera del Software Antonio Navarro 73
Planificacin temporal Anlisis del valor ganadoPues no necesariamente, ya que si a mitad del proyecto solo tengo terminada A, cuyo coste es de 15 tenemos una disminucin de la productividad del 50% (distribucin uniforme del esfuerzo en tareas), y un aumento del coste del 50%
Luego el coste hasta la fecha es una medida peligrosa
Ingeniera del Software Antonio Navarro
74
Planificacin temporal Anlisis del valor ganado El anlisis del valor ganado define unas medidas bsicas para un momento t del proyecto- CPTP: Coste Presupuestado del Trabajo Planificado. - CPTR: Coste Presupuestado del Trabajo Realizado. Es el valor ganado. - CRTR: Coste Real del Trabajo Realizado. - PAT: Presupuesto A la Terminacin (CPTP proyecto)Ingeniera del Software Antonio Navarro 75
Planificacin temporal Anlisis del valor ganado e.g:Tareas INDEPENDIENTES A(d1-d2) B(d3-d6) Coste presupuestado: 2 8 Coste presupuestado de lo hecho*: 2(100%) 4(50%#) Coste real de lo hecho*: 4(100%) 8(50%#) *al da 6 (principio del 7) #porcentaje estimado en base a los resultados obtenidos Tenemos: CPTP : 2 + 8 = 10 CPTR : 2 + 4 = 6 CRTR: 4 + 8 = 12Ingeniera del Software Antonio Navarro
C(d7-d9) 4 -
76
Planificacin temporal Anlisis del valor ganado El anlisis de valor ganado define una serie de medidas derivadas: - VP: Variacin de la planificacinVP = CPTR CPTP VP >= 0, OK e.g.:Tareas INDEPENDIENTES Coste presupuestado: Valor ganado(da 6): Variacin de la planificacin:Ingeniera del Software Antonio Navarro
Planificacin temporal Anlisis del valor ganado- VC: Variacin del coste:VC = CPTR CRTR VC>=0, OK e.g.:Tareas INDEPENDIENTES Valor ganado (da 6): Coste real de lo hecho*: Variacin del coste: A(d1-d2) 2(100%) 4(100%) -2 B(d3-d6) 4(50%#) 8(50%#) -4 Total 6 12 -6
A(d1-d2) 2 2(100%) 0
B(d3-d6) 8 4(50%#) -4
Total 10 6 -4=40%77
Ingeniera del Software Antonio Navarro
78
Planificacin temporal Anlisis del valor ganado- No se define la comparacin del gasto (CPTP CRTR) al no tener en cuenta el trabajo no realizado e.g.:Tareas INDEPENDIENTES Coste presupuestado: Coste real de lo hecho*: Variacin: A(d1-d2) 2 4(100%) -2 B(d3-d6) 8 0(0%) 8 Total 10 4 6
Planificacin temporal Anlisis del valor ganado- IRP: ndice de Rendimiento de la PlanificacinIRP = CPTR/CPTP IRP >= 1, OK e.g.: IRP = 6/10 = 0,6 (llevamos hecho el 60% de lo planificado)
- IRC: ndice de Rendimiento del CosteIRC = CPTR/CRTR IRC >=1, OK e.g.: IRC = 6/12 = 0,5 (el coste es un 50% ms alto de lo planificado)Ingeniera del Software Antonio Navarro 80
Ingeniera del Software Antonio Navarro
79
Planificacin temporal Anlisis del valor ganado- EAT: Estimacin A la TerminacinEAT = (PAT CPTR)/IRC + CRTR Ntese que: si CRTR = CPTR, EAT = PAT si CRTR > CPTR, EAT > PAT si CRTR < CPTR, EAT < PAT e.g.: EAT = (14 - 6)/0,5 + 12 = 28, el doble de PAT
Planificacin temporal Anlisis del valor ganado
BCWS = CPTP BCWP = CPTR ACWP = CRTR
Grficamente:Ingeniera del Software Antonio Navarro 81 Ingeniera del Software Antonio Navarro
BAC = PAT EAC = EAT
Interpretacin grfica
82
Planificacin temporal Anlisis del valor ganado
El plan del proyecto del software Introduccin El plan del proyecto del software contiene toda la informacin relativa a la gestin del proyecto Se produce cuando se terminan las tareas de planificacin Objetivos:- Comunicar el mbito y recursos al personal de desarrollo y al cliente.Ingeniera del Software Antonio Navarro 84
BCWS = CPTP BCWP = CPTR ACWP = CRTR BAC = PAT EAC = EAT
Ingeniera del Software Antonio Navarro
Clculo de la fecha de fin estimada en base a 83 BAC y CPTR
El plan del proyecto del software Introduccin- Definir los riesgos y sugerir tcnicas de control del riesgo. - Definir los costes y planificacin temporal para la revisin de la gestin. - Proporcionar un enfoque general del desarrollo del software para todo el personal relacionado con el proyecto. - Describir cmo se garantizar la calidad y se gestionarn los cambios.Ingeniera del Software Antonio Navarro 85
El plan del proyecto del software Pressman Pressman sugiere el siguiente ndice:PLAN DEL PROYECTO DEL SOFTWARE 1. Introduccin 1.1 Propsito del plan 1.2 mbito del proyecto y objetivos 1.2.1 Declaracin del mbito 1.2.2 Funciones principales 1.2.3 Aspectos de rendimiento 1.2.4 Restricciones y tcnicas de gestin 1.3 Modelo de procesoIngeniera del Software Antonio Navarro 86
El plan del proyecto del software Pressman2. Estimaciones del proceso 2.1 Datos histricos 2.2 Tcnicas de estimacin 2.3 Estimaciones de esfuerzo, coste y duracin 3. Estrategia de gestin del riesgo 3.1 Anlisis del riesgo 3.2 Estudio de los riesgos 3.3 Plan de gestin del riesgo 4. Planificacin temporal 4.1 Estructura de descomposicin del trabajo 4.2 Grfico Gantt 4.3 Red de tareas 4.4 Tabla de uso de recursosIngeniera del Software Antonio Navarro 87
El plan del proyecto del software Pressman5. Recursos del proyecto 5.1 Personal 5.2 Hardware y software 5.3 Lista de recursos 6. Organizacin del personal 6.1 Estructura de equipo (si procede) 6.2 Informes de gestin 7. Mecanismos de seguimiento y control 7.1 Garanta de calidad y control 7.2 Gestin y control de cambios 8. ApndicesIngeniera del Software Antonio Navarro 88
El plan del proyecto del software Pressman El plan del proyecto no debe ser un documento largo ni complejo Gua el desarrollo del software Se centra en una declaracin general de qu y una declaracin especfica de cunto y cmo Tras el plan del proyecto empiezan los trabajos tcnicosIngeniera del Software Antonio Navarro 89
El plan del proyecto del software IEEE Std. 1058-1998 El IEEE Std. 1058 proporciona una plantilla para crear los planes de gestin del proyecto de software El estndar supone una continua evolucin del plan segn avanza el proyecto (que ser convenientemente tratado con tcnicas GCS)Ingeniera del Software Antonio Navarro 90
El plan del proyecto del software IEEE Std. 1058-1998 El ndice que define el estndar es:Pgina de ttulo Pgina de firma Historial de cambios Prefacio Tabla de contenidos Lista de figuras Lista de tablas
El plan del proyecto del software IEEE Std. 1058-19981. Descripcin 1.1 Resumen del proyecto 1.1.1 Propsito, alcance y objetivos 1.1.2 Supuestos y restricciones 1.1.3 Entregas del proyecto 1.1.4 Resumen de planificacin y presupuesto 1.2 Evolucin del plan 2. Referencias 3. Definiciones 4. Organizacin del proyecto 4.1 Interfaces externas 4.2 Estructura interna 4.3 Papeles y responsabilidades
Ingeniera del Software Antonio Navarro
91
Ingeniera del Software Antonio Navarro
92
El plan del proyecto del software IEEE Std. 1058-19985. Planes de proceso de gestin 5.1 Plan de comienzo 5.1.1 Plan de estimacin 5.1.2 Plan de plantilla 5.1.3 Plan de adquisicin de recursos 5.1.4 Plan de entrenamiento de la plantilla del proyecto 5.2 Plan de trabajo 5.2.1 Actividades de trabajo 5.2.2 Asignacin de planificacin 5.2.3 Asignacin de recursos 5.2.4 Asignacin de presupuestoIngeniera del Software Antonio Navarro 93
El plan del proyecto del software IEEE Std. 1058-19985.3 Plan de control 5.3.1 Plan de control de requisitos 5.3.2 Plan de control de planificacin 5.3.3 Plan de control de presupuesto 5.3.4 Plan de control de calidad 5.3.5 Plan de informes 5.3.6 Plan de recoleccin de mtricas 5.4 Plan de gestin del riesgo 5.5 Plan de cierre
Ingeniera del Software Antonio Navarro
94
El plan del proyecto del software IEEE Std. 1058-19986. Planes de proceso tcnico 6.1 Modelo de proceso 6.2 Mtodos, herramientas y tcnicas 6.3 Plan de infraestructura 6.4 Plan de aceptacin del producto 7. Planes de soporte del proceso 7.1 Plan de gestin de la configuracin 7.2 Plan de verificacin y validacin 7.3 Plan de documentacin 7.4 Plan de garanta de calidad 7.5 Revisiones y auditoriasIngeniera del Software Antonio Navarro 95
El plan del proyecto del software IEEE Std. 1058-19987.6 Plan de resolucin de problemas 7.7 Plan de gestin de la subcontracin 7.8 Plan de mejora del proceso 8. Planes adicionales Apndices ndice
Ingeniera del Software Antonio Navarro
96
El plan del proyecto del software IEEE Std. 1058-1998 La pgina de ttulo debe incluir:- Ttulo - Fecha del ejemplar - Identificador nico (nmero de borrador, nmero de versin de lnea base) - Identificacin de la organizacin
El plan del proyecto del software IEEE Std. 1058-1998 El historial de cambios incluye:- El nombre del proyecto. - El nmero de versin del plan. - La fecha de distribucin. - Una breve descripcin de la naturaleza de los cambios. - Una lista de nmeros de versiones y distribuciones previas del plan.Ingeniera del Software Antonio Navarro 98
La pgina de firma debe contiene las firmas de las personas responsables de aprobar el plan del proyectoIngeniera del Software Antonio Navarro 97
El plan del proyecto del software IEEE Std. 1058-1998 El prefacio describe el alcance y contexto del plan, identificando su audiencia. El resto de puntos del plan queda explicado por su propio ttulo Comentario: en un plan IEEE 1058, una actividad de trabajo es lo que hemos denominado tarea de trabajo en la t30, t31 y t50Ingeniera del Software Antonio Navarro 99
Conclusiones Planificacin: evitar retrasos La PT se retrasa diariamente La PT se cumple diariamente Planificar: asignar (fi, ff, r, e) a las tareas de trabajo de la WBS Mejor equipos pequeos que grandes Regla del 40-20-40Ingeniera del Software Antonio Navarro 100
Conclusiones Grado de rigor SCT SCT vs. descomposicin fija Adaptaciones del modelo de proceso PT macroscpica vs. PT microscpica Estimacin por descomposicin del proceso vs. planificacin temporal101
Conclusiones Gantt Redes de tareas Seguimiento de la planificacin Anlisis del valor ganado Plan del proyecto del software Pressman vs. IEEE Std. 1058102
Ingeniera del Software Antonio Navarro
Ingeniera del Software Antonio Navarro
Top Related