A Note on Project Scheduling

Similar documents
M55205-Mastering Microsoft Project 2016

University of Groningen. Systemen, planning, netwerken Bosman, Aart

Introduction to Simulation

An Introduction to Simio for Beginners

Executive Guide to Simulation for Health

Task Types. Duration, Work and Units Prepared by

BMBF Project ROBUKOM: Robust Communication Networks

PM tutor. Estimate Activity Durations Part 2. Presented by Dipo Tepede, PMP, SSBB, MBA. Empowering Excellence. Powered by POeT Solvers Limited

Lecture 10: Reinforcement Learning

Major Milestones, Team Activities, and Individual Deliverables

AN EXAMPLE OF THE GOMORY CUTTING PLANE ALGORITHM. max z = 3x 1 + 4x 2. 3x 1 x x x x N 2

The lab is designed to remind you how to work with scientific data (including dealing with uncertainty) and to review experimental design.

Georgia Tech College of Management Project Management Leadership Program Eight Day Certificate Program: October 8-11 and November 12-15, 2007

ACTL5103 Stochastic Modelling For Actuaries. Course Outline Semester 2, 2014

Len Lundstrum, Ph.D., FRM

Software Development Plan

New Venture Financing

An Estimating Method for IT Project Expected Duration Oriented to GERT

Radius STEM Readiness TM

Measurement & Analysis in the Real World

College Pricing. Ben Johnson. April 30, Abstract. Colleges in the United States price discriminate based on student characteristics

Paper Reference. Edexcel GCSE Mathematics (Linear) 1380 Paper 1 (Non-Calculator) Foundation Tier. Monday 6 June 2011 Afternoon Time: 1 hour 30 minutes

International Business BADM 455, Section 2 Spring 2008

Functional Skills Mathematics Level 2 assessment

A GENERIC SPLIT PROCESS MODEL FOR ASSET MANAGEMENT DECISION-MAKING

Reinforcement Learning by Comparing Immediate Reward

Cognitive Modeling. Tower of Hanoi: Description. Tower of Hanoi: The Task. Lecture 5: Models of Problem Solving. Frank Keller.

NUMBERS AND OPERATIONS

Virtual Teams: The Design of Architecture and Coordination for Realistic Performance and Shared Awareness

Document number: 2013/ Programs Committee 6/2014 (July) Agenda Item 42.0 Bachelor of Engineering with Honours in Software Engineering

Certified Six Sigma Professionals International Certification Courses in Six Sigma Green Belt

Seminar - Organic Computing

Ministry of Education, Republic of Palau Executive Summary

Pragmatic Use Case Writing

CHAPTER 4: REIMBURSEMENT STRATEGIES 24

Critical Care Current Fellows

GENERAL SERVICES ADMINISTRATION Federal Acquisition Service Authorized Federal Supply Schedule Price List. Contract Number: GS-00F-063CA

Creating a Test in Eduphoria! Aware

Lecture 1: Machine Learning Basics

Faculty Schedule Preference Survey Results

Introduction. Chem 110: Chemical Principles 1 Sections 40-52

Decision Analysis. Decision-Making Problem. Decision Analysis. Part 1 Decision Analysis and Decision Tables. Decision Analysis, Part 1

Commanding Officer Decision Superiority: The Role of Technology and the Decision Maker

STABILISATION AND PROCESS IMPROVEMENT IN NAB

Remainder Rules. 3. Ask students: How many carnations can you order and what size bunches do you make to take five carnations home?

Diagnostic Test. Middle School Mathematics

Create A City: An Urban Planning Exercise Students learn the process of planning a community, while reinforcing their writing and speaking skills.

Software Maintenance

Implementing a tool to Support KAOS-Beta Process Model Using EPF

Integrating simulation into the engineering curriculum: a case study

Digital Fabrication and Aunt Sarah: Enabling Quadratic Explorations via Technology. Michael L. Connell University of Houston - Downtown

Conceptual Framework: Presentation

Certified Six Sigma - Black Belt VS-1104

Mathematics process categories

Graduate Division Annual Report Key Findings

Appendix L: Online Testing Highlights and Script

Learning to Think Mathematically With the Rekenrek

Ericsson Wallet Platform (EWP) 3.0 Training Programs. Catalog of Course Descriptions

TRENDS IN. College Pricing

Pod Assignment Guide

May To print or download your own copies of this document visit Name Date Eurovision Numeracy Assignment

Livermore Valley Joint Unified School District. B or better in Algebra I, or consent of instructor

1.0 INTRODUCTION. The purpose of the Florida school district performance review is to identify ways that a designated school district can:

A Pipelined Approach for Iterative Software Process Model

On Human Computer Interaction, HCI. Dr. Saif al Zahir Electrical and Computer Engineering Department UBC

IN-STATE TUITION PETITION INSTRUCTIONS AND DEADLINES Western State Colorado University

Given a directed graph G =(N A), where N is a set of m nodes and A. destination node, implying a direction for ow to follow. Arcs have limitations

Shockwheat. Statistics 1, Activity 1

Measuring physical factors in the environment

Objectives. Chapter 2: The Representation of Knowledge. Expert Systems: Principles and Programming, Fourth Edition

The Good Judgment Project: A large scale test of different methods of combining expert predictions

On-Line Data Analytics

EECS 571 PRINCIPLES OF REAL-TIME COMPUTING Fall 10. Instructor: Kang G. Shin, 4605 CSE, ;

Measurement. Time. Teaching for mastery in primary maths

A Comparison of Annealing Techniques for Academic Course Scheduling

Citrine Informatics. The Latest from Citrine. Citrine Informatics. The data analytics platform for the physical world

OFFICE OF ENROLLMENT MANAGEMENT. Annual Report

Guidelines for Writing an Internship Report

SAP EDUCATION SAMPLE QUESTIONS: C_TPLM40_65. Questions. In the audit structure, what can link an audit and a quality notification?

A Metacognitive Approach to Support Heuristic Solution of Mathematical Problems

Life and career planning

University of Toronto

Introduction to Modeling and Simulation. Conceptual Modeling. OSMAN BALCI Professor

Series IV - Financial Management and Marketing Fiscal Year

Book Review: Build Lean: Transforming construction using Lean Thinking by Adrian Terry & Stuart Smith

Cooperative Game Theoretic Models for Decision-Making in Contexts of Library Cooperation 1

Measures of the Location of the Data

San Francisco County Weekly Wages

Guidelines for Project I Delivery and Assessment Department of Industrial and Mechanical Engineering Lebanese American University

OCR LEVEL 3 CAMBRIDGE TECHNICAL

Expert Reference Series of White Papers. Mastering Problem Management

College Pricing and Income Inequality

Strategic Management and Business Policy Globalization, Innovation, and Sustainability Fourteenth Edition

Planning with External Events

Business 712 Managerial Negotiations Fall 2011 Course Outline. Human Resources and Management Area DeGroote School of Business McMaster University

The presence of interpretable but ungrammatical sentences corresponds to mismatches between interpretive and productive parsing.

Program Change Proposal:

Infrared Paper Dryer Control Scheme

HARLOW COLLEGE FURTHER EDUCATION CORPORATION RESOURCES COMMITTEE. Minutes of the meeting held on Thursday 12 May 2016

Transcription:

July 4, 003 1. Introduction The management of large projects requires analytical tools for scheduling activities and allocating resources. This note describes a set of tools that has proven to be consistently valuable to project managers. The tools are collectively known as the Project Evaluation and Review Technique (PERT) and the Critical Path Method (CPM). PERT was developed by the U.S. Navy and its consultants for the Polaris Missile Project, while the Critical Path Method was created by DuPont and the Remington Rand Corporation for the management of large chemical plants. Applications of these tools are pervasive, from construction to software development. This note describes the basic concepts and calculations for project scheduling with PERT/CPM. These include the construction of network diagrams, the calculation of feasible project schedules, determining the effect of uncertainty on project schedules, and adjusting schedules to conform to time and resource constraints. The tools are important for planning a project and for keeping it on track once it has begun. Throughout this note we will refer to a particular project: the installation of an information system at a major commercial bank, InterTrust Bank. Once in place, the system will collect accounting entries generated by banking products such as corporate accounts and loans. The bank s present system is operated by a contractor, and once the new system is up and running it will save contracting costs of $3,000 per week. Table 1 below describes the project s activities and expected durations. The system will be developed and installed by computer programmers, systems analysts, and personnel from the accounting function. The bank has sufficient programmers and accountants on staff, but the systems analysts who mediate between the techies and the accountants are in short supply. Currently, only three systems analysts are available to the firm, and the number of analysts needed for each activity is listed in the table. The table also specifies immediate predecessors, the smallest possible list of tasks which must be completed before starting each activity. Prepared by Robert A. Shumsky, Associate Professor of Operations Management, William E. Simon Graduate School of Business Administration. Copyright 003.

immediate duration systems Description predecessors (weeks) analysts A Specify functional and user interface features - 4 B Design and code functional component A 4 C Test and debug functional component B 4 D Internal audit of functional test C 1 E Design and code graphical user interface A 6 1 F Integrate functional component and interface C,E 6 G Train accounting personnel on interface E 6 1 H Train personnel on testbed using integrated system F,G 4 Table 1: Description of InterTrust Information Systems Project Begin by assuming that the project durations listed in Table 1 are guaranteed, so that they are not subject to randomness. In Section 5 we will consider the effect of random activity times on the project.. Network Diagrams and Critical Paths The information in the table may also be represented by a network diagram in which rectangles, or nodes, signify activities. The relationships between activities are represented by arrows between the nodes. For the InterTrust project, activities B and E may begin only after activity A has ended, a relationship represented by: B A E Figure 1 All arrows to a node begin at the node s immediate predecessors, indicating that the activity cannot be started until all activities prior to that node in the network are completed. Figure displays the complete project network for InterTrust. Activity A must be completed before activities B and E are started. Activity F cannot be started until both activities C and E are completed.

B, 4 C, 4 D, A, 4 E, 6 F, 6 H, 4 END, 0 KEY Activity, Duration G, 6 Figure : Project Network for InterTrust Information System Project Since the project itself cannot be completed until all activities are complete, we have created a dummy node, END, with immediate predecessors D and H. One might also create a dummy BEGIN node if multiple activities could start the project in parallel. A project manager often begins with the simplest question: how long will the project last? Once the project network is drawn, the answer is also simple: the duration of the project is equal to the longest path from the beginning to the end of the network. Since all activities along this path must be completed, the duration of the project must be at least the length of the longest path. Since all other paths are shorter, the duration of the project must be the length of the longest path. For InterTrust, the longest path from A to END may be found easily by trying all paths (how many are there?) and choosing the longest. This path is A-B-C-F-H-END and its duration is 4+4+4+6+4 = weeks. For this relatively simple project, there were only a few paths to compare. For larger projects with thousands of activities, finding the longest paths is difficult unless a structured method is used. The method described here is one such structured method, and along the way it derives much useful information besides the length of the project..1 Earliest and Latest Start and Finish Times For each activity we will calculate the following: Quantity Abbreviation Description Earliest Start Time ES Earliest time the activity may begin after allowing preceding activities to finish Earliest Finish Time EF Earliest time the activity may finish after allowing preceding activities to finish 3

Latest Start Time LS Latest time the activity may begin without delaying project completion Latest Finish Time LF Latest time the activity may finish without delaying project completion Activity Slack SLACK Extra time an activity is allowed before it delays the project (assuming that it begins at ES). Under this definition, slack is sometimes also called total slack or total float. In a network, earliest start and finish times are found by repeatedly calculating from the beginning of the project (node A) until the end (END). Use the following equations: Earliest Start time = ES = max[ef of immediate predecessors] Earliest Finish time = EF = ES + activity duration For InterTrust, begin with activity A at week zero. The earliest finish time for A is four weeks later, and this is the earliest start times for activities B and E. The earliest finish time for B is 4 + 4 = 8 weeks, and the earliest start time for its successor, C, is 8 weeks. Figure 3 displays the results of these calculations. One must be careful with activity F since it has two predecessors. The earliest start time for F is the later of the earliest finish times of its predecessors: ES for activity F = max(ef for activity C, EF for activity E) = max(1, 10) = 1 weeks Similar calculations are completed for remaining activities until we reach END. We find that the project will take weeks. Latest start and finish times for each activity are found by working backwards, from the end of the project to the beginning: Latest Finish time = LF = min[ls of immediate successors] Latest Start time = LS = LF - activity duration For END, latest start and finish times are set equal to the earliest start and finish times since any delay to END will delay project completion. The latest finish time for activity H is the latest start time for END, weeks, and the latest start time for activity H is - 4 = 18 weeks. The latest finish time for D is also weeks, while the LF for F is the LS for H, 18 weeks. Activity C has two immediate successors, so: LF for activity C = min(ls for activity D, LS for activity F) = min(0, 1) = 1 weeks 4

These calculations are repeated until latest times for activity A are found. See Figure 3 for the results. 4 8 B, 4, 0 4 8 8 1 C, 4, 0 8 1 1 14 D,, 8 0 0 4 4 10 1 18 18 A, 4, 0 E, 6, F, 6, 0 H, 4, 0 END, 0, 0 4 6 1 1 18 18 KEY ES Time EF Time 10 16 G, 6, 1 18 Activity, Duration, Slack LS Time LF Time Figure 3: Start and Finish Times and Critical Path for InterTrust. Activity Slack, Critical Activities, and Critical Paths The activity slack for each node may be easily calculated: Activity Slack = SLACK = LS - ES = LF - EF In any network, there will be activities with zero slack. Any delay to these activities will produce a delay in the completion of the project as a whole. We call these tasks critical activities, and a path through the network made up of critical activities is called a critical path. There will always be at least one critical path, and there may be more than one. All critical paths have the same length. Not surprisingly, critical paths are the longest paths through the network and the length of a critical path is equal to the duration of the project. In Figure 3, critical activities and the critical path for InterTrust are shown in bold. For this project, the critical path is A-B-C-F-H-END. As we expected, the critical path is the longest path through the network, and its duration is equal to the duration of the project. Some activities, such as D, E, and G, have slack greater than zero. The start times of these activities may be delayed without affecting the length of the entire project. The durations of these activities may also be extended without pushing back the project completion time. However, if delays and extensions exhaust the size of the activity slack, these activities become critical activities, too. 5

3. Resource Constraints An invaluable method for shortening the duration of a project is the ability to run multiple activities in parallel. For example, the InterTrust project allows both activities B and E to run in tandem from week four to week eight. If all InterTrust activities were to occur in series, the project would last 36 weeks rather than. A Gantt chart, such as the one shown in Figure 4, displays the degree of parallelism in the project. The chart displays the activities beginning at their earliest start times, as well as the number of analysts needed for each activity. ACTIVITIES A B C D E F G H 1 1 1 # Analysts 0 4 8 1 16 0 4 TIME (IN WEEKS FROM PROJECT START) Figure 4: Gantt Chart for InterTrust with All Activities at Their Earliest Start Times However, sufficient resources must be available for activities to be completed in parallel. If all activities in the InterTrust project were to begin on their earliest start dates, then the number of systems analysts needed varies from two to four. This is shown in Figure 5, which is derived from the resource listing in the Gantt chart. Note that the period from the end of week 1 to the end of week 14 requires four programmers: one for activity D, two for F and one for G. 4 # system s analysts needed 3 1 0 4 6 8 10 1 14 16 18 0 tim e ( weeks from p roject start) Figure 5: Number of Systems Analysts Needed if all Activities Begin on the Earliest Start Dates Because only three systems analysts are available for the InterTrust project, it appears that the project violates the resource constraints. One solution to this problem is to 6

purchase more resources. However, it may be possible to delay activities so that resource constraints are satisfied. In fact, if a single activity is delayed less than its slack, the project as a whole will not be delayed. Activities along the critical path cannot be delayed, but an activity with slack may be delayed without affecting the total project length. For InterTrust, activity D has eight units of slack and it may be rescheduled to begin after 16, 17, or even 0, weeks without delaying the project. If activity D begins after week 16, only 3 systems analysts are needed (see Figure 6). 4 # systems analysts needed 3 1 0 4 6 8 10 1 14 16 18 0 time (weeks from project start) Figure 6: Number of Systems Analysts Needed if Activity D is Delayed by Six Weeks With this small project, we could find a schedule by hand which satisfied the resource constraints. Scheduling activities so that resource utilization remains as low as possible is often called smoothing the project. With larger projects and multiple resources, computer-based optimization tools are needed to find a smoothed schedule. 4. Crashing a Project to Shorten Duration For many projects there is a trade-off between project cost and project duration. When a project lags behind its schedule, extra people may be assigned to the job to speed it up. Even for an on-time project there may be opportunities to crash the project by hiring personnel or purchasing additional equipment. A manager must asses the costs and benefits of speeding up the project. Recall that InterTrust is spending $3,000 per week until its new information system is online. Suppose that there is an opportunity to hire extra programmers to work on activities B, C, D, and/or G. The available programmers have specialized skills and abilities; one programmer may be assigned to each task, and relevant data are listed in Table. Here we assume that hiring an extra programmer is an all-or-nothing decision, e.g., if we want to shorten the duration of activity B we must pay $,000 for a programmer who reduces 7

the expected activity time by 3 weeks. In other situations it may be possible to purchase crashing help by the week. To find this variable cost, we would interpolate: the weekly cost of crashing activity B would be $,000/3 weeks = $667/week. But, again, we now assume that the labor costs shown in Table are indivisible. On first glance, all four programmers would seem to be a good deal. Every week eliminated from the duration of the project will save $3,000, each programmer costs less than $3,000, and each will cut at least a week off an activity s duration. Cost of Time Estimates (weeks) Activity Extra Programmer ($ 000s) Normal Extra Programmer B 4 1 C.5 4 1 D 1 G 1 6 1 Table : Data for Crashing the InterTrust Project However, because of the dependence between activities, the benefits of the extra programmers may be limited. Typically, activities on the critical path should be crashed since these activities determine the duration of the project. But eventually, these paths are no longer critical. We are faced with the question: which programmers, if any, should be hired? One method for evaluating opportunities to crash a project is described by these steps: A Method for Crashing a Project Step 1: Assess the cost-effectiveness of crashing activities on the critical paths (it may be necessary to crash more than one activity to have an effect). If no set of crashes leads to a net gain, stop; Step : Implement the most cost-effective crash until it is no longer cost effective or the paths involved are no longer critical; Step 3: A crash in step () may create new critical paths. Revise the network and identify the new critical paths. Return to step (1). As an example, consider the InterTrust project and the data in Table : Step 1: Activities B and C are on the critical path for InterTrust. However, if either is shortened by two weeks then paths A-E-F-H-END and A-E-G-H-END become critical. Therefore, we save at most weeks by adding a programmer to either B or C, and the additional programmer for B costs less than the additional 8

programmer for C. Therefore, crashing activity B is the most cost-effective plan, saving $6,000 while spending $,000. Step : Crash activity B by reducing its duration from four weeks to one. Note that crashing B from four weeks to two would have had the same effect, but we did not have that option at a lower cost. Step 3: With activity B crashed, we have the new network shown in Figure 7. There are two new critical paths. Step 1: Activity G is the only activity on a critical path available for crashing. However, crashing activity G will not decrease the duration of the project since path A-E- F-H-END would remain critical and the project duration would not dip below 0 weeks. Therefore, we are done. 4 5 B, 1, 1 5 6 5 9 C, 4, 1 6 10 9 11 D,, 9 18 0 0 4 4 10 10 16 16 0 0 0 A, 4, 0 E, 6, 0 F, 6, 0 H, 4, 0 END, 0, 0 4 4 10 10 16 16 0 0 0 KEY ES Time EF Time 10 16 G, 6, 0 Activity, Duration, Slack 10 16 LS Time LF Time Figure 7: InterTrust with Activity 'B' Crashed by Three Weeks Note that an extra programmer for activity G seemed like a bargain: 5 weeks saved for only $1,000. However, hiring this programmer would not have shortened the duration of the project. 1 In general, crashing a single activity will not shorten the project unless that activity is on a unique critical path. If there are multiple critical paths, activities on all of them must be crashed to shorten the project duration. 1 It is possible that an extra programmer for activity G would have liberated other programmers, who would then have been shifted to activities on other critical paths. You see how complicated this can get! 9

5. Random Activity Times In the previous section, dependence between events limited the benefits of extra resources. This dependence also exacerbates the effect of randomness, so that variations in project times tend to increase the length of the total project. For InterTrust, we have assumed that activity durations are known in advance. In practice these durations will be means, medians, or some other estimate, and the true activity times will vary around these estimates. What is the effect of this variation? We have calculated that the original (non-crashed) InterTrust project will take weeks with no variation in activity times. But if activity times vary, we can expect the project to take longer than weeks even if the expected values of individual activities are equal to the numbers listed in Table 1. In fact, for any project subject to randomness, Expected project duration > Project duration calculated from expected durations of individual activities An example should make this clearer. Suppose that the duration of activity E in the InterTrust project were uncertain, and the project manager estimated that there was a 50% chance the task would take weeks and a 50% chance it would take ten weeks. Note that the expected duration is still six weeks, as listed in Table 1. Is the expected total project duration still weeks? If activity E lasts two weeks, the project remains weeks long because a reduction in the duration of a non-critical path does not affect the duration of the project (see Figure 3). If activity E lasts ten weeks, then the path A-E-F-H-END becomes critical, and the project duration is 4 weeks. The expected duration of the project is now (1/)() + (1/)(4) = 3 weeks. The expected duration has risen by one week, even though the expected durations of each individual activity remained the same. When multiple activities are subject to randomness then it is very difficult to calculate the expected duration of the project as a whole. Mathematical approximations or Monte Carlo simulation may be used to find project durations, costs, and resource utilization. However, the underlying insight is similar to the insights from The Goal and from queueing theory. 3,4 Deterministic calculations tell only part of the story; statistical fluctuations (what we have called variability) and dependent events conspire to lengthen the duration of the projects. A Monte Carlo simulation is designed to reproduce the behavior of a system that is subject to randomness. One input to the simulation is a sequence of random variables, and the simulation s response to this random input imitates the response of the real system. 3 E. M. Goldratt and J. Cox, The Goal: A Process of Ongoing Improvement, North River Press Publishing Corporation; nd Revision edition (May 199). 4 Queueing theory, also known as waiting line theory, helps us to make capacity decisions when demand and process variability cause congestion. 10