Vous êtes sur la page 1sur 50

Proyectos

] rea de [Informtica]
IP SANTO TOMS

Objetivo.
Dado que ya hemos identificado:
los entregables, fases y tareas los recursos a asignar a cada tarea, y que tarea que se asignan a cada persona.

Tendremos que crear un calendario de realizacin, con dos objetivos:


que quede claro lo que se espera y para cuando, comprobar que es posible, un da 24 h.
7. Programacin temporal de proyectos. 2

El punto de partida...
Disponemos del WBS en tareas del proyecto. Disponemos de las fichas de cada tarea con los recursos y tiempos asignados
0.0. Proyecto Contabilidad

1.0. Especificar necesidades

2.0. Analizar Contabilidad

3.0. Disear Aplicacin

4.0. Codificacin

5.0. Pruebas

1.1. Estudiar Sistema Actual 1.2. ide. nuevas carcteristica

2.1. Estudiar Procesos 2.2. Estudiar Datos

3.1. Diseo B.D 3.2. Diseo Programas

4.1. Creacin Esquema 4.2. Codificacin Programas

5.1. Prueba Unidades 5.2. Prueba del Sistema

7. Programacin temporal de proyectos.

Especificacin de tarea Nmero: 3.1. Nombre: Diseo B.D. Descripcin: Se diseara la base de datos, partiendo del modelo entidad-relacin propuesto en el anlisis y con el objetivo de tener un sistema funcionando sobre DB2. Esfuerzo Estimado: 2 semanas/hombre Personas: 1 Diseador Recursos: Sala de reuniones Duracin: 2 semanas Entregables: Estructura de implementacin de la B.D. :

Pasos en la creacin de un calendario aceptable.


Creacin del calendario y camino crtico.
Ordenacin de las tareas, Creacin del calendario,

Revisin y ajuste del calendario:


En funcin del uso de recursos , Segn las necesidades del usuario,

Aceptacin generalizada del plan.

7. Programacin temporal de proyectos.

Creacin del calendario y clculo del camino crtico


Ordenacin de las tareas. Clculo de fechas.

7. Programacin temporal de proyectos.

Ordenacin de las tareas.


Identificar y documentar dependencias.
Restricciones, Supuestos, Dependencias obligatorias, Dependencias discrecionales, Dependencias externas.

7. Programacin temporal de proyectos.

Identificar y documentar dependencias.


De forma genrica, situandonos en cada tarea, nos planteamos las siguientes cuestiones:
Qu debe haberse hecho antes de esto? Qu puede hacerse a la vez? Que debe seguir a lo que hacemos ahora?

Aadiremos a cada ficha de tarea la lista de tareas precedentes.


7. Programacin temporal de proyectos. 7

Restricciones.
Son los factores que limitan las opciones del equipo de desarrollo. Son impuestas por el cliente o la direccin de la empresa desarrolladora.
Ejemplo:
Lenguaje de desarrollo, Equipo en que deber funcionar, personal del que se dispondr.

7. Programacin temporal de proyectos.

Supuestos.
Factores que se consideran verdaderos durante la planificacin, Tienen un grado de riesgo y no cumplirse durante el desarrollo. Estn directamente relacionados con los riesgos del proyecto, como veremos.
Ejemplo: Se dispondr de un ordenador en casa del cliente.
7. Programacin temporal de proyectos. 9

Dependencias obligatorias.
Son las inherentes a la naturaleza del trabajo (aspectos tcnicos). Se suelen deber a la necesidad de disponer de un entregable que es punto de partida en la tarea. Ejemplo:
Prueba del programa X, debe ser precedida de Codificacin del programa X
7. Programacin temporal de proyectos. 10

Dependencias discrecionales.
Las que define el equipo del proyecto. Hay que ser cautelosos, pueden condicionar la programacin del proyecto en el futuro. Se basan en:
Las Mejores Prcticas, Se prefiere una secuencia por que ser ms fcil de controlar. Limitaciones en la asignacin de personal.
7. Programacin temporal de proyectos. 11

Dependencias externas.
Vienen impuestas desde el exterior. Se refieren a la interdependencia:
Con otros proyectos. Con empresas externas o contratos y no podemos ejercer ninguna presin.

Una actividad no puede comenzar hasta que no disponer de un producto ajeno.


Ejemplo: pruebas de programas sobre el Hw.
7. Programacin temporal de proyectos. 12

Completamos la Ficha de cada Tarea.


Especificacin de tarea

Nmero: 3.1. Nombre: Diseo B.D. Descripcin: Se diseara la base ... Esfuerzo Estimado: 2 semanas/hombre Personas: 1 Diseador Recursos: Sala de reuniones Duracin: 2 semanas Entregables:Estructura de implementacin de la B.D. Predecesoras:2.1 (D. obligatoria); 2.2 (D. Externa).
7. Programacin temporal de proyectos. 13

Representacin Grfica de la ordenacin de tareas.


Existen varios mtodos para representar de modo visual la secuencia de tareas.
Diagrama de Gantt, Diagrama de precedencias, Diagrama de flechas.

7. Programacin temporal de proyectos.

14

Diagrama de Gantt.
Es el diagrama ms antiguo y quizs el que ms se utiliza para trabajar. Se representa en un cuadro de doble entrada:
En el eje horizontal se representa el tiempo, En el eje vertical las tareas, Cada tarea se representa como un rectngulo situado a la altura de la tarea y que va desde el comienzo a la finalizacin de la tarea.

7. Programacin temporal de proyectos.

15

Diagrama de Gantt
TAREAS

Especificar Necesidades
Diseo Programas Diseo Base de Datos

Realizacin Esquema
Codificacin Programas Pruebas 0 2 4 SEMANAS
7. Programacin temporal de proyectos.

10 12 14 16

16

Diagrama de Gantt
Inconvenientes:
No muestra explcitamente la relacin entre tareas. En proyectos con muchas tareas es complicado de crear.

Ventajas:
Es fcil de entender por todo el mundo. Se puede aplicar para representar la utilizacin de recursos.
7. Programacin temporal de proyectos. 17

Diagrama de precedencias.
Se trata de un grafo ordenado totalmente. Las tareas se representan como nodos. Las relaciones entre tareas son los arcos. Todos los nodos tienen el mismo tamao y pueden contener mucha informacin sobre la tarea.. Los arcos van desde la tarea antecesora a la predecesora, indicandolo con una flecha..

7. Programacin temporal de proyectos.

18

Diagrama de precedencias.

Tarea: Diseo Programas Recursos: Duracin: 4 semanas

Tarea: Codificacin Program. Recursos: Duracin: 7 semanas

Tarea: Especifica Necesidades Recursos: Duracin: 2 semanas Tarea: Pruebas Recursos: Duracin: 2 semanas

Tarea: Diseo B.D.

Tarea: Realizacin Esquema Recursos: Duracin: 1 semanas

Recursos:
Duracin: 2 semanas

7. Programacin temporal de proyectos.

19

Diagrama de precedencias.
Es la forma de representacin ms habitual en programas informticos, junto al Gantt. Al utilizar sistemas informticos para generar los diagramas, se pueden establecer relaciones del tipo:
Fin a Comienzo y Comienzo a Fin, Comienzo a Comienzo y Fin a Fin

7. Programacin temporal de proyectos.

20

Diagrama de flechas.
Es una representacin dual a la anterior. Las tareas se representan como arcos, Los nodos son sucesos puntuales en el tiempo, muestran que se ha alcanzado un estado, al concluir todas las tareas que llegan a el. Aparecen actividades ficticias para asociar estados parciales.
7. Programacin temporal de proyectos. 21

Diagrama de flechas.

7. Programacin temporal de proyectos.

22

Diagrama de flechas.
Los modelos formales para el calculo de calendarios se basa en l. Parece menos intuitivo que los otros grficos, debido fundamentalmente al uso de tareas ficticias.
A
B G

D
7. Programacin temporal de proyectos.

23

Clculo de fechas.
Hay diversas formas de abordar estos clculos, aqu veremos una muy intuitiva. Las fechas importantes en cada tarea. Pasos:
Calculo de las fechas para cada tarea en un proyecto. Definicin y obtencin del camino crtico.

Ejemplo.
7. Programacin temporal de proyectos. 24

Las fechas importantes en cada tarea.


Etiqueta actividad Inicio DESCRIPCIN temprano DE LA Inicio ACTIVIDAD tardo Mximo tiempo disponible
7. Programacin temporal de proyectos.

Duracin Final temprano Final tardo Holgura


25

Las fechas importantes en cada tarea.


DESCRIPCIN DE LA ACTIVIDAD: nombre dado a la actividad. Etiqueta actividad: nmero que identifica a cada actividad. Duracin: tiempo que calculamos que se tardar en completar la tarea. Inicio temprano: fecha ms temprana en que puede comenzar la tarea.
7. Programacin temporal de proyectos. 26

Las fechas importantes en cada tarea.


Final temprano: fecha ms temprana en que puede finalizar la tarea. Inicio tardo: fecha ms retrasada en la que se puede comenzar sin que afectar la fecha de terminacin del proyecto. Final tardo: fecha ms retrasada en la que puede terminar la tarea din afectar la fecha final del proyecto.
7. Programacin temporal de proyectos. 27

Las fechas importantes en cada tarea.


Mximo tiempo disponible: tiempo mximo que puede durar una tarea en caso de comenzar en su Inicio temprano y concluir en su Final tardo. Holgura: tiempo que disponemos para jugar con el inicio de la tarea, sin afectar al proyecto.

7. Programacin temporal de proyectos.

28

Calculo de las fechas para cada tarea en un proyecto.


Partimos del diagrama de precedencias.
2.2 Diseo Progra. 4 3.1 Codifica cin 7

1 Especif. Necesid.

4 Pruebas

2.1 Diseo B.D.

3.2 Realiza. Esquem.

7. Programacin temporal de proyectos.

29

Calculo de las fechas para cada tarea en un proyecto.


Asignamos como inicio temprano 0 a todas las tareas sin predecesor. El final temprano de cada tarea es el inicio temprano ms su duracin. Si la tarea tiene predecesoras, y todas estas tienen calculado su final temprano, asignamos como inicio temprano el mximo de todos ellos.
7. Programacin temporal de proyectos. 30

Calculo de las fechas para cada tarea en un proyecto.


Obtenemos la fecha de final del proyecto,
Partimos de la mxima fecha de final temprano, o de la indicada por el cliente.
Habitualmente se toma la primera, el cliente siempre lo quiere para ayer.

A todas las tareas que no tengan sucesoras se le asigna esta fecha como final tardo.

7. Programacin temporal de proyectos.

31

Calculo de las fechas para cada tarea en un proyecto.


El inicio tardo se calcula restando al final tardo la duracin. Aquellas tareas con sucesoras, se les asigna como final tardo el mnimo de los inicios tardos de estas. Mximo tiempo disponible y Holgura:
Mximo tiempo disponible =Final tardo - inicio temprano Holgura = Mximo tiempo disponible - Duracin
7. Programacin temporal de proyectos.

32

Definicin y obtencin del camino crtico.


Camino Crtico: Conjunto de tareas con Holgura cero.
Si la duracin es mnima hay camino crtico.

Parte de una tarea sin predecesoras, atraviesa el grafo por tareas con holgura cero y termina en una tarea sin sucesoras. Cuando una tarea del camino crtico se retrasa, tambien lo hace el proyecto.
7. Programacin temporal de proyectos. 33

Ejemplo.
Tarea Descripcin Esfuerzo Tipo
Brooks

Recursos

Predecesoras

A B C D E F G H I J K

Anlisis de Requerimientos Diseo de la B.D. Diseo de Procesos Construcc. Prototipo Desarrollo Esquema Codificacin Revisin Prototipo Revisin Cdigo con Mejoras Solicitadas Pruebas Instalacin Sistema Mantenim. Inicial

3 meses 1 mes 4 meses 1 mes 0,5 meses 8 meses 0,5 meses 2 meses 2 meses 1 mes 2 meses

1 2 1 2 1 1 2 1 1 1 2

2 Analistas 1 Analista 2 Analistas 1 Programador 1 Analista 4 Programadores 1 Analista 2 Programadores 2 Programadores 2 Programadores 1 Programador

A A C, E B C, E D F, G H I J

7. Programacin temporal de proyectos.

34

Solucin: Diagrama de precedencias.


B 1,5 A 0 0 1,5 1,5 1,5 1,5 0 2 1,5
Diseo B.D

1 2,5 3 0,5

E 0,5 2,5 Desarroll 3 3 1


o Esquema

D 3,5 4 1,5

Construc Prototipo

1 4,5 5 0,5

G 4,5 5 1

Revisin Prototipo

0,5 5 5,5 0,5

3,5 0,5

Anlisis

C 1,5 1,5 2

Diseo Progrm.

2 3,5 3,5 0

F 3,5 3,5 2

Codifica.

2 5,5 5,5 0

H 5,5 5,5 1

Revisin Cdigo

1 6,5 6,5 0

I 6,5 6,5 1

Pruebas

1 7,5 7,5 0

J 7,5 7,5 0,5

Instalaci.

0,5 8 8 0

K 8 8 2

Manten. Inicial

2 10 10 0

7. Programacin temporal de proyectos.

35

Solucin: Diagrama de Gantt.


A B C D E F G H I J K 1 2 3 4 5 6 7 8 1A 4P 1A 2P 2P 2P 1P 9 10 2 1A 2A 1P

7. Programacin temporal de proyectos.

36

Diferencia fundamental entre el PERT y el CPM.


PERT (Program Evaluation and Review Technique), en l, por cada tarea se estiman tres duraciones:
La optimista (to), La ms habitual (tm), La pesimista (tp).

La duracin se calcula como:


duracin = ( to + 4 tm + tp) / 6
7. Programacin temporal de proyectos. 37

Diferencia fundamental entre el PERT y el CPM.


El CPM (Critical Path Method), utiliza, como nosotros, duraciones fijas en cada tarea. Es el que subyace en la mayora de los programas informticos de gestin de proyectos.

7. Programacin temporal de proyectos.

38

Representacin grfica del uso de recursos en un proyecto.


Es muy til el poder ver tan solo las tareas que hay asignadas a cada recurso, para:
comunicar a los participantes el uso de un recurso compartido, verificar que se utilizan de forma equilibrada, verificar que ningn recurso se pretende utilizar ms de lo posible.

Se usa el Gantt y el de Cargas

7. Programacin temporal de proyectos.

39

Veamos el Diagrama de Gantt con un ejemplo.


Se desea ver la asignacin de programadores del ejercicio anterior.
D F H I J K 1 2 3 4 5 6 7 8 1P 4P 2P 2P 2P 1P 9 10

7. Programacin temporal de proyectos.

40

Veamos el Diagrama de Cargas con un ejemplo.


Se desea ver la asignacin de programadores del ejercicio anterior.
6 5 4 3 2 1 1 2 3 4 5 6 7 8 9 1 0
41

7. Programacin temporal de proyectos.

Revisin y ajuste del calendario.


La primera planificacin suele hacerse con criterios tcnicos, por lo que suele ser necesario revisarla con dos enfoques:
En funcin del uso de recursos,
Equilibrar la disponibilidad de personal,

Segn las necesidades del usuario.


habitualmente siempre desea que se termine lo ms pronto posible. Los costes de oportunidad son un aliciente.
7. Programacin temporal de proyectos. 42

Puntos sobre los que actuar para revisar la planificacin.


Sobre la secuencia de las tareas.
Aumentando paralelismo.

Sobre la duracin de las tareas


Utilizar mejores tcnicas y herramientas. Modificar la productividad de las personas. Modificar la cantidad de personas asignadas a una tarea.

7. Programacin temporal de proyectos.

43

Revisar la secuencia de las tareas.


Estudiaremos las tareas del camino critico y revisaremos la razn por la que se haba creado la secuencia de tareas.
Es posible sacar una tareas de la secuencia?

Aumentando paralelismo entre tareas.


Es posible que una tarea pueda comenzar cuando la precedente se ha realizado al 60%. Esto es peligroso, puede llevar a retrabajos.

7. Programacin temporal de proyectos.

44

Revisar la duracin de las tareas.


Reducir la duracin de las tareas del camino critico, y la del proyecto. Tener en cuenta que al reducir la duracin de una tarea, puede cambiar el camino critico. Cuando el reducir la duracin de una tarea lleva a un coste mayor, deberemos ajustar la reduccin al mximo con coste mnimo.
7. Programacin temporal de proyectos. 45

Revisin tareas, utilizando mejores tcnicas y herramientas.


la duracin de la tarea se basa en una tcnica o herramienta? Existe software que puede dar soporte a una tarea?
Por precio no fue oportuno considerarlo, Tener en cuenta la curva de aprendizaje.

Eliminar las tareas de formacin.


Se puede ir a herramientas conocidas?
7. Programacin temporal de proyectos. 46

Revisin tareas, modificando la productividad.


Modificar la productividad y calidad de los recursos asignados a una tarea. En un estudio sobre, la diferencia de productividad entre programadores se detect una oscilacin de 1 a 25. Tom DeMarco, como M. Page-Jones, dejan claro que relaciones de uno a tres son muy usuales dentro de una misma organizacin.
7. Programacin temporal de proyectos. 47

Revisin tareas, modificando la cantidad de personas.


Podemos asignar ms personas al proyecto, de modo que en las tareas crticas se puedan incluir ms personas. Hay que tener en cuenta:
Los diferentes tipos de tareas que hay, segn la cantidad de personas que asignemos. El aadir ms personal a un proyecto en marcha puede retrasar la finalizacin del proyecto.

7. Programacin temporal de proyectos.

48

Revisin tareas, asignando horas extra.


Esto en principio puede suponer un coste adicional o no. Se recomienda hacer uso de las horas extra slo en casos muy puntuales
como consecuencia de una desviacin en la programacin.

Parece poco razonable pensar en este recurso en la fase de planificacin.


7. Programacin temporal de proyectos. 49

Aceptacin generalizada del plan.


Una planificacin buena ha de ser:
aceptada por todos los participantes, y que todo el mundo crea en ella.

La probabilidad de xito es ms funcin de fe y confianza, que de realismo.

Para esto ha de ser realista.

7. Programacin temporal de proyectos.

50