Gestión de Actividades de un proyecto Definiciones...

18
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 Gantt Carta Gantt

Transcript of Gestión de Actividades de un proyecto Definiciones...

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.