Top Banner
Project Scheduling
42

Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Dec 17, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 2: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 2

Project Scheduling (PS)

To determine the schedules to perform the various activities (tasks) required to complete the project, subject to all constraints such as the technological limits on the activities of the project, the availability of resources and budget, and the due date requirements.

Page 3: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 3

Important Questions on Time

1. If each of the activities goes according to plan, when will the project be completed ?

2. Which activities are most critical to ensure the timely completion of the project ?

3. Which activities can be delayed, if necessary, without delaying project completion, and by how much ?

4. Specifically, at what times should each activity begin and end ?

Page 4: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 4

Trade-off between Time and Money

1. At any given time during the project, what is the range of dollars that should be spent ?

2. Is it worthwhile to incur extra costs to accelerate some of the activities ?

Page 5: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 5

Main PS Approaches

When activity times are deterministic, Critical Path Method (CPM) is applied

When the time to complete a task as a random variable, Program Evaluation and Review Technique (PERT) is adopted .

Both approaches work on a project network, which graphically portrays the activities of the project and their relationships.

Linear Programming (LP) is also used when there are other constraints e.g. resource limitations.

Page 6: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 6

CPM Analysis: Network Approach

A network approach, to model the activities and their precedence relationships, and to perform scheduling analysis based on the networkActivity-on-node approach: use a node to represent an activity.

Activity-on-arrow approach: use an arc to represent an activity.

Page 7: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 7

Network Construction

A node represents an activity of the project

An arc represents the precedence relationship between activities (i.e. indicating that an activity must be finished before the “following” activity can start).

Page 8: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 8

Rules to Construct Project Network

Rule 1. Each activity is represented by one and only one node in the network.

Rule 2. As each activity is added to the network, use arcs to represent precedence: Which activities must be completed immediately

before this activity can start ? Which activities must immediately follow this activity?

Rule 3. All activities that have no predecessors should be connected to a common start node, while all activities that have no successors should have a common end node.

Page 9: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 9

Rules to construct AON networks

There should be a single start node and a single end node to identify these milestones.

All nodes, except the end node, must have at least one successor.

All nodes, except the start node, must have at least one predecessor.

No arrows should be left dangling. Every arrow must have a head and a tail.

An arrow specifies only the precedence relations; its length has no significance with respect to the time duration of either of the activities it connects.

Cycles or close-loop paths through the network are not permitted. They imply that an activity is a successor that depends on it.

Page 10: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 10

Example: Construct Project Network

Page 11: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 11

Rules to Construct Project Network

The process begins by identifying all activities that have no predecessors and joining them to a unique start node:

A

B

E

C

Page 12: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 12

Rules to Construct Project Network

Before starting activity F, activities C, E, and D must be completed. Therefore, an arc should be introduced to represent the precedence relationships of these activities:

A

B FD G End

Page 13: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 13

Example: Network Construction

A project has activities A,B,C,…, L, which have the following relationships: A, B, and C, the first activities of the project that

can start simultaneously. A and B precede D. B precedes E, F, and H. F and C precede G. E and H precede I and J. C, D, F, and J precede K. K precedes L. I, G, and L are the terminal activities of the

project.

Page 14: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 14

Example: Project Network

Page 15: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 15

Questions to be Answered by PS

1. If each of the activities goes according to plan, when is the earliest time that the project can be completed ?

2. Which tasks are the bottleneck (critical) tasks that directly affect the timely completion of the project ?

3. Which “non-critical” tasks be delayed, if necessary, without delaying project completion, and by how much ?

4. What should be the scheduled start and finish times for each activity?

…...

Page 16: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 16

Answer Approach

Determine

the earliest start time and the latest finish time

that each activity can take place to complete the project at the earliest possible time.

Page 17: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 17

Terms Used in Scheduling

Earliest Start time, ESj, of activity j is defined as the earliest time at which the activity can start, provided all previous activities were completed at their earliest possible times.

Latest Finish time, LFi, of activity i is defined as the latest time at which the activity can be completed without delaying the (earliest) completion of the project.

Page 18: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 18

Terms Used in Scheduling

Earliest Finish time, EFj, of activity j is defined as the earliest time at which the activity can finish, provided all previous activities were completed at their earliest possible times.

Page 19: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 19

Calculating early start and early finish times

A forward pass is used to determine the earliest start (ES) time and the earliest finish (EF) time for each activity:

ES(K) = max{EF(J): J is an immediate predecessor of K}

EF(K) = ES(K) + L(K), where L(K) denotes the duration of activity K.

Page 20: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 20

Example: Activities and Network

Page 21: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 21

A

B FD G n

Page 22: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 22

Example: Calculating Earliest Times

ESj = max i{ ESi + Li }--------------------------------ESA = ESB = ESC = ESD = ESE = ESF = ESG = --------------------------------

What is the earliest project completion time?

Page 23: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 23

Example:ES(K) = max{EF(J): J an immediate predecessor of K}

--------------------------------ES(A)=ES(B)=ES(E)= 0.EF(A)=5, EF(B)=3, EF(E)=7ES(C)=EF(A)=5, EF(C)=5+8=13ES(D)=max{EF(A), EF(B)} =max{5, 3}=5.EF(D)=5+7=12ES(F)=max{EF(C), EF(D), EF(E)} =max{13, 5, 7}=13EF(F)=13+4=17ES(G)=17, EF(G)=17+5=22----------------------------------------

Note: The above shows that the earliest time that the project can be finished is 22 weeks.

A

B FD G End

Page 24: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 24

Early start and early finish times: An example

Page 25: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 25

Terms Used in Scheduling

Latest Start time, Ti, of activity i is defined as the latest time at which the activity can start without delaying the (earliest) completion of the project.

Latest Finish time, LFi, of activity i is defined as the latest time at which the activity can be completed without delaying the (earliest) completion of the project.

Page 26: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 26

Calculating late finish times of activities

A backward pass is used to determine the latest start (LS) time and the latest finish (LF) time for each activity.

Let LFEnd = ESEnd (earliest project completion time) or, if there is a due date, d, for the project, and d > ESEnd,, then LFEnd can be set as d.

LF(K) = min{LS(J): J is a successor of K} LS(K) = LF(K) - L(K), where L(K) denotes the duration of activity K.

Page 27: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 27

Example:

LF(K) = min{LS(J): J is a successor of K}

------------------------------------LF(G)=EF(G)=22; LS(G)=22-5=17.LF(F)=LS(G)=17; LS(F)=17-4=13.LF(C)=LS(F)=13; LS(C)=13-8=5.LF(D)=LS(F)=13; LS(D)=13-7=6.LF(A)=min{LS(C), LS(D)} =min{5, 6}=5;LS(A)=5-5=0.LF(B)=LS(D)=6; LS(B)=6-3=3.LF(E)=LS(F)=17; LS(E)=17-7=6.-------------------------------------------

Note: If there is a due date d, then: LF(G)=max{EF(G), d}.

Page 28: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 28

Late start and late finish times: An example

Page 29: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 29

Activity Slack

Slack of an activity is defined as the difference between the latest start (finish) time and the earliest start (finish) time of the activity.

Page 30: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 30

A Critical Path

If the earliest time and the latest time for an activity is equal, the activity has zero slack. It means that this activity cannot be delayed

If all activities on a path have zero slack, it is a critical path – no activity along this path can be delayed.

Page 31: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 31

Example: Finding a Critical Path

Identify the path(s), of which all activities have zero slack.

Page 32: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 32

Example: Finding a Critical Path

For the example, the activities: A, C, F, and G have zero slack and thus the path (1 - A - C - F – G - n) is a critical path of the project. No activity along this path can be delayed.

Page 33: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 33

Use Slack to Find a Critical Path

To identify the critical path of a project, we can use the following simple method:

1. Compute the slack for each activity in the network.

2. Connect the activities that have zero slacks. The path(s) generated is a (are) critical path(s).

Page 34: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 34

Properties of Critical Paths

A critical path is a sequence of activities that establishes the earliest project completion time.

The delay of any activity on a critical path will cause a delay of the completion of the entire project.

A critical path is a longest path (w.r.t. time) through the network. The length (in time) of a critical path represents the shortest duration of the project.

Any increase in the duration of an activity on a critical path results in the same increase in the duration of the project.

Every project network has (at least) one critical path. Some networks have several critical paths, but all critical paths are of the same length.

Page 35: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 35

Managerial Use of Activity Slacks

Information about the amount of slack in each activity is very important for the project manager, as this will allow him/her to know which activity can be delayed without delaying the completion of the project.

After knowing which activities could be adjusted, he/she could adjust accordingly the budgets and resource allocations so as to make the project to stay on schedule. He/she could also determine whether he/she could reduce the resources needed to meet the project completion due date.

Page 36: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 36

Free Slack and Total Slack

1. Free slack denotes the amount of time that an activity can be delayed without delaying both the start of any succeeding activity and the completion of the project.

2. Total slack denotes the amount of time that the completion of an activity can be delayed without delaying the completion of the project.

Page 37: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 37

Calculating Total Slacks

 The total slack (TS) of an activity is calculated as the difference between its late start (or finish) and its early start (or finish) times.

TS(K) = LS(K)-ES(K), or = LF(K)-EF(K).

Note: This is equivalent to the difference between the maximum amount of time we can use to perform the activity and the duration of the activity. (Total slack: the maximum slack to delay an activity).

Page 38: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 38

Calculating Free Slacks

 The free slack (FS) of an activity is calculated as the difference between the earliest start time of its successors and its early finish time.

FS(K) = min{ES(J): J is a successor of K} - EF(K).

(Free slack: the maximum slack to delay an activity without delaying the start of the succeeding activities).  

Page 39: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 39

Slacks: An example --------------------------------------------------- Activity Total slack Free slack Start 0 0

A 0 0 B 3 2

C 0 0 D 1 1 E 6 6 F 0 0

G 0 0 End 0 0

---------------------------------------------------

Page 40: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 40

Effect on Succeeding Activities

If an activity is delayed within its free slack, no notification to its successors is required to be made.

If an activity is delayed longer than its free slack but shorter than its total slack, its successors must be informed as this will affect the slacks of the successors.

Page 41: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 41

Critical Path Method (Recap):

1. Define the project and all its significant activities.

2. Determine which activities must precede and/or follow others.

3. Draw the network connecting all the activities.

4. Assign time estimates to each activity.5. Find the critical path.6. Determine project duration, critical

activities, slack, etc.

Page 42: Project Scheduling. SEEM 35302 Project Scheduling (PS) To determine the schedules to perform the various activities (tasks) required to complete the project,

Project Scheduling SEEM 3530 42

Activity Start and Finish Times

 ESi = Earliest start time of activity i, which is defined as the earliest time that the activity can start without violating any precedence relation.

 EFi = Earliest finish time of activity i, which is defined as the earliest time that the activity can finish without violating any precedence relation.

LSi = Latest start time of activity i, which is defined as the latest time that the activity can start without delaying the completion of the project.

LFi = Latest finish time of activity i, which is defined as the latest time that the activity can finish without delaying the completion of the project.