2019-10-29 Project Management Class – 8 Resource Allocation Learning Outcomes Ø What is the fundamental trade-off between project cost and project time? Ø Expediting a project Ø Resource leveling Ø How to allocate limited resources to specific activities/projects when there are competing demands for the same limited resources? Ø Case study review 1 2019-10-29 Expediting a Project Ø Consider a “bridge construction” project. Ø Digging the drainage ditch takes 10 days with a team of 3 workers. Ø There are 3 other workers that can be added if they stop their own task “concrete pouring”. Ø They (i.e., 6 workers) can complete digging in 5 days at the cost of delaying the task “concrete pouring”. Ø The PM can also rent an excavator machine to get the job done in 2 days. Ø What is the key trade-off in making the decision? Expediting a Project: Example Relocation of a Hospital Level 0 Organizing and Site Preparation Physical Facilities and Infrastructure Select administration staff Purchase and deliver equipment Site selection and survey Construct hospital Select medical equipment Develop information system Prepare final construction plans Install medical equipment Bring utilities to site Train nurses and support staff Level 1 Level 2 Interview applicants for nursing and support staff 2 2019-10-29 Relocation of Hospital Activity List, Duration, and Precedence Relationship Activity Immediate Predecessors Activity times (wks) 0 start start A B B A 12 9 10 10 24 10 C D A E, G, H F, I, J K 35 40 15 4 6 0 START Organizing and Site Preparation A. Selecting administrative staff B. Site selection and survey C. Select medical equipment D. Prepare final construction plans E. Bring utilities to site F. Interview applicants for nursing and support staff Physical Facilities and Infrastructure G. Purchase and deliver equipment H. Construct hospital I. Develop information system J. Install medical equipment K. Train nurses and support staff FINISH Developing the Schedule and Finding Critical Path 12 I 27 The Critical Path takes 69 weeks 15 0 A 12 12 F 22 12 Path A-I-K A-F-K A-C-G-J-K B-D-H-J-K B-E-J-K Time (wks) 33 28 67 69 43 63 6 10 12 Start C 22 22 10 0 B 9 9 9 D 19 10 9 K 69 G 57 Finish 35 19 H 40 59 59 J 63 4 E 33 24 3 2019-10-29 Project Crashing Project Crashing: Shortening (or expediting) some activities within a project to reduce overall project completion time. Ø Project Costs ü Direct Costs: Labor, materials, and any other costs directly related to activities ü Indirect Costs: Administration, depreciation, financial, and other overhead costs that can be avoided by reducing total project time ü Penalty Costs: If project extends beyond some specific date. Cost to Crash Cost to Crash Ø Normal time (NT) is the time necessary to complete an activity under normal conditions. Ø Normal cost (NC) is the activity cost associated with the normal time. Ø Crash time (CT) is the shortest possible time to complete an activity. Ø Crash cost (CC) is the activity cost associated with the crash time. 𝐂𝐨𝐬𝐭 𝐭𝐨 𝐜𝐫𝐚𝐬𝐡 𝐩𝐞𝐫 𝐩𝐞𝐫𝐢𝐨𝐝 = 𝐂𝐂 − 𝐍𝐂 𝐍𝐓 − 𝐂𝐓 4 2019-10-29 Which Activities to Crash? Ø Which activities and for how long should be crashed? 0 A 12 12 15 12 F 22 12 Path A-I-K A-F-K A-C-G-J-K B-D-H-J-K B-E-J-K 63 12 Start C 22 22 10 0 B 9 9 9 D 19 G 57 Finish 35 19 10 9 K 69 6 10 Time (wks) 33 28 67 69 43 I 27 H 40 59 59 J 63 4 E 33 24 Which Activities to Crash? Algorithm Ø Which activities and for how long should be crashed? Ø Determining the Minimum Cost Schedule: 1. Determine the project’s critical path(s). 2. Find the activity or activities on the critical path(s) with the lowest cost of crashing per unit of time. 3. Reduce the time for this activity until… a. It cannot be further reduced or b. Until another path becomes critical, or c. The increase in direct costs exceeds the savings that result from shortening the project. 4. Repeat this procedure until the increase in direct costs is larger than the savings generated by shortening the project. 5 2019-10-29 Hospital Example: Finding Cost to Crash CC – NC NT – CT DIRECT COST AND TIME DATA FOR THE HOSPITAL PROJECT Activity Normal Time (NT) (weeks) Normal Cost (NC)($) Crash Time (CT)(weeks) Crash Cost (CC)($) Maximum Time Reduction (week) Cost of Crashing per Week ($) A 12 $12,000 11 $13,000 1 1,000 B 9 50,000 7 64,000 2 7,000 C 10 4,000 5 7,000 5 600 D 10 16,000 8 20,000 2 2,000 E 24 120,000 14 200,000 10 8,000 F 10 10,000 6 16,000 4 1,500 G 35 500,000 25 530,000 10 3,000 H 40 1,200,000 35 1,260,000 5 12,000 I 15 40,000 10 52,500 5 2,500 J 4 10,000 1 13,000 3 1,000 K 6 30,000 5 34,000 1 4,000 Totals $1,992,000 $2,209,500 Analyzing Cost – Time Trade-Offs Hospital Example Ø Project completion time was 69 weeks (Critical Path Analysis) Ø Suppose that project indirect costs are $8,000 per week Ø After 65 weeks, the Regional Hospital Board imposes cost of $20,000 per week if the hospital is not fully operational. Ø Question: What is the saving per week shortening the project? ü Saving per week (if completion time > 65) = $28,000 ü Saving per week (if completion time ≤ 65) = $8,000 6 2019-10-29 Analyzing Cost – Time Trade-Offs Hospital Example Ø Determine the minimum-cost schedule for the Hospital project. Ø Project completion time = 69 weeks Ø Project cost = $2,624,000 Direct = $1,992,000 Indirect = 69($8,000) = $552,000 Penalty = (69 – 65)($20,000) = $80,000 A–I–K A–F–K A–C–G–J–K B–D–H–J–K B–E–J–K 33 weeks 28 weeks 67 weeks 69 weeks 43 weeks Hospital Example Which Activity To Crash? DIRECT COST AND TIME DATA FOR THE HOSPITAL PROJECT Activity Normal Time (NT) (weeks) Normal Cost (NC)($) Crash Time (CT)(weeks) Crash Cost (CC)($) Maximum Time Reduction (week) Cost of Crashing per Week ($) A 12 $12,000 11 $13,000 1 1,000 B 9 50,000 7 64,000 2 7,000 C 10 4,000 5 7,000 5 600 D 10 16,000 8 20,000 2 2,000 E 24 120,000 14 200,000 10 8,000 F 10 10,000 6 16,000 4 1,500 G 35 500,000 25 530,000 10 3,000 H 40 1,200,000 35 1,260,000 5 12,000 I 15 40,000 10 52,500 5 2,500 J 4 10,000 1 13,000 3 1,000 K 6 30,000 5 34,000 1 4,000 Totals $1,992,000 $2,209,500 7 2019-10-29 Analyzing Cost – Time Trade-Offs: Hospital Example STAGE 1 Ø Step 1. The critical path is B–D–H–J–K. Ø Step 2. The cheapest activity to crash per week is J at $1,000. Ø Step 3. Crash activity J by its limit of three weeks because the critical path remains unchanged. The new expected path times are A–C–G–J–K: 64 weeks Path Time (wks) B–D–H–J–K: 66 weeks B–E–J–K: 40 weeks A-I-K 33 A-F-K 28 Ø The net savings are 3($28,000) – 3($1,000) = $81,000. A-C-G-J-K 67 B-D-H-J-K 69 Ø The total project costs are now $2,624,000 - $81,000 = $2,543,000. B-E-J-K 43 Analyzing Cost – Time Trade-Offs: Hospital Example I 15 STAGE 1 A 12 Start B 9 The critical path does not change F 10 K 6 C 10 G 35 D 10 H 40 Finish J 1 E 24 8 2019-10-29 Analyzing Cost – Time Trade-Offs: Hospital Example DIRECT COST AND TIME DATA FOR THE HOSPITAL PROJECT Activity Normal Time (NT) (weeks) Normal Cost (NC)($) Crash Time (CT)(weeks) Crash Cost (CC)($) Maximum Time Reduction (week) Cost of Crashing per Week ($) A 12 $12,000 11 $13,000 1 1,000 B 9 50,000 7 64,000 2 7,000 C 10 4,000 5 7,000 5 600 D 10 16,000 8 20,000 2 2,000 E 24 120,000 14 200,000 10 8,000 F 10 10,000 6 16,000 4 1,500 G 35 500,000 25 530,000 10 3,000 H 40 1,200,000 35 1,260,000 5 12,000 I 15 40,000 10 52,500 5 2,500 J 4 10,000 1 13,000 3 1,000 K 6 30,000 5 34,000 1 4,000 Totals $1,992,000 $2,209,500 Analyzing Cost – Time Trade-Offs: Hospital Example STAGE 2 Ø Step 1. The critical path is B–D–H–J–K with 66 weeks. Ø Step 2. The cheapest activity to crash per week is now D at $2,000. Ø Step 3. Crash D by two weeks. Ø The first week of reduction in activity D saves $28,000. Ø Crashing D by a second week saves only $8,000 in indirect costs. Ø Updated path times are Path A–C–G–J–K: 64 weeks and B–D–H–J–K: 64 weeks A-I-K A-F-K Ø The net savings are $28,000 + $8,000 – 2($2,000) = $32,000. A-C-G-J-K Ø Total project costs are now $2,543,000 – $32,000 = $2,511,000. B-D-H-J-K B-E-J-K Time (wks) 33 28 64 66 40 9 2019-10-29 Analyzing Cost – Time Trade-Offs: Hospital Example STAGE 2 I 15 A 12 F 10 Start B 9 There are two critical paths K 6 C 10 G 35 D 8 H 40 Finish J 1 E 24 Analyzing Cost – Time Trade-Offs: Hospital Example STAGE 3 Step 1. The critical paths are B–D–H–J–K and A-C-G-J-K with 64 weeks Step 2. Activities eligible to be crashed: I 15 A 12 Start B 9 F 10 K 6 C 10 G 35 D 8 H 40 E 24 Finish J 1 A, B A, H $8,000 $13,000 C, B $7,600 C, H $12,600 G, B G, H $10,000 $15,000 K $4,000 10 2019-10-29 Analyzing Cost – Time Trade-Offs: Hospital Example STAGE 3 Ø Step 1. The critical paths are B-D-H-J-K and A-C-G-J-K with 64 weeks Ø Step 2. Activities eligible to be crashed: (A, B); (C, B) or to crash Activity K ü Candidates are those whose costs of crashing are less than the potential savings; $8,000 per week. Ø Step 3. We choose activity K to crash 1 week at $4,000 per week. Updated path times are: A–C–G–J–K: and B–D–H–J–K with 63 weeks Ø Net savings are $8,000 - $4,000 = $4,000 Ø Total project costs are $2,511,000 – $4,000 = $2,507,000 Analyzing Cost – Time Trade-Offs: Hospital Example I 15 STAGE 3 A 12 Start B 9 F 10 K 5 C 10 G 35 D 8 H 40 Finish J 1 E 24 11 2019-10-29 Analyzing Cost – Time Trade-Offs: Hospital Example STAGE 4 Step 1. The critical paths are B–D–H–J–K and A-C-G-J-K with 63 weeks Step 2. Activities eligible to be crashed: I 15 A 12 Start B 9 F 10 K 5 C 10 G 35 D 8 H 40 Finish J 1 A, B A, H $8,000 $13,000 C, B $7,600 C, H $12,600 G, B G, H $10,000 $15,000 E 24 Analyzing Cost – Time Trade-Offs: Hospital Example STAGE 4 Ø Step 1. The critical paths are still B-D-H-J-K and A-C-G-J-K with 63 weeks Ø Step 2. Activities eligible to be crashed: (B,C) @ $7,600 per week. Ø Step 3. Crash activities B and C by two weeks. Updated path times are A–C–G–J–K: 61 weeks and B–D–H–J–K: 61 weeks Ø The net savings are 2($8,000) – 2($7,600) = $800. Ø Total project costs are now $2,507,000 – $800 = $2,506,200. 12 2019-10-29 Analyzing Cost-Time Trade-Offs: Hospital Example Stage Crash Activity Time Redu ction Resulting Critical Path(s) Project Duration Project Direct Costs Crash Cost Added Total Indirect Costs Total Penalty Costs Total Project Costs 0 — — B-D-H-J-K 69 1,992.0 — 552.0 80.0 2,624.0 1 J 3 B-D-H-J-K 66 1,992.0 3.0 528.0 20.0 2,543.0 2 D 2 64 1,995.0 4.0 512.0 0.0 2,511.0 3 K 1 63 1,999.0 4.0 504.0 0.0 2,507.0 4 B, C 2 61 2,003.0 15.2 488.0 0.0 2,506.2 B-D-H-J-K A-C-G-J-K B-D-H-J-K A-C-G-J-K B-D-H-J-K A-C-G-J-K Resource Leveling Ø When the project is large and contains many resource over-allocations, resource leveling must be accomplished: Ø A technique in which start and finish dates are adjusted based on resource constraints with the goal of balancing demand for resources with the available supply. Ø Purpose is to create a smoother distribution of resource usage. Ø Resource leveling aims to minimize the period-by-period variations in resource loading by shifting tasks within their slack allowances. Ø Leveling is done by delaying or splitting tasks until the resources assigned to them are no longer over-allocated. 13 2019-10-29 Activity Slack Allowance S = 36 Question: How long each activity can be delayed without delaying the entire project? 12 48 I 27 15 S = LF – EF or LS – ES 63 S=0 S=2 S = 41 A 0 12 2 12 14 12 F 22 K 69 63 53 10 63 63 6 69 S=2 S=2 Start C 22 12 14 10 S=0 S=0 22 G 57 24 59 24 Finish 35 S=0 0 B 9 D 19 9 0 9 9 9 10 19 19 19 H 40 59 59 59 59 J 63 4 63 S=0 S = 26 9 E 33 35 24 59 Resource Leveling Example Ø Consider the following project. Ø Find the project completion time, all the paths from start to end, and critical path. Ø Find the number of required resources (people) in every week. Ø Suggest a resource leveling plan to smoothen the resource allocation over project schedule. Activity Immediate Duration # of resources Predecessor (Week) (People) A - 4 2 B - 4 1 C - 4 2 D A 2 5 E B 3 2 F C 2 2 G D 3 5 H G 5 3 14 2019-10-29 Resource Leveling Example (Cont.) Completion Path Time ADGH 14 BE 7 CF 6 A S t a r t H G D FI N IS H E B C F Resource Leveling Example (Cont.) D (5) G (5) H (3) A (2) E (2) B (1) F (2) C (2) Week 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Resources (people) 5 5 5 5 9 9 7 5 5 3 3 3 3 3 Over-allocated period 15 2019-10-29 Resource Leveling Example (Cont.) D (5) G (5) H (3) A (2) E (2) B (1) Activity slack F (2) C (2) Week 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Resources (people) 5 5 5 5 9 9 7 5 5 3 3 3 3 3 Over-allocated period Resource Leveling Example (Cont.) D (5) We can hire 5 workers at the beginning without laying off and hiring over time! G (5) H (3) A (2) B (1) E (2) Activity slack F (2)Activity slack C (2) Week 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Resources (people) 5 5 5 5 9 7 5 9 7 5 7 5 5 5 3 5 3 5 3 5 3 5 3 5 16 2019-10-29 Allocating Scare Resources to Several Projects Ø When the allocating scarce resources is extended to where several projects are being carried out concurrently, the size and complexity of the problem increase Ø With several projects, we can link them together with pseudoactivities Ø Pseudoactivities have duration but require no resources Ø The use of pseudoactivities allows a set of projects to be linked and dealt with as though it were a single project § The individual projects are interrelated by specifying predecessor/successor relationships § They appear to be parts of one project Multiple Projects Connected with Pseudoactivities Ø Project manager faces the problem of choosing between different outcomes that result from different priority rules Ø Must also deal with different arrangements and durations of pseudoactivities (i.e., leveling rule) 17 2019-10-29 Criteria of Priority Rules There are many measurable criteria to help select a priority rule 1. Schedule slippage § Amount project or set of projects delayed by application of a leveling rule § The PM must trade-off penalty costs or displeasure of clients against the cost of adding resources 2. Resource utilization: extent to which resources are over or underworked 3. In-process inventory: amount of unfinished work in the system Ø The minimum slack rule is probably the best overall priority rule according to research. Ø It gives the best combination of minimum project slippage, minimum resource idle-time, and minimum in-process inventory. Problems with Traditional Project Management Ø When planning for a project, estimates for task durations are required. Ø To increase the probability and high-confidence that the task completing on time we consider additional safety time beyond the work content time required to be embedded within the task duration. Ø The more safety in a task the more there is a tendency to behave in the following ways: § Not starting the task until the last moment (Student Syndrome) § Delaying (or pacing) completion of the task (Parkinson’s Law) Ø As a result, the safety which was included at the planning stage is wasted and tasks over-run. 18 2019-10-29 Goldratt’s Critical Chain Ø Critical Chain Project Management was developed by Eli Goldratt in response to many projects being dogged by poor performance manifested in § § § § Longer than expected durations Frequently missed deadlines Increased costs in excess of budget Substantially less deliverables than originally promised Ø Goldratt’s focus in the Critical Chain is on a single project with multiple demands on a scarce resource Ø The logic extends to the multiproject case without alteration Goldratt’s Critical Chain (Cont.) Ø Consider the three AOA network diagrams. Ø In scenario 1, there is only 1 path. Ø In scenario 2, completion of BCDE depends on three activities. Ø In scenario 3, there are two completely independent paths each consisting of 5 tasks. 19 2019-10-29 How Long? Ø Each task takes 10 days Ø What is the completion time for each project? § All three would have the same duration of 50 days Ø Simple project with five tasks takes the same time as complex one with 11 tasks! Part of Problem Ø Part of the problem is the assumption that the activity times are known with certainty Ø Assume all activities are normally distributed § Mean of 10 § Standard deviation of three Ø Each is simulated 200 times 20 2019-10-29 Analysis Ø This example clearly demonstrates how the commonly made assumption of known activity times in practice can lead to quite unrealistic project deadlines Ø The results would have been even more dramatic had the activities required some common resources Ø Similarly, the results would have been more dramatic and realistic had a nonsymmetrical distribution been used to model the activity times Multitasking Ø Multitasking is assigning team members to multiple projects and having them allocate their time across these projects Ø There is typically a penalty or cost associated with switching from working on one project to another 21 2019-10-29 Multitasking (Cont.) Ø Alternative Gantt Charts for Projects A and B Switching from project to project is likely to extend activity times. Eliminating such switching costs further increases the benefits associated with the Gantt chart shown in Figure (b). Resolving These Problems Ø Goldratt suggests that the key to resolving this is to schedule the start of new projects based on the availability of bottleneck resources Ø He further suggests that time buffers be created between the bottleneck resource and the resources that feed it Ø He also suggests reducing the amount of safety time added to individual tasks and then adding some fraction of the safety time reduced back into the system as safety buffer for the entire project 22 2019-10-29 The Critical Chain Ø Another limitation is the dependency between resources and tasks is often ignored Ø Using traditional approaches, A1-C1 is the critical path Ø What if A1 and A2 are not independent Ø Then path A1-C1 increases to 22 days, or path A2-B1 increases to 18 days If A1 is done first è A2-B1 will be finished in 7 + 5 + 6 = 18 If A2 is done first è A1-C1 will be finished in 5 + 7 + 10 = 22 Addressing Problem Ø Need to consider both precedence relationships and resource dependencies Ø Goldratt proposes thinking in terms of the longest chain of consecutively dependent tasks where such dependencies can arise § Referred to as critical chain Ø There are two potential sources that can delay the project § Delay in the tasks that make up the critical chain § Delay in activity feeding the critical chain that results in delay of the critical chain 23 2019-10-29 Project and Feeder Buffers Project Buffer: A project buffer is inserted at the end of the project network between the last task and the completion date. § Any delays on the longest chain of dependent tasks will consume some of the buffer but will leave the completion date unchanged and so protect the project. Project and Feeder Buffers Feeding Buffers: delays on paths of tasks feeding into the longest chain can impact the project by delaying a subsequent task on the Critical Chain. § To protect against this, feeding buffers are inserted between the last task on a feeding path and the Critical Chain. 24