Presentation on theme: "Scheduling Projects José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática Aplicada 2003-2004."— Presentation transcript:
Scheduling Projects José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática Aplicada 2003-2004
GpiIP-2D Scheduling Projects1 Goal. We have identify: –Deliverables, stages, and project tasks –The resources to be assigned to each task, and –the assignment person-task. We need to obtain a timetable, with two aims: –That its clear what and when is expected –verify that its possible, a day contains 24 h.
GpiIP-2D Scheduling Projects2 The starting point... The WBS is available with project tasks. We have the task cards with the assigned resources and times. Especificación de tarea Número: 3.1. Nombre: Diseño B.D. Descripción:Se diseñara la base de datos, partiendo del modelo entidad-relación propuesto en el análisis y con el objetivo de tener un sistema funcionando sobre DB2. Esfuerzo Estimado: 2 semanas/hombre Personas:1 Diseñador … Recursos:Sala de reuniones … Duración:2 semanas Entregables:Estructura de implementación de la B.D. …:…
GpiIP-2D Scheduling Projects3 Steps when creating an acceptable timetable. Creating an schedule and obtaining the critical path. –Ordering the tasks, –Creating the first schedule, Review and adjustment: –Depending on the use of resources, –According to the users needs, General acceptation of the plan.
GpiIP-2D Scheduling Projects4 Creating an schedule and obtaining the critical path Ordering the tasks. Creating the first schedule (Calculating dates).
GpiIP-2D Scheduling Projects5 Ordering the tasks. Identify and documenting relationships. –Restrictions, –Assumptions, –Obligatory relationships, –Discretional relationships, –External relationships.
GpiIP-2D Scheduling Projects6 Identify and documenting relationships. In a general way, looking from each task, we ask: –What have to be done before this? –What can be done at the same time? –What follows to this? We will add to each task card the former tasks list.
GpiIP-2D Scheduling Projects7 Restrictions. They are the factors that reduce the development team options. They come from the client or the developer enterprise. –Example: Development language, Hardware, people that will be assigned.
GpiIP-2D Scheduling Projects8 Assumptions. Facts that we consider true when planning, We have some risk and they may not be accomplished. They are directly related with project risks. Example: We will have a computer in the clients office.
GpiIP-2D Scheduling Projects9 Obligatory relationships. They are inherent in the work nature (technical aspects). Its usually due to the need of one deliverable in order to start an other task. Example: –Test XYZ program, must be preceded by Coding XYZ program
GpiIP-2D Scheduling Projects10 Discretional relationships. They are defined by the project team. We need to be careful, it can restrict the project program in the future. Its based on: –The best practices, –We prefer a sequence because its easier to control. –Limitations on personnel assignments.
GpiIP-2D Scheduling Projects11 External relationships. They came from outside the project. They are related to interdependence with: –other projects. –External enterprises or contracts on which we cant say anything. One task cannot start until we have an external product.. –Example: Test a software on specific hardware.
GpiIP-2D Scheduling Projects12 TASK CARD Task specification Number: 3.1. Name: Data Base Design. Description:Designing the data base as.... Estimated Effort : 2 weeks/person Personnel:1 Designer … Resources:meeting room … Elapsed time:2 weeks Deliverables: D.B. implementation structure Preceding tasks:2.1 (mandatory); 2.2 (external)
GpiIP-2D Scheduling Projects13 Graphical Representation of tasks precedence's. There are a lot of methods in order to represent this sequence in a visual way. –Gantt Diagrams, –Precedence's Diagrams,
GpiIP-2D Scheduling Projects14 Gantt Diagram. This is the eldest diagram and its possible that the most used diagram. We represent it in a double axis : –In the horizontal axis its represented the time, –In the vertical axis the tasks, –Each task is represented as a rectangle, at the level of the task and starting and finishing at the beginning and end of the task in the time.
GpiIP-2D Scheduling Projects15 Gantt Diagram TASKS Needs Specs Program's Design Data Base Design Data Schema Program's Codification Test 0 2 4 6 8 10 12 14 16 weeks
GpiIP-2D Scheduling Projects16 Gantt Diagram Weaknesses: –No explicit technique for depicting interrelationships. –The graph tends to be inflexible. Strengths: –Easiest of all systems in some respects because it is well understood. –Can also be used for estimating resource requirements.
GpiIP-2D Scheduling Projects17 Precedence's Diagram. The network is a graphic model portraying tasks and dependences. Boxes (nodes) represent activities. Links represent dependences All the boxes have the same size and may contain a lot of information about the task. Links are represented by an arrow from starting in the predecessor node.
GpiIP-2D Scheduling Projects19 Precedence's Diagram. This model is the more used by software programs, as Gantt diagram. When we use software to plan projects, we can establish different kinds of dependences as: –Finish to start and … –Start to end, Start to Start and end to end.
GpiIP-2D Scheduling Projects20 The Pert Diagram. Its a dual representation. Arrows are represented as tasks, Time events are represented by nodes, they show that we have finish same tasks. We have dummy tasks in order to represent partial events.
GpiIP-2D Scheduling Projects21 Arrows diagram. A B C D EF
GpiIP-2D Scheduling Projects22 Arrow diagrams. Formal methods are based on this model. Its lees intuitive because of dummy tasks. A B C D EF G
GpiIP-2D Scheduling Projects23 Calculating dates. We are going to see one of the easiest ways. We fist talk about important dates in each task. After we will se the steps: –Calculating the times for each task in the project. –Definition and critical path identification. Example.
GpiIP-2D Scheduling Projects24 Important dates in each task.
GpiIP-2D Scheduling Projects25 Important dates in each task. Activity description is the name we give to the task. Task label is a number identifying each task. Duration is the time We calculate that is necessary to complete the task. Earliest start is de more earliest time in which the task can be started
GpiIP-2D Scheduling Projects26 Important dates in each task. Earliest finish is the earliest time in which we can finish the task if it starts Early. Latest start is the latest time in which we can start the task and the project finish in the proposed data. Latest finish is the latest time in which we can finish the task and the project finish in the proposed data.
GpiIP-2D Scheduling Projects27 Important dates in each task. Activity span is the maximum time that we have to do the task. Float is the time We have to change the start time of the task.
GpiIP-2D Scheduling Projects28 Calculating tasks dates. We start from the precedence´s diagram.
GpiIP-2D Scheduling Projects29 Calculating tasks dates. We assign 0 as Earliest start at all the task without predecessor. The Earliest finish is calculated adding to the earliest the duration. It a task has predecessors and all of them has calculated the earliest finish, then We put as earliest start the maximum of all this earliest finish. We continue until all the tasks has the earliest times.
GpiIP-2D Scheduling Projects30 Calculating tasks dates. We calculate the end of the project, –We find the maximum of all earliest finish of all the activities. –Or we take the finish proposed by the client if its greater than the other calculated. –Usually we take the first of this, client usually wants the system now. We assign this data as latest finish to all the activities that dont have links to other activities (no activities after that).
GpiIP-2D Scheduling Projects31 Calculating tasks dates. The latest start is calculated subtracting to the latest finish the duration. Predecessor activities that have links to activities with latest start takes as latest finish the minimum of all this latest starts. Activity span and float: –Activity span = latest finish – earliest start –Float = Activity span - Duration
GpiIP-2D Scheduling Projects32 Critical Path definition and identification. The critical path is the set of activities with no float (float = 0) If we want the minimum duration, we have critical path. Starts in an activity without predecessors, cross all the graph and arrive to an activity with no links to other activities. If one activity in the critical path has more duration than estimated, the project will finish later than expected.
GpiIP-2D Scheduling Projects36 Main difference between PERT and CPM. PERT (Program Evaluation and Review Technique), We calculate de duration based on three estimations: –Optimist (Minimum) (t o ), –Mean time (most likely) (t m ), –pessimistic (Maximum) (t p ). duration is calculated as: duration = ( t o + 4 t m + t p ) / 6
GpiIP-2D Scheduling Projects37 Main difference between PERT and CPM. CPM (Critical Path Method), uses fixed estimations for each task, as we do. CPM is behind most of the project management software.
GpiIP-2D Scheduling Projects38 Resource use graphic representation. Its useful in order to see each resource work load. And: –Communicate shared resources –Verify the balanced use of resources, –Verify that no resource is used more than possible. We usually use Gantt and the resources use graphic.
GpiIP-2D Scheduling Projects39 An example. We want the information about programmers in the exercise.
GpiIP-2D Scheduling Projects40 An example. We want the information about programmers in the exercise.
GpiIP-2D Scheduling Projects41 Revision and adjust of the time table. Usually the first plan is based on Obligatory relationships between tasks. Its possible that we need to refine de plan based on: –The use of resources: Equilibrating resource availability. –The users needs: As soon as possible (usually). Opportunity costs.
GpiIP-2D Scheduling Projects42 In the plan, We can act: On task sequence. –Increase the parallelism. Over the task duration: –Use better techniques and tools. –Modify the people productivity. –Modify the quantity of resources assigned to a task.
GpiIP-2D Scheduling Projects43 Revise the task sequence. We analyze the critical path and understand why task are in this order. Is it possible take any task of this sequence? Increase the parallelism. Is it possible start a task when the precedent is at the 60% developed? This is a danger thing because it can carry redo same works.
GpiIP-2D Scheduling Projects44 Revise the task duration. Only in this within the critical path. Its possible that the critical path change. When reduce the duration of a task implies a higher cost, we must balance the duration and cost
GpiIP-2D Scheduling Projects45 Revise tasks, using better techniques and tools. Task duration is based on a technique or tool? Exists same software to support the task? –It was expensive and we dont consider that before, –Look at the learning curve. Eliminate training task. –Can we use known tools?
GpiIP-2D Scheduling Projects46 Revise tasks duration based on productivity. Can we change the quality and/or productivity of assigned resources?. Comparing programmers productivity it was found a variation of 1 to 25. Tom DeMarco, and M. Page-Jones, said that relations 1 to 3 are usually in organizations.
GpiIP-2D Scheduling Projects47 Revise tasks duration based on the quantity of people on task We can assign more people to the project and the critical path task can use more people. But: –We have different types of task (Brooks) –Assigning more people to a project increase the number of task and can delay the project. (Brooks)
GpiIP-2D Scheduling Projects48 Revise tasks duration, assigning extra hours. It can increase the cost or not Expertise people said that you mast use extra hours in punctual situations –As a deviation in the plan Its no reasonable use this idea in the planning phase.
GpiIP-2D Scheduling Projects49 Plan general acceptance. A good plan must be: –accepted by all the participants, and –All the people believe in this plan. It must be realist. The probability of success is more function of belief than reality.
GpiIP-2D Scheduling Projects50 Bibliography de Cos Castillo, M. Teoría general del proyecto. Editorial Sintesis.1995. Cotterell, M, Hughes,B. Software project management. ITP (Thomson Publishing Inc.). 1995. DeMarco, Tom, Lister, Peopleware. Dorset House, 1987. García Cabañes, J., Fernández Martínez, L., Tejera del Pozo, P. Técnicas de Investigación Operativa. Paraninfo, 1990. (Tema 5) Lock, D. Gestión de proyectos. Paraninfo, 1990. Microsoft Press. Microsoft Project para windows 95 paso a paso. McGraw-Hill 1995. Page-Jones, M. Practical Project Management. Dorset House, 1985. Romero López, C., Técnicas de programación y control de proyectos, Pirámide, 1988. BBC Training Videos, El proyecto empresarial: Dirección y Control, International Education & Training Enterprises S.A.