gestión de actividades de un proyecto definiciones...
TRANSCRIPT
18/11/2011
1
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Temario de la clase
Gestión de Actividades de un proyecto
Definiciones
Simbologia
Ejemplo práctico
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Carta GanttCarta Gantt
18/11/2011
2
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Carta Gantt•Los cronogramas de barras o “gráficos de Gantt” fueron concebidos por elingeniero norteamericano Henry Gantt, uno de los precursores de la ingenieríaindustrial contemporánea de Taylor a fines del siglo XIX (1861-1919) .
•Gantt procuró resolver el problema de laprogramación de actividades, es decir, su distribuciónconforme a un calendario, de manera tal que sepudiese visualizar el periodo de duración de cadaactividad, sus fechas de iniciación y terminación eigualmente el tiempo total requerido para la ejecuciónde un trabajo.
•El instrumento que desarrolló permite también que se siga el curso de cadaactividad, al proporcionar información del porcentaje ejecutado de cada una deellas, así como el grado de adelanto o atraso con respecto al plazo previsto.
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Carta Gantt•Este gráfico consiste simplemente en un sistema de coordenadas en que se indica:
Dias1 2 3 4 5 6 7 8 9 10 11 . . .
Actividad Uno
Actividad Dos
Actividad Tres
Actividad Cuatro
• En el eje Horizontal: un calendario, o escala de tiempo definido en términos de la unidad más adecuada al trabajo que se va a ejecutar: hora, día, semana, mes, etc.
• En el eje Vertical: Las actividades que constituyen el trabajo a ejecutar. A cada actividad se hace corresponder una línea horizontal cuya longitud es proporcional a su duración en la cual la medición efectúa con relación a la escala definida en el eje horizontal conforme se ilustra. (La altura carece de significado)
18/11/2011
3
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Carta Gantt•El diagrama de Gantt es un diagrama representativo, que permite visualizar fácilmente la distribución temporal del proyecto, pero es poco adecuado para la realización de cálculos.
•Por la forma en que se construye, muestra directamente los inicios y finales mínimos de cada tarea.
•Los bloques correspondientes a tareas del camino crítico acostumbran a rellenarse en otro color (en el caso del ejemplo, en rojo).
Tarea Predecesoras
Duración
A - 2B A 3C - 2D C 3E DII+1 2F BFI-1 3G D, E, F 3H GFF 2
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Carta Gantt•Símbolos Convencionales: En la elaboración del gráfico de Gantt seacostumbra utilizar determinados símbolos, aunque pueden diseñarse muchosotros para atender las necesidades específicas del usuario. Los símbolosbásicos son los siguientes:
•Barra de una actividad. •Su longitud indica la duración prevista de laactividad.
•Línea gruesa. •Su longitud indica la duración prevista de la actividad.•Plazo durante el cual no puederealizarse la actividad.
•Corresponde al tiempoimproductivo puede anotarseencima del símbolo utilizando unaabreviatura.
•Las dependencias fin-inicio se representan alineando el final del bloquede la tarea predecesora con el inicio del bloque de la tarea dependiente.
18/11/2011
4
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Carta Gantt•Símbolos Convencionales:•Las dependencias fin-inicio se representanalineando el final del bloque de la tarea predecesoracon el inicio del bloque de la tarea dependiente eindicando la secuencia con una flecha que refleja larestricción.Las dependencias final-final se representan alineando los finalesde los bloques de las tareas predecesora y dependiente e indicandola secuencia con una flecha que refleja la restricción.
Las dependencias inicio-inicio se representan alineando losinicios de los bloques de las tareas predecesora y dependiente.
Los retardos se representan desplazando la tarea dependientehacia la derecha en el caso de retardos positivos y hacia laizquierda en el caso de retardos negativos.
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos InformáticosCarta Gantt
Ejemplo Práctico Ordenar todas las actividades Definir las secuencias entre actividades Estimar las duraciones de cada actividad Agrupar actividades en Etapas
(actividades principales) Generar Hitos a cumplir Asignar recursos a cada actividad Colocar avances por actividad
Proyecto Ejemplo
Primera Etapa Actividad Uno Actividad Dos Actividad Tres
Segunda Etapa Actividad Cuatro Actividad Cinco
18/11/2011
5
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
2 sem 08/sos
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos InformáticosMetodologías de Desarrollo de proyectos
Metodología: Definiremos como Metodología de Desarrollo de Proyectos a un conjunto de métodos empleados para el desarrollo de sistemas automatizados. Lo más relevante de una metodología, es su capacidad de entregar una notación, la descripción de un proceso a seguir y la entrega de herramientas de apoyo al desarrollo de Sistemas.
Además de una "notación, de un proceso, y de herramientas," estas metodologías proporcionan:
• Guías para estimar costos,• Manejo del proyecto en las tareas y entregas,• Medidas y métricas,• Formas definidas y dirección en las entregas de la construcción,• Políticas y procedimientos para garantizar la calidad del software,• Descripciones de los roles y programas de entrenamiento detallados,• Ejemplos totalmente trabajados,• Ejercicios de entrenamiento,• Técnicas para adaptar el método, y• Técnicas definidas
18/11/2011
6
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Metodologías Tradicionales en el Desarrollo
• Exponer procesos basados en planeación exhaustiva.
• El resultado de cada proceso es determinante y predecible.
Sin embargo, por las características del software,
• Los resultados de los procesos no son siempre predecibles,
• Es difícil predecir desde el comienzo del proyecto cada resultado.
• Las métricas permiten estimaciones acertadas en contextos de desarrollo repetibles.
Inicialmente el modelo de desarrollo de un proyecto de software, se generó a partir deteorías de administración de proyectos de construcción de manufactura o edificación, loque suponía la realización de etapas sucesivas y secuenciales, con productos claramentemedibles e identificables como resultado de cada etapa. Este modelo se denominóModelo en Cascada.
Se caracterizan por:
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Comprensión del proceso, el rendimiento y las interfaces requeridas
Metodologías Tradicionales en el DesarrolloEl Modelo de Cascada (Bennington 1956) fue uno de los primeros modelos de ciclo de vida que formalizó un conjunto de procesos de desarrollo de software.
Este modelo describe un orden secuencial en la ejecución de los procesos asociados.
Definición de Requerimiento
sDiseño
Codificación(Implementaci
ón) Prueba
Op y Mantenimiento
Genera la estructura de los datos, la arquitectura del software, el detalle procedimental y la caracterización de la interfaz
Genera la codificación de los distintos módulos
Realiza pruebas que aseguren que la entrada definida produce los resultados que se requieren
Adecuaciones al sistema debido a errores, a adaptaciones a cambios del entorno, o por nuevos requerimientos del cliente
18/11/2011
7
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Modelo de Cascada Definición de
Requerimientos
Diseño del Softwarey del Sistema
Implementación yPrueba de unidades
Integración y Prueba del Sistema
Operación yMantenimiento
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos InformáticosMetodologías Tradicionales en el Desarrollo
Definición de Requerimientos
Diseño
Codificación(Implementación)
Prueba
Op y Mantenimiento
La ventaja de este método radica en su sencillez, al seguir los pasos intuitivos necesarios a la hora de desarrollar el software
Bajo riesgo para desarrollos bien comprendidos utilizando tecnología conocida.
El Modelo de Cascada - Ventajas
18/11/2011
8
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Metodologías Tradicionales en el DesarrolloEl Modelo de Cascada - Desventajas Definición de
Requerimientos
Diseño
Codificación(Implementación)
Prueba
Op y Mantenimiento
Los proyectos reales raramente siguen el flujo secuencial que propone el modelo, siempre hay iteraciones y se crean problemas en la aplicación del paradigma.
Normalmente, es difícil para el cliente establecer explícitamente al principio todos los requisitos. El ciclo de vida clásico lo requiere y tiene dificultades en acomodar posibles incertidumbres que pueden existir al comienzo de muchos productos.
El cliente debe tener paciencia. Hasta llegar a las etapas finales del proyecto, no estará disponible una versión operativa del programa. Un error importante no detectado hasta que el programa este funcionando puede ser desastroso.
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Visibilidad de Procesos
• Los sistemas de software son intangibles por lo que los administradores necesitan documentación para identificar el progreso en el desarrollo.
• Esto puede causar problemas.. El tiempo planeado para entrega de resultados puede no coincidir con el tiempo
necesario para completar una actividad. La necesidad de producir documentos restringe la iteración entre procesos. .El tiempo para revisar y aprobar documentos es significativo.
• El modelo de cascada es aún el modelo basado en resultados mas utilizado.
18/11/2011
9
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Metodologías Tradicionales en el Desarrollo
El Modelo Incremental se postuló como un refinamiento del modelo de cascada.
Mantiene el esquema de etapas, pero éstas son repetitivas hasta lograr la satisfacción de los requerimientos del cliente.
Definición de Requerimientos
Diseño
Codificación(Implementación)
RequerimientoDe Software
Diseño
Codificación(Implementación)
RequerimientoDe Software
Diseño
Codificación(Implementación)
RequerimientoDe Software
Diseño
Codificación(Implementación)
RequerimientoDe Software
•••
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Metodologías Tradicionales en el Desarrollo
Se evitan proyectos largos y se entrega “Algo de valor” a los usuarios con cierta frecuencia El usuario se involucra más
El Modelo Incremental - Desventajas
El Modelo Incremental - Ventajas
Difícil de evaluar el costo total
Difícil de aplicar a sistemas transaccionales que tienden a ser integrados y a operar como un todo
Requiere gestores experimentados
Los errores en los requisitos se detectan tarde.
El resultado puede ser muy positivo
18/11/2011
10
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Metodologías Tradicionales en el DesarrolloEl Modelo en Espiral se postuló como una alternativa al modelo de cascada.
El modelo de cascada y el modelo espiral suponen, de manera general, que los requerimientos del cliente no cambian radicalmente en el transcurso del desarrollo del sistema. Las fase de este modelo son:
• Planteamiento de Objetivos– Se identifican los objetivos específicos para cada fase del proyecto.
• Identificación y reducción de riesgos.– Los riesgos clave se identifican y analizan, y la información sirve para
minimizar los riesgos.• Desarrollo y Validación.
– Se elige un modelo apropiado para la siguiente fase del desarrollo.• Planeación.
– Se revisa el proyecto y se trazan planes para la siguiente ronda del espiral.
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos InformáticosModelo de Proceso de Espiral
Determinación de objetivos
alternativas yrestricciones
Evaluación de alternativas,identificación y resolución de
riesgos
Análisisde
Riesgos
Planeamiento de la siguiente fase
Desarrollar y verificarel siguiente nivel
del producto
Prototipo 1
Plan de requerimientosPlan del ciclo de vida
REVISIÓN
Concepto deOperación
Codificación
Análisis deRiesgos
Análisis deRiesgos
Análisis deRiesgos
PrototipoOperacionalPrototipo
3Prototipo2
Plan de Desarrollo
Plan de Integracióny Prueba
Simulaciones, modelos y benchmarks
Requerimientos de
SWValidación deRequerimientosDiseñoV &V
Servicio
Prueba deAceptación
Prueba deIntegración
Prueba deUnidades
DiseñoDetallado
Diseñodel
Producto
modelo
18/11/2011
11
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Plantilla para una ronda del espiral
• Objetivos.
La ventaja del Modelo en Espiral radica en el perfeccionamiento de las soluciones encontradas con cada ciclo de desarrollo, en términos de dar respuesta a los requerimientos inicialmente analizados.
Los pasos a seguir en cada ciclo de la espiral son:
Determinación de objetivos
alternativas yrestricciones
Evaluación de alternativas,identificación y resolución de
riesgos
Planea la siguiente fase
Desarrollar y verificarel siguiente nivel
del producto
• Restricciones.• Alternativas.• Riesgos.• Resolución de riesgos.• Resultados.• Planes.• Garantías.
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Flexibilidad en el modelo de Espiral
• Para sistemas bien comprendidos utiliza el Modelo de Cascada. La fase de análisis de riesgos es relativamente fácil.
• Con requerimientos estables y sistemas de seguridad críticos, utiliza modelos formales.
• Con especificaciones incompletas, utiliza el modelo de prototipado.• Pueden utilizarse modelos híbridos en distintas partes del desarrollo.
18/11/2011
12
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Ventajas del Modelo de Espiral
• Centra su atención en la reutilización de componentes y eliminación de errores en información descubierta en fases iniciales.
• Los objetivos de calidad son el primer objetivo.• Integra desarrollo con mantenimiento.• Provee un marco de desarrollo de hardware/software.
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Problemas con el Modelo de Espiral
• El desarrollo contractual especifica el modelo del proceso y los resultados a entregar por adelantado.
• Requiere de experiencia en la identificación de riesgos.• Requiere refinamiento para uso generalizado.
18/11/2011
13
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Metodologías Tradicionales en el DesarrolloUna técnica complementaria, El Prototipado (realización de prototipos) es una herramienta en la que se apoyan diferentes metodologías. Un prototipo debe tener el objetivo de mostrar al cliente una maqueta del resultado que se obtendrá de la implementación de cada uno de los requerimientos del cliente una vez terminado el desarrollo. Con los prototipos se tiene la posibilidad de obtener retroalimentación de manera temprana.
Recolección y Refinamientos
Diseño Rápido
Construcción de Prototipo
Prueba
Aprobación y/o Obs del usuario
Refinamiento del Prototipo
IngenieríaR y Ref
Prot
PruebaAprob
Ref
Ing
Partida
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Metodologías Tradicionales en el DesarrolloLas características más relevantes de la técnica de Prototipos son las siguientes: No modifica el flujo del ciclo de vida Reduce el riesgo de construir productos que no satisfagan las necesidades de
los usuarios Reduce costos y aumenta la probabilidad de éxito
Exige disponer de las herramientas adecuadas No presenta calidad ni robustez Una vez identificados todos los requisitos mediante el prototipo, se construye
el producto de ingeniería.
18/11/2011
14
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Debe ser un sistema con el que se pueda experimentar Debe ser comparativamente barato (< 10%) Debe desarrollarse rápidamente Énfasis en la interfaz de usuario Equipo de desarrollo reducido Herramientas y lenguajes adecuados
Metodologías Tradicionales en el Desarrollo
Para que el modelo de Prototipos sea efectivo, se requiere:
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos InformáticosModelo por Prototipos
• Prototipado exploratorio El objetivo es trabajar con clientes hasta evolucionar a un sistema final,
a partir de una especificación inicial. Se debe comenzar con unas especificaciones bien entendidas.
Puede ser usado como base del sistema
• Prototipado de “throw-away” (desechable). El objetivo es entender los requerimientos del sistema. Se puede
comenzar con especificaciones poco entendidas. El prototipo no se utiliza para construir el sistema final. Se programan
sin fijarse en usar buenas practicas de programación y se hacen muy rápido, en un lenguaje muy conocido. En este caso el prototipo no es un producto final.
18/11/2011
15
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Metodologías Tradicionales en el DesarrolloUn enfoque diferente se obtiene con el Modelo Evolutivo, el que se caracteriza por permitir que los requerimientos no sean totalmente conocidos al comienzo del proyecto y se deben obtener poco a poco.
El Modelo Evolutivo propone la elaboración de varios ciclos de desarrollo en forma paralela, donde cada uno aporta nuevos elementos a las otras etapas, durante el desarrollo del proyecto.
Descripcióndel sistema
VersiónInicial
VersiónFinal
VersionesIntermedias
Especificación
Desarrollo
Validación
Actividades Concurrentes
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos InformáticosModelo de Desarrollo Evolutivo
• Problemas Poca visibilidad en el proceso Los sistemas están pobremente especificados Se requieren habilidades especiales.
• Aplicabilidad Para sistemas interactivos pequeños o medianos. Para partes de sistemas grandes Para sistemas de corta vida.
18/11/2011
16
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos InformáticosMetodologías Tradicionales en el Desarrollo
El Prototipo Evolutivo
Construcción de una implementación parcial que cubre los requisitos conocidos, para ir aprendiendo el resto y, paulatinamente, incorporarlos al sistema Reduce el riesgo y aumenta la probabilidad de éxito No se conocen niveles apropiados de calidad y documentación Problemas de gestión de configuración Construir software para que pueda ser modificado fácilmente es un “arte
desconocido”
Es posible combinar algunas de estas metodologías, es así como podemos encontrar la metodología de desarrollo que combina los Prototipos con la Evolutiva. Sus características principales son:
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Problemas y Riesgos con los Modelos.• Cascada.
Alto riesgo en sistemas nuevos debido a problemas en las especificaciones y en el diseño.
Bajo riesgo para desarrollos bien comprendidos utilizando tecnología conocida.
• Prototipado. Bajo riesgo para nuevas aplicaciones debido a que las
especificaciones y el diseño se llevan a cabo paso a paso. Alto riesgo debido a falta de visibilidad
• Evolutivo. Alto riesgo debido a la necesidad de tecnología avanzada y
habilidades del grupo desarrollador.
18/11/2011
17
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos InformáticosManejo de Riesgos
• El “riesgo” inherente en una actividad es se mide en base a la incertidumbre que presenta el resultado de esa actividad.
• Las actividades con alto riesgo causan sobrecostos por mayor planeación• El riesgo es proporcional al monto de la calidad de la información
disponible. Cuanto menos información, mayor el riesgo.
• Los sistemas grandes están hechos usualmente de varios subsistemas.• No es necesario utilizar el mismo modelo de proceso para todos los
subsistemas.• El prototipado es recomendado cuando existen especificaciones de alto
riesgo.• El modelo de cascada es utilizado en desarrollos bien comprendidos.
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
• Riesgos. No existen mejoras baratas en el software. Las mejoras en la calidad pueden incrementar los costos en forma excesiva Los nuevos métodos pueden causar bajas en el personal.
• Solución de riesgos. Estudio de la literatura existente. Proyecto piloto. Búsqueda de todos los componentes reutilizables potenciales. Identificación del soporte disponible para las herramientas a usar Entrenamiento al personal
Manejo de Riesgos
18/11/2011
18
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Actividad Documentos Producidos Análisis de Requerimientos Documento de Requerimientos Definición de Requerimientos Documento de Requerimientos. Especificación del Sistema. Especificación Funcional, Plan de Pruebas de Aceptación Diseño Arquitectural Especificación de la Arquitectura, y Plan de Pruebas del
Sistema Diseño de Interfaces Especificación de la Interfaces y Plan de pruebas de
Integración. Diseño Detallado Especificación del diseño y Plan de prueba de Unidades. Codificación Código de Programa Prueba de Unidades Reporte de prueba de unidades Prueba de Módulos Reporte de prueba de módulos Prueba de Integración Reporte de prueba de integración y Manual de usuario
final Prueba del Sistema Reporte de prueba del sistema Prueba de Aceptación Sistema final mas la documentación.
Documentación del Modelo En CascadaUna posible recomendación de documentación en este modelo.
ESCUELA DE INGENIERÍA - Ingeniería Ejecución en Informática
Administración de Recursos Informáticos
Resumen • El modelo de cascada considera cada actividad del proceso
como una actividad discreta.
• El modelo de desarrollo evolutivo considera actividades del proceso en forma concurrente.
• El modelo de espiral se basa en análisis de riesgos.
• La visibilidad del proceso involucra la creación de documentos o resultados de las actividades.