Project Scheduling Network Diagrams (AOA and AON) Schedule Calculations Overlapping Precedence Networks By Dr. Abdalla Qudah 2 Project Planning Project planning defines the project activities and end products that will be performed and describes how the activities will be accomplished. The planning process includes steps to: Define the technical approach used to solve the problem. Define and sequence the tasks to be performed and identify all deliverables associated with the project. Define the dependency relations between tasks. Estimate the resources required to perform each task. Schedule all tasks to be performed. Define a budget for performing the tasks. Define the organization used to execute the project. Identify the known risks in executing the project. Define the process used for ensuring quality. Define the process used for specifying and controlling requirements. 3 Breaking the Project into Activities (Work Breakdown Structure) Creating project outline: Use the outlining technique to break a project down into smaller and more manageable pieces of work. This technique takes the overall project's objectives and scope and systematically creates additional levels of detail. This detail can then be specified in terms of duration, work and logical dependencies (links). The outline created forms a hierarchical structure, also known as a Work Breakdown Structure (WBS). 4 Work Breakdown Structure (WBS) Contract Engine Product support Training Fan Compressor Turbine Fan assembly Full scale fan rig test Minor fan rig test case assembly Rotary assembly Stator assembly 5 WBS Work Breakdown Schedule (WBS) Management Plan Project Track Project Develop Project Plan Update Project Plan Prepare status report Collect/analyze project metrics Perform Quality Activities Prepare QA Plan Conduct Reviews Perform CM Prepare CM Plan Develop Project Library Conduct Audits Manage Change Board Maintain Configuration Items Design Prepare Preliminary Design Prepare Detailed Design Develop Enterprise Architecture Prepare Data Flow Diagrams Prepare Physical Data Model Prepare Data Dictionary Document Design Develop Design Specification Review Design Prepare Logical Data Model Development/ Integration Develop Software Procure Hardware Develop Server Application Develop User Interface Procure Server Procure Workstations Procure Software Packages Procure Databases Perform Integration Testing Develop XYZ Interface Procure User Interface Building Tool Procure Operating System Convert Data Develop Conversation Plan Develop User Manual Acceptance Testing Plan Acceptance Test Conduct Acceptance Test Develop Test Report Installation Develop Installation Plan Site Preparation Maintenance Hardware Maintenance Software Maintenance Install at Locations Headquarters Site One Transition Management 6 Planning from the top down a) Define the project's objective (this will create the Project Summary Task): Documentation Project Documentation Project Manual Phase Help system Phase b) Define the major summary tasks. Keep sub-objectives (Summary task) similar in size (work / cost). Major summary tasks may relate to; products, functions, disciplines, cost areas. 7 Adding lower levels of detail a) Take each major summary task (phase) and break it down into appropriate summary tasks: b) And then into detailed tasks: Documentation Project Manual Phase Help system Phase Content Exercises Exercises Content Documentation Project Manual Phase Help system Phase Content Create links Exercises Exercises Content Design structures Write body text Create exercises Test exercises Contents and index Set page layouts Design/test structures Create help pages Proof read pages Test links The smaller the task, the more accurately it can be estimated. 8 Using Work Breakdown Codes 2.1.2 M/S 1.2.1 1.1 2.2.2 2.1.4 2.2.1 1.2.3 1.2.2 1.1.1 Documentation Project 2.1.1 1.1.3 1.1.2 2.1.3 2.2.3 M/S 2 1 2.2 2.1 1.2 9 Adding Milestones Milestones represent intermediate target events that can be set within the project's overall scope. Milestones usually have no duration and consume no resources. They usually signify that something significant has been completed or something significant is ready to occur. Milestones and their associated dates may be used purely for reporting purposes. Examples: the project start date, the fabrication of a prototype, the end of the testing phase, the start of limited-scale production, and the completion of the customer acceptance test 10 Adding Milestones Milestones appear on network diagrams and on Gantt charts as shown below: Networks Gantt charts Agree milestones and their dates with the project's sponsor and other project stakeholders. Milestones usually have duration and work effort values of zero. 11 Adding Procurement Activities The plan is not complete without considering the procurement activities that may influence the project schedule time and cost: Inspection, testing and commissioning Fabrication and delivery of major items Purchasing and delivery of major supplies, equipment, and plants. Authorization and approvals. Subcontracting. 12 Project Scheduling The idea behind project scheduling is to create feasible timetables allowing the completion of a project on time. No project can be expected to succeed without proper scheduling. In order to develop a sound schedule, the project manager should estimate the duration of all activities in the project, as well as establish all technological precedence relationships between these activities. A thorough study of resource limitations adds credence to the schedule. 13 Purpose of Project Schedules The project schedules job is to answer many questions: How long would it take to complete the project? What are the scheduled start and finish dates for each activity? Which activities are critical and must be completed on schedule in order to maintain the project schedule? How long can noncritical activities be delayed before they impact the project schedule? How long can noncritical activities be delayed before they impact other activities in the project? At any point in time, what range of expenditure is considered acceptable? Is it economically beneficial to accelerate some activities in the project? If yes, which one should be accelerated? By how much? T i m e C o s t 14 Issues to consider in preparing a Project Schedule The level of detail of a particular schedule depends heavily on the end user. A functional manager may only be interested in a schedule portraying tasks performed by members of his group. The project manager should need a detailed schedule for each element as well as a master schedule for the entire project. Each schedule should be developed with the participation of project team members. This will ensure that it is executable and minimizes the chance of overlooking any technical detail. Every schedule should include key milestones, which are important dates marking the start or the completion of some main events in the projects. The developed schedule should undergo several iterations until it emerges as a dependable master schedule. 15 Scheduling Techniques Networks: graphical of nodes and arcs (arrows) representing activities and logical (precedence) relationships among the project activities. Bar (Gantt) Charts: time scale graphical representation of activities and, in some cases, logical relationships among the activities. Scheduling is typically carried out using networks, and the results are communicated through bar charts. 16 Network Scheduling Techniques Two main approaches to constructing network diagrams: I J Arc representing Relationship between Activities i and j Successor: Activity j Predecessor: Activity i Nodes representing Activities 2) Network diagrams with activity on node (AON): 1) Network diagrams with activity on arrow(AOA): i j Arc representing Activity ij Event j Finish of Activity ij Event i Starting of Activity ij Nodes representing Events 17 Network Scheduling Techniques A clear understanding of activity relationships and resource constraints is imperative. In all cases, four questions have to be answered before we can start the modeling process: What are the main activities in the project? What is the sequence of their execution? What activities can be executed concurrently? What is the estimated duration of each activity? Manual network calculation is suitable for small size projects. Special software such as Microsoft Project and PRIMAVERA should be used for large-scale projects. 18 Establishing Relationships among Activities Once a project's tasks have been defined, the next objective is to determine how the tasks relate to one another. This operation will create sequences of tasks within the project and ultimately establish exactly when each of the tasks can occur. In determining the sequence of tasks, concentrate on what other task (or tasks) must be accomplished before a particular task can take place - predecessor (s). Here we will concentrate on Finish-to-Start (FS) relationships. Other types of relationships will be discusses later. 19 Why activities relate to each other? Not all tasks within a project start at the same time. There will always be some form of sequence. The relationships between tasks (or logic links) have two discrete types: Pure (or absolute) logic - task B must succeed task A (kettle must contain water before it can be put to boil). Preferential logic - starting a task when there is someone available to do it (getting the cups once the kettle is boiling the water). Avoid using preferential logic, as the project may become more complicated than is necessary. Use resource leveling resolve any resource conflicts that may arise. 20 Simple Relationships between two activities The simplest logical relationship is where the commencement of one task depends upon the completion of just one task that precedes it, i.e., Finish-to-Start relationship (FS). 100 Install Pump 200 Connect Pump 10 20 30 Install Pump Connect Pump Activity On Node: Activity On Arrow: Install Pump is the Predecessor and Connect Pump is the Successor 21 Complex Relationships The completion of one predecessor allows the commencement of multiple successors: 100 Design Architucture 200 Design Electro/Mech 300 Design Structural 10 20 40 Design Architecture Design Structural 30 Design Electro/Mech. Design Architecture Design Electro/Mech. Design Structural Activity On Node: Activity On Arrow: Bar (Gantt) Chart: 22 Complex Relationships One successor has more than one predecessor: Activity On Node: Activity On Arrow: Bar (Gantt) Chart: 200 Design Electro/Mech 300 Design Structural 400 Prepare Drawings 50 60 40 Prepare Drawings Design Structural 30 Design Electro/Mech. Prepare Drawings Design Electro/Mech. Design Structural 23 Creating a Network Activity Predecessors Design structure Write body text Design structure Set page layout Write body text Create exercises Design structure Test exercises Create exercises Create table of contents & index Set page layout Test exercises Design structure Write body text Set page layouts Test exercises Create exercises Create table of contents & index 10 20 30 Design structure Write body text 50 Set page layouts Create table of contents & index 60 40 Create exercises Test exercises Documentation Project Manual Phase Help system Phase Content Create links Exercises Exercises Content Design structures Write body text Create exercises Test exercises Contents and index Set page layouts Design/test structures Create help pages Proof read pages Test links Activity On Node: Activity On Arrow: 24 Rules for constructing AOA networks 1. Nodes are identified by unique numbers (ID number). Try to have each node identified by a number higher than the immediately preceding node. Close the network to give single beginning and ending nodes. Incorrect: Reason: too many open ends More than one project start (10, 20, & 30) More than one project finish (70 & 80) Correct: Reason: Redundant relationship is removed 10 40 A 70 D 20 50 B 30 60 C 80 E 20 A 40 D 10 B 30 C E 25 Rules for constructing AOA networks 2. Use dummy activities to ensure proper relationships. Dummy activities have no duration or cost associated with them. They are either represented by an arrow with 0 duration and 0 cost, or by a dotted arrow. Example 1: A and B are predecessors of C, B is the only predecessor of D 10 30 A 50 D 20 40 B 60 C Dummy 10 30 A 50 D 20 40 B 70 C Dummy 1 60 80 E Dummy 2 Example 2: C depends upon A D depends upon B, and E depends upon both A and B 26 Rules for constructing AOA networks 3. Use dummies to ensure unique activity identification (ij). Two activities can share either the starting node (i) or the finish node (j), but not both. Incorrect A and B are activities (10, 20) Correct: A & B are uniquely numbered 10 20 A B 10 30 A B 20 Dummy 27 Rules for constructing AOA networks 4. Remove redundant DUMMIES. A redundant dummy exists if can be removed without affecting the precedence relationships among other activities. Redundant dummy Redundant dummy removed 10 30 A 50 20 40 B C Dummy 10 30 A 50 20 B C 28 Rules for constructing AON networks 1. Close the network to give single beginning and ending nodes. A D E C B A D E C B Start Finish Incorrect: Reason: too many open ends More than one project start (A, B, & C) More than one project finish (D & E) Correct: Reason: only two open ends One project start (added milestone) One project finish (added milestone) 29 Rules for constructing AON networks 2. Remove redundant relationships: Incorrect: Reason: The direct relationship between activities A and C is redundant. It is already implied by the sequence of relationships A-B-C. Correct Reason: Redundant relationship is removed A C B redundant A C B 30 Procedure for drawing the Activity-On-Node network 1. Prepare a dependency list for all activities. Activity Predecessors A B C A D A E A, B, D F D 2. Draw a random network of activities (nodes) and relationships (links). A B C F E D 31 Procedure for drawing the Activity-On-Node network 4. Identify starting and terminal activities. A B C F E D 5. Close the network: By adding start and finish milestones, and connecting them to the open ends activities. A B C F E D Start Finish 3. Remove redundant relationships (AE) A B C F E D 32 Procedure for drawing the Activity-On-Node network 6. Identify the sequence step of each activity. 7. Draw the sequenced network. A B C F E D Start Finish 2 2 2 1 1 2 3 3 3 4 1 2 2 1 0 4 2 3 A B C F E D Start Finish 0 4 3 2 1 33 Using networks diagrams as reports Strengths: Concisely express relationships between tasks Useful in debugging project logic Weaknesses Can be very large and complex to read Usually a very limited audience Difficult to update and often misused 34 Estimating the Activity Duration The estimation process is complex because activity duration is affected by numerous variables that must be dealt with concurrently in the planning phase. Some of these variables include: Type and complexity of work Availability of information Technique for carrying out the work (method of work), Staff availability, The skill level of the person assigned to the task, Unexpected events, Efficiency of work time, and Mistakes and misunderstandings during the development of the project. 35 Estimating the Activity Duration A task duration is rarely overestimated, but is frequently underestimated. When estimating the duration of a task, reality is a major factor. The knowledgeable scheduler takes into account: absenteeism, meetings, discussions, and interaction among the staff. No one is 100% productive every hour of the workday. 36 Techniques for Estimating the Activity Duration The most common technique is based on the historical experience of a similar scope of work performed by the estimator. When historical data or experts are not available, use a technique of getting estimates from multiple sources, comparing results and estimating the duration based on the multiple inputs. Else, break the activity into work tasks and estimate the duration of each subtask: Duration = (quantity of work / productivity) x work efficiency factors 37 Schedule Calculations of Activity-On-Arrow Networks The earliest time an activity can start (ES) depends on how early its preceding activities are finished. How late the finish time (LF) of an activity can be delayed depends on how late the start time of the succeeding activities can be delayed) The Four Activity (Start and Finish) Times: Early Times = The Activity Times when performed As Soon As Possible: Early Start (ES): the earliest possible start time. Early Finish (EF): the earliest possible finish time. Late Times = The Activity Times when performed As Late As Possible: Late Start (LS): the latest possible start time. Late Finish (LF): the latest possible finish time. 38 The Four Activity Times The difference between the start and finish times of an activity is that of the activity duration: EF I = ES I + T I LF I = LS I +T I I Activity T i Activity i Activity i T i LF i LS i EF i ES i T i Total available time 39 Early Schedule Calculations: Forward Pass ES 6 = Maximum of the EF 2 and the EF 4 ES J = Max (EF I ) of all preceding activities I 6 2 4 EF 4 EF 2 ES 6 Network presentation Bar (Gantt) Chart presentation Predecessors (Is) Activity 2 ES 2 EF 2 T 2 Activity 4 ES 4 EF 4 T 4 Activity 6 ES 6 EF 6 T 6 Successor (J) 40 Late Schedule Calculations: Backward Pass LS 8 = Minimum of the LF 10 and the LF 12 LS I = Min (LF J )of all succeeding activities J Network presentation Bar (Gantt) Chart presentation Predecessor (I) Activity 8 LF 8 T 8 Activity 10 LS 10 T 10 LS 12 Activity 12 T 12 Successor (Js) LF 8 LS 10 10 8 12 LS 12 41 Network Calculations: The Activity Float Times The Activity Float (Slack) Times: 1. Total Float (TF) = The time span by which an activity can be delayed without delaying the project completion time. 2. Free Float (FF) = The time span by which an activity can be delayed without delaying: any other (successor) activity, and the project completion time. 42 Schedule calculations: Link Gap & Free Float (FF) FF I = Min (ES J ) EF I FF I = Min (ES J - EF I ) = Min (Gap IJ ) I J ES I EF I EF J ES J Gap IJ = ES J - EF I Free Float (FF) is the time span in which the completion of an activity may occur and not delay the termination of the project nor delay the start of any following activity. 43 Schedule calculations: Total Float (TF) TF I = LF I EF I = LS I ES I TF I = Min (TF J + Gap IJ ) Activity I Activity I T I LF I LS I EF I ES I T I Total available time to perform activity I TF I TF I Total Float (TF) is the time span in which the completion of an activity may occur and not delay the termination of the project. 44 Early Schedule Calculation: Forward Pass 10 A 2 20 B 17 50 E 6 60 F 2 40 D 5 30 C 3 70 G 1 0 2 2 19 2 5 2 7 7 13 7 9 19 20 ESj =Max(EFi) for all predecessors 0 0 0 0 2 0 0 6 10 Gapij = ESj- - EFi Driving Relationship ID Name T Legend ES EF Example 1: 45 Free Float Calculation: Forward Pass 10 A 2 20 B 17 50 E 6 60 F 2 40 D 5 30 C 3 70 G 1 0 2 2 19 2 5 2 7 7 13 7 9 19 20 0 0 0 0 2 0 0 6 10 ESj =Max(EFi) for all predecessors Gapij = ESj- - EFi Driving Relationship FF =6 FF =10 FF =0 FF =2 FF =0 FF =0 FF =0 FFi = Min (Gapij) = Min (ESj) - EFi ID Name T Legend ES EF 46 Late Schedule Calculation: Backward Pass 10 A 2 20 B 17 50 E 6 60 F 2 40 D 5 30 C 3 70 G 1 0 2 2 19 2 5 2 7 7 13 7 9 19 20 0 0 0 0 2 0 0 6 10 20 19 19 2 19 13 19 17 13 10 13 = Min (13, 17) 8 2 0 LFi =Min (LSj) for all successors ID Name T Legend ES EF LF LS 47 Total Float Calculation 10 A 2 20 B 17 50 E 6 60 F 2 40 D 5 30 C 3 70 G 1 0 2 2 19 2 5 2 7 7 13 7 9 19 20 0 0 0 0 2 0 0 6 10 20 19 19 2 19 13 19 17 13 10 13 = Min (13, 17) 8 2 0 LFi =Min (LSj) for all successors ID Name T Legend ES EF LF LS TF = LF EF = LS - ES TF = 0 TF = 6 TF = 10 TF = 0 TF = 8 TF = 6 TF = 0 48 Network Calculations Example 2: 5 A 4 10 B 8 15 C 3 20 D 2 25 E 7 35 G 1 30 F 5 The Network: Activity ID Precedence Relationship Duration Predecessors Relationship A 10 2 B 20 A FS+0 17 C 30 A FS+0 3 D 40 A FS+0 5 E 50 C FS+0 6 F 60 D FS+0 2 D FS+0 G 70 B FS+0 1 E FS+0 F FS+0 49 Network Calculations Example 2: 5 A 4 10 B 8 15 C 3 20 D 2 25 E 7 35 G 1 30 F 5 0 20 19 12 7 19 12 6 4 7 4 12 4 4 The Early Schedule: Forward Pass 50 Network Calculations Example 2: The Link Gaps and Driving Relationships: Forward Pass 5 A 4 10 B 8 15 C 3 20 D 2 25 E 7 35 G 1 30 F 5 0 0 0 0 0 0 0 20 19 12 7 19 12 6 4 7 4 12 4 4 7 6 5 1 51 Network calculations Example 2: The Float Times (TF & FF): Backward Pass 5 A 4 10 B 8 15 C 3 20 D 2 25 E 7 35 G 1 30 F 5 0 0 0 0 0 0 0 20 19 12 7 19 12 6 4 7 4 12 4 4 7 6 5 1 TF = 0 FF = 0 TF = 0 FF = 0 TF = 0 FF = 0 TF = 5 FF = 0 TF = 7 FF = 7 TF = 6 FF = 1 TF = 0 FF = 0 52 Communicating the Network Using Bar (Gantt) Chart Time (Working Days) Activity 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 A B C D F E G 5 A 4 10 B 8 15 C 3 20 D 2 25 E 7 35 G 1 30 F 5 0 0 0 0 0 0 0 20 19 12 7 19 12 6 4 7 4 12 4 4 7 6 5 1 TF = 0 FF = 0 TF = 0 FF = 0 TF = 0 FF = 0 TF = 5 FF = 0 TF = 7 FF = 7 TF = 6 FF = 1 TF = 0 FF = 0 Gantt Chart is a time-scale graphical representation of the project schedule It shows all of the schedule information. Usually relationships are not shown on the chart. Activities can be ranked and sorted according to information requirements. Legend: None critical activity Critical activity Free Float Total Float