30
Project Scheduling Project Scheduling Basic Approach

Project Scheduling

Embed Size (px)

DESCRIPTION

Project Scheduling. Basic Approach. Introduction. A project is a collection of tasks that must be completed in minimum time or at minimal cost. It is made up by a set of tasks or activities , some of which must be completed before others can be started. - PowerPoint PPT Presentation

Citation preview

Project SchedulingProject Scheduling

Basic Approach

• A projectproject is a collection of tasks that must be completed in minimum time or at minimal cost.

• It is made up by a set of tasks or activitiesactivities, some of which must be completed before others can be started.

• The ones that must be completed before a particular activity can be started are called predecessorspredecessors.– Immediate predecessorsImmediate predecessors are the ones that must be done

just prior to the commencement of a particular activity.

• A feasible scheduling is one that schedules the activities without violating any of the immediate predecessor scheduling constraints.

IntroductionIntroduction

Possible ObjectivesPossible Objectives

• Some objectives of project scheduling include:– Completing the project as early as possible by

determining an earliest start and finish time for each of the activities

– Determining the likelihood a project will be completed within a certain time period

– Finding a minimum cost schedule that completes the project by a certain date

– Finding a minimum time to complete a project within budget restrictions

– Investigating the results of possible delays in one or more of an activity’s completion time

– Evaluating the costs and benefits of reducing the time of performing one or more of the activities

• An activity could be:– Quite specific • e.g. install light switch in third bathroom

–Less detailed• e.g. install electrical for the house

• The degree of specificity used depends on the application and availability of data.

• Each activity has a set of immediate predecessor activities that must be completed immediately prior to starting the activity.

ActivitiesActivities

Activity Completion TimesActivity Completion Times

• Associated with each activity is an estimated completion time. These time could be:– Deterministic• The completion time is known with certainty

– Probabilistic • The completion time varies according to some

probability distribution with an estimated mean and standard deviation

– Determined by the amount spent to perform the activity.

ExampleExampleKLONE COMPUTERS, INC.

• KLONE Computers manufactures computers.

• It is about to design, manufacture, and market the Klonepalm 2000 palmbook computer.

• In broad terms, the three major tasks to perform are to:– Design and manufacture the computer– Train staff and vendor representatives on the

features and use of the computer– Advertise the computer

Activity DescriptionA Prototype model design

B Purchase of materialsManufacturingManufacturing C Manufacture of prototype model

activitiesactivities D Revision of design

E Initial production run

Activity DescriptionA Prototype model design

B Purchase of materialsManufacturingManufacturing C Manufacture of prototype model

activitiesactivities D Revision of design

E Initial production run

F Staff training

Training activitiesTraining activities G Staff input on prototype models

H Sales training

F Staff training

Training activitiesTraining activities G Staff input on prototype models

H Sales training

I Pre-production advertising

Advertising activitiesAdvertising activities campaign

J Post-redesign advertising campaign

I Pre-production advertising

Advertising activitiesAdvertising activities campaign

J Post-redesign advertising campaign

Detailed ActivitiesDetailed Activities

Precedence RelationsPrecedence RelationsActivity Immediate Predecessor's)

Startsafter

CompletionDays

A-Prototype Design NONE 90

B-Purchase Materials A-Prototype DesignStartsAfter 15

C-Manufacture Prototypes B-Purchase MaterialsStartsAfter 5

D-Design RevisionC-Manufacture Prototypes andandG-Staff Input

StartsAfter 20

E-Initial Production Run D-Design RevisionStartsAfter 21

F-Staff Training A-Prototype DesignStartsAfter 25

G-Staff InputC-Manufacture Prototypes andandF-Staff Training

StartsAfter 14

H-Sales Training D-Design RevisionStartsAfter 28

I-Pre-Production Advertising A-Prototype DesignStartsAfter 30

J-Post Redesign AdvertisingD-Design Revision andandI-Pre-Production Advertising

StartsAfter 45

The PERT/CPM Approach for The PERT/CPM Approach for Project SchedulingProject Scheduling

• PERT stands for Program Evaluation and Review Technique and CPM stands for critical path method.– Both were methods for project scheduling developed

independently in the late 1950’s.– The concepts have merged over the years so that now

we simply call the approach the PERT/CPM approach.• It uses a network representation (a set of nodes

and a set of arcs) of the project.– Nodes represent the activities and reflect their

completion times– Arcs reflect immediate predecessor relationships with

arrows• PERT/CPM is used for scheduling activities such

that the project’s completion time is minimized.

G14

C5

The PERT/CPM NetworkThe PERT/CPM Network

J45

H28

E21

A90

D20

B15

I30

F25

OBJECTIVESOBJECTIVES• Management at KLONE would like to schedule the

activities to minimize the project completion time.• Management wishes to know:

– The earliest start and finish times for each activity that will allow the project to be completed in this minimal time.

– The latest start and finish times for each activity which will not alter this minimal time.

–Which activities must adhere to rigid schedules and which activities have slack in their schedules.

Earliest Start (ES) andEarliest Start (ES) andEarliest Finish (EF) TimesEarliest Finish (EF) Times

• The ES and EF times are determined by making a forward pass through the network as follows:– For all the activities which have no immediate

predecessors: • The earliest start time (ES) = 0• The earliest finish time (EF) = the activity’s duration

– Then select a node for which EF of all its immediate predecessors has been determined. • ES = Max EF (of all its immediate predecessors) • EF = ES + Activity Duration

– Repeat this process until all nodes have been evaluated

Minimum Project Completion Timeis

The maximum EF in the project.

Earliest Start and Finish TimesEarliest Start and Finish Times

• We enter these as (ES,EF) above each node.

H28

E21

G14

J45

A90

B15

D20

I30

F25

C5

90

90)(0,

(90,

(90,

(90,105)

15

25

115)

30

120)

(105,

5

110)

(115,

14

129) (129,

20

149) (149,

(149,

21

170)

28

177)

(149,

45

194)

Earliest Project completion time = MAX(EF) = 194194

MAX(120,149)

MAX(110,115)

Latest Start (LS) andLatest Start (LS) andLatest Finish (LF) TimesLatest Finish (LF) Times

• The LS and LF times are determined by making a backward pass through the network as follows:

– For all the activities which are not predecessors for any other activity• The latest finish time (LF) = project completion time• The latest start time (LS) = LF – Activity Duration

– Select a node which is the immediate predecessor for nodes whose LS times have all been determined • LF = Min LS (all nodes for which it is a predecessor) • LS = LF - Activity Duration

– Repeat this process until all nodes have been evaluated

H28

E21

G14

J45

A90

B15

D20

I30

F25

C5

90)(0,

(90,

(90,

(90,105)

115)

120)

(105,110)

(115,129) (129,149) (149,

(149,170)

177)

(149,194)

Latest Start and Finish TimesLatest Start and Finish Times

• We enter these as (LS,LF) below each node.

90

15

25

30

5

14 20

21

28

45

194)

194)

194)(173,

(166,

(149,149)(119,

149)

MIN(173, 166, 149)

(129,129)(115,

115)

115)

(110,

(90,

110)(95,

MIN(95, 90, 119)

90)(0,

• Activity start time and completion time may be delayed by deliberate reasons as well as by unforeseen reasons.

• Some of these delays may affect the overall completion date.

• The effects of these delays can be determined by the slack timeslack time, for each activity.

Slack TimesSlack Times

Slack timeSlack time for an activity = LS-ES or LF-EF

The Critical PathThe Critical PathThe activities with 0 slack time form at least

one critical path critical path of connected activities, each of which is an immediate predecessor for another activity on the path from the beginning (time = 0) to the end (the completion time of the project).– Critical activities must be rigidly scheduled.• Any delay in a critical activity will delay the entire

project.

– The critical path is the longest in the network

Sum of the completion times of activities on a critical path=

Project completion time

Slack Time CalculationsSlack Time Calculations

• Slack time = LS - ESLSActivity ES- = SLACK

119I 90- = 29

90F 90- = 0

129D 129- = 0

0A 0- = 0

95B 90- = 5

110C 105- = 5

173E 149- = 24

115G 115- = 0

166H 149- = 17

149J 149- = 0

Critical Critical ActivitiesActivities

Critical PathCritical Path

A A F F G G D D J J

The Critical PathThe Critical Path

H28

E21

G14

J45

A90

B15

D20

I30

F25

C5

90)(0,

(90,105)

(90,115)

(90,120)

(105,110)

(115,129) (129,149)

(149,170)

(149,177)

(149,194)

194)(173,

194)(166,

194)(149,149)(119,

149)(129,129)(115,

115)(110,

115)(90,

110)(95,

90)(0,

Possible DelaysPossible Delays• There could be a delay in just one activity.– Any delay more than the slack time for the activity will

delay the entire project by the difference between the activity delay and the slack time

• There could be delays in more than one activity.– If activities are on different paths or on the same path

but separated by a critical activity, each of the delays is evaluated separately. The project delay = max (these delays – corresponding slack).

– Activities on the same path which are not separated by a critical activity share the slack. Both will have the same value for the slack and any combined delays in these activities that exceed this common slack results in a project delay equal to (total activity delay) – (common slack).

– Usually with multiple delays the model is simply re-solved!

Examples of Activity DelaysExamples of Activity Delays• Activity G is delayed 5 days

– G is on the critical path (has 0 slack) so the project will be delayed 5 days.

• Activity E is delayed 15 days– E has 24 days of slack so the project will not be delayedwill not be delayed

• Activity B is delayed 15 days– B has 5 days of slack so the project will be delayed 10 daysdelayed 10 days

• Activity E is delayed 30 days and Activity I is delayed 30 days– E and I are on different paths. E has 24 days of slack which could cause a

30-24 = 6 day delay; I has 29 days of slack which could cause 30-29 = 1 day delay. The project is delayed by the MAX(6,1) = 6 days.delayed by the MAX(6,1) = 6 days.

• Activity B is delayed 4 days and Activity E is delayed 4 days– B and E are on the same path but are separated by critical activities (G and

D). This is the same as the case above. B has 5 days slack so delaying it 4 days would not delay the project; E has 24 days of slack so a 4 day delay will not delay the project – Net effect– No delay.Net effect– No delay.

• Activity B is delayed 4 days and Activity C is delayed 4 days– B and C are on the same path with no critical activity in between. They

share the same 5 days of slack. So since both are delayed 4 days for a total of 8 days, the project is delayed 8 – 5 = 3 daysdelayed 8 – 5 = 3 days.

A Linear Programming A Linear Programming Approach to PERT/CPMApproach to PERT/CPM

• Variables– Xi = The start time of the activities for i=A, B, C, …,J– X(FIN) = Finish time of the project

• Objective function– Complete the project in minimum time.

• Constraints– For each arc a constraint states that the

start time of M must not occur before the finish time of its immediate predecessor, L.

ML

X(FIN) XE + 21

X(FIN) XH + 28

X(FIN) XJ + 45

XE XD + 20 XG XC+ 5

XH XD + 20 XG XF+ 25

XJ XD + 20 XI XA+ 90

XJ XI + 30 XF XA+ 90

XC XB+ 15

XD XG+ 14

XB XA+ 90

Minimize X(FIN)Minimize X(FIN)ST

The Linear ProgramThe Linear Program

All X’s

G

C5

F25

Example ofConstraints

START TIME FOR G

Finish time for C≥

andand

START TIME FOR G

≥Finish time for F

Start Time for C + C’s Duration

Start Time for F + F’s Duration

XG

XC + 5

XG

XF + 25

Using the PERT-CPM TemplateUsing the PERT-CPM TemplateEnter activity names.

Node are namesautomatically generated.

Enter (Constant) Activity Times

Enter precedence relations. If an activity has more than one immediate

predecessor, input one node entryfor each immediate predecessor.

Using the PERT-CPM TemplateUsing the PERT-CPM Template

It will look like nothing happened,but that’s okay.

Click the PERT OUTPUT tab.

Just click solve.The algorithm has been

pre-programmed.

Go to

SolverSolverin

ToolsTools menu

Click Solve

ReviewReview• Objectives of Project Scheduling• Precedence Relation Chart showing immediate predecessors• How to construct a PERT/CPM network• Forward Pass for finding the earliest start/finish times

(ES,EF)• Backwards Pass for finding the latest start/finish times

(LS,LF)• Calculation and analysis of slack• Finding the critical path• Linear programming formulation• Use of PERT-CPM template

ExerciseExercise

Given the following project with 5 activities. What is the project completion time?

AnswerAnswer

MEAN 31

STANDARD DEVIATION* 0

VARIANCE* 0

PROBABILITY COMPLETE BEFORE =

Acitivty Node Critical ES EF LS LF SlackA A * 5 0 5 0 5 0B B * 7 5 12 5 12 0C C * 10 12 22 12 22 0D D * 9 22 31 22 31 0E E 4 22 26 27 31 5

CRITICAL PATH ANALYSIS