RMIT Classification: Protected
BUSM 1273 - Project Management Techniques
Critical Path Method (CPM) Scheduling –
Part 1: Introduction
Dr. Frank Boukamp
http://frank.boukamp.net
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
RMIT Classification: Protected
Outline
- Network Types
- Simple CPM Calculations with only FS relationships
- CPM Calculations with variety of relationships
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 2
RMIT Classification: Protected
3
Activity Network Representations
Project Activity duration
work
item
Bar Chart/Gantt Chart
1 2 3 4 Project time
scale
Activity
i j
Activity on arrow
Activity on node Activity
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 3
RMIT Classification: Protected
4
Activity on Arrow (AOA)
Networks use arrows to represent activities while
nodes stand for events/states
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 4
RMIT Classification: Protected
5
Activity on Node (AON)
Networks use nodes to represent activities with arrows to
show precedence relationships → used for CPM
B E H
4 2 5
A C F I K
2 8 7 4 3
D G J
9 4 7
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 5
RMIT Classification: Protected
CPM – Calculation Steps – ES and EF
1. Determine the “Early Start (ES)” and “Early Finish (EF)” for each
activity
a) Done through a “”forward pass”, where you follow the network from the start to the end and
process each activity after its predecessors’ ES and EF have been identified.
b) Determine for each activity: “What’s the earliest time that the activity can start?”.
That’s the ES.
c) Then add to it the duration of that activity to determine the EF. Move to the next activity for
which all predecessor ES and EF values have been identified.
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 6
RMIT Classification: Protected
EST, EFT, LST, LFT and Float calculations
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 7
RMIT Classification: Protected
EST, EFT, LST, LFT and Float calculations
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 8
RMIT Classification: Protected
EST, EFT, LST, LFT and Float calculations
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 9
RMIT Classification: Protected
EST, EFT, LST, LFT and Float calculations
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 10
RMIT Classification: Protected
EST, EFT, LST, LFT and Float calculations
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 11
RMIT Classification: Protected
CPM – Calculation Steps – LF and LS
2. Determine the “Late Finish (LF)” and “Late Start (LS)” for each
activity.
a) Done through a “backward pass” once the “forward pass” is completed and all ES and EF
values have been determined. Starts at the end of the network and assumes that the LF for
the last node/activity is the same as the EF for that activity. Thus, the LS for that activity is also
the same as the ES of that activity.
b) Now, moving backwards through the network, determine for all predecessors:
“What’s the latest time by which that activity needs to finish in order to not extend the
project duration?”
That’s the LF.
c) Then subtract from the LF the duration of the activity to determine its LS. Move to the next
activity for which all successor LF and LS values have been identified.
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 12
RMIT Classification: Protected
EST, EFT, LST, LFT and Float calculations
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 13
RMIT Classification: Protected
EST, EFT, LST, LFT and Float calculations
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 14
RMIT Classification: Protected
EST, EFT, LST, LFT and Float calculations
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 15
RMIT Classification: Protected
EST, EFT, LST, LFT and Float calculations
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 16
RMIT Classification: Protected
EST, EFT, LST, LFT and Float calculations
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 17
RMIT Classification: Protected
CPM – Calculation Steps – The Critical Path(s)
Once all ES, EF, LS and LF values for each activity have been
identified, double check your calculations and determine the critical
path(s):
• The ES and LS values and the EF and LF values of the first/last node in your network should be
the same
• There should be a path going through your network connecting the start node with the finish node
where all activities on that path are “critical”, meaning their ES values are the same as their LS
values and their EF values are the same as their LF values
• There can be more than one critical path!
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 18
RMIT Classification: Protected
EST, EFT, LST, LFT and Float calculations
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 19
RMIT Classification: Protected
Float calculations
Total Float
• Total duration that an activity can be delayed by without increasing
project duration
• TF = LF – EF or TF = LS – ES
• TF (E) = 12 – 9 = 3
• TF (D) = 12 – 12 = 0
• Use of total float available to an activity may reduce float to
subsequent activities
• TF(C) = LF(C) - EF(C) = 10 – 7 = 3
• For each day C is delayed, float for E will decrease
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 20
RMIT Classification: Protected
Float calculations
Free Float
• Amount of time that activity can be delayed without impacting subsequent
activities
• E.g. in a network with only FS relationships:
▪ FF = min ES(subs) – EF
• Example
• FF(C) = min ES(E) – EF(C) = 7 – 7 = 0
• FF(E) = min ES(F) – EF(E) = 12 – 9 = 3
• Therefore TF(C) is not ‘free’
• Using FF(E) will have no effect on float of subsequent activities
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 21
RMIT Classification: Protected
Float calculations
Interfering Float
• Amount of TF that, when utilised, interferes with early start of subsequent
activities
• IF(I) = TF(I) – FF(I)
• Example
• IF(C) = TF(C) – FF(C) = 3 – 0 = 3
• Means 3 days of TF
• Each day of IF with activity C will ‘interfere’ with float of following
activities
Remember:
Total Float = Interfering Float + Free Float
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 22
RMIT Classification: Protected
Summary of Float Calculations
Total Float:
• Activity can be delayed
without affecting the Completion Date of a project.
• consists of
Free Float, Interfering Float or a combination of both.
Free Float:
• Activity can be delayed
without affecting Early Start of any other activity.
Interfering Float:
• Activity can be delayed without affecting the completion date
of a project – but the delay has an impact on other activities’
early start and finish dates.
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 23
RMIT Classification: Protected
Float calculations
FF(E) = min ES(F) – EF(E) = 12 – 9 = 3
TF = LF – EF
TF (E) = 12 – 9 = 3
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 24
RMIT Classification: Protected
25
CPM Network scheduling
• It determines the dates on which tasks may be started - or must be
started if the project is to stay on schedule
• It illustrates which tasks may run, or must be run, in parallel to
achieve the predetermined project completion date
• Shortcomings:
• Gantt and CPM are both time driven (project based)
• Assumes no resource constraints (hence difficulty in balancing
resources)
• Resource-constrained project models can be considered as
advanced project scheduling systems
• Potential ‘Loss of knowledge’ of short-term and weekly planning for
due to software
• Level of detail?
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Page 25
RMIT Classification: Protected
End of Part 1
Part 2 will cover CPM with Advanced AON representations.
Dr. Frank Boukamp
e-mail:
[email protected]Office hours: https://frank.boukamp.net/office-hours
This course material by Dr. Frank Boukamp is licensed under a
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.