Upload
lengoc
View
220
Download
0
Embed Size (px)
Citation preview
Critical Path Analysis
There are no pre-requisites for this Achievement Standard so it can be placed in any course.
No knowledge is pre-supposed.
Methods include a selection from those related to:
precedence tables
network diagrams
critical events
scheduling
float times
Critical Path Analysis (CPA)
A complex project must be well planned, especially if a number of people are involved.
CPA is used to ensure that the complete scheme is completed in the minimum time.
It is used to schedule the projects.
Any activity can be represented as a project: planning a party building a house/factory planning a conference
So what is a project?
What do the projects have in common?
Each project can be broken down into tasks. Each task takes time and uses resources. Tasks are structured
Step 1 – Precedence table
• To identify actual tasks that make up a project
• To identify the order these tasks need to be in
• To decide how long each task will take
Example: Constructing a garage
Task Duration (days)
A prepare foundations 7
B Make and position door frame 2
C Lay drains, floor base and screed 15
D Install services and fittings 8
E Erect walls 10
F Plaster ceiling 2
G Erect roof 5
H Install door and windows 8
I Fit gutters and pipes 2
J Paint outside 3
Some of these activities must be completed before others can start.
Task Duration (days)
A prepare foundations 7
B Make and position door frame 2
C Lay drains, floor base and screed 15
D Install services and fittings 8
E Erect walls 10
F Plaster ceiling 2
G Erect roof 5
H Install door and windows 8
I Fit gutters and pipes 2
J Paint outside 3
You can’t erect the roof (G) before you have erected the walls (E)
Task Duration (days)
A prepare foundations 7
B Make and position door frame 2
C Lay drains, floor base and screed 15
D Install services and fittings 8
E Erect walls 10
F Plaster ceiling 2
G Erect roof 5
H Install door and windows 8
I Fit gutters and pipes 2
J Paint outside 3
Precedence
D must follow E
Task Duration (days)
A prepare foundations 7
B Make and position door frame 2
C Lay drains, floor base and screed 15
D Install services and fittings 8 E
E Erect walls 10
F Plaster ceiling 2
G Erect roof 5
H Install door and windows 8
I Fit gutters and pipes 2
J Paint outside 3
E must follow A and B
Task Duration (days)
A prepare foundations 7
B Make and position door frame 2
C Lay drains, floor base and screed 15
D Install services and fittings 8 E
E Erect walls 10 A, B
F Plaster ceiling 2
G Erect roof 5
H Install door and windows 8
I Fit gutters and pipes 2
J Paint outside 3
F must follow D and G
Task Duration (days)
A prepare foundations 7
B Make and position door frame 2
C Lay drains, floor base and screed 15
D Install services and fittings 8 E
E Erect walls 10 A, B
F Plaster ceiling 2 D, G
G Erect roof 5
H Install door and windows 8
I Fit gutters and pipes 2
J Paint outside 3
G must follow E
Task Duration (days)
A prepare foundations 7
B Make and position door frame 2
C Lay drains, floor base and screed 15
D Install services and fittings 8 E
E Erect walls 10 A, B
F Plaster ceiling 2 D, G
G Erect roof 5 E
H Install door and windows 8
I Fit gutters and pipes 2
J Paint outside 3
H must follow G
Task Duration (days)
A prepare foundations 7
B Make and position door frame 2
C Lay drains, floor base and screed 15
D Install services and fittings 8 E
E Erect walls 10 A, B
F Plaster ceiling 2 D, G
G Erect roof 5 E
H Install door and windows 8 G
I Fit gutters and pipes 2
J Paint outside 3
I must follow C, F
Task Duration (days)
A prepare foundations 7
B Make and position door frame 2
C Lay drains, floor base and screed 15
D Install services and fittings 8 E
E Erect walls 10 A, B
F Plaster ceiling 2 D, G
G Erect roof 5 E
H Install door and windows 8 G
I Fit gutters and pipes 2 C, F
J Paint outside 3
J must follow H and I
Task Duration (days)
A prepare foundations 7
B Make and position door frame 2
C Lay drains, floor base and screed 15
D Install services and fittings 8 E
E Erect walls 10 A, B
F Plaster ceiling 2 D, G
G Erect roof 5 E
H Install door and windows 8 G
I Fit gutters and pipes 2 C, F
J Paint outside 3 I
We call this a precedence table
Task Duration (days)
Precedence
A prepare foundations 7
B Make and position door frame 2
C Lay drains, floor base and screed 15
D Install services and fittings 8 E
E Erect walls 10 A, B
F Plaster ceiling 2 D, G
G Erect roof 5 E
H Install door and windows 8 G
I Fit gutters and pipes 2 C, F
J Paint outside 3 I
• Precedence diagrams are not that useful.
• A useful visual representation of a project is a network diagram.
Sequence the most common sequences / dependencies
Task A Task B
Task A Task B
Task C
Task C
Task B
Task A
Task B depends upon Task A; B cannot start until A is finished
Task C depends upon Task A and B; C cannot start until both A and B are finished
Tasks B and C depend on Task A; neither can start until A is finished, but B and C are independent of each other
more unusual links and relationships
so far all links have been finish-start links...
Task A Task B
Task A
Task C
Task C
Task A
Task B depends upon Task A, but with a 3 day delay; B cannot start until 3 days after A is finished
The finish of Task C depends upon the finish of Task A
The start of Task C depends on the start of Task A; this is a start-to-start link; it may also incorporate a delay
3 days
Drawing a NETWORK – how do we get here?
Algorithm
Draw in the links
Task Precedence
A
B
C
D E
E A, B
F D, G
G E
H G
I C, F
J I
Draw in A, B, C on a rough diagram
STEP 1- original vertices with no arcs STEP 2 - delete all arcs incident on A, B, C and redraw as shown STEP 3 - repeat iteration
STEP 1- original vertices with no arcs STEP 2 - delete all arcs incident on E and redraw as shown STEP 3 - repeat iteration
STEP 1- original vertices with no arcs STEP 2 - delete all arcs incident on D, G and redraw as shown STEP 3 - repeat iteration
STEP 1- original vertices with no arcs STEP 2 - delete all arcs incident on F and H and redraw as shown STEP 3 - repeat iteration
STEP 1- original vertices with no arcs STEP 2 - delete all arcs incident on I and redraw as shown STEP 3 - STOP
Converting to a usable diagram
Proposed method
Now draw the network diagram using boxes
task number and/or name
duration early start time
late start time
early finish time
late finish time
float
slack
Example
Task A
7
Task B
2
Task C
15
Task E
10
Task D
8
Task G
5
Task F
2
Task H
8
Task I
2
Task J
3
Finish
Duration
Critical Path
• Find the earliest possible start for each activity, by going forwards through the network.
• Secondly, the latest possible start time for each activity is found by going backwards through the network.
• Activities which have equal earliest and latest start time are on the critical path.
Practice 1
Task 06
2
Task 01
3
Task 04
6
Task 03
3
Task 08
2
Task 02
4
Task 09
1
Task 05
3
Task 07
5
Practice 1
Task 06
2
Task 01
3 0 Task 04
6
Task 03
3
Task 08
2
Task 02
4
Task 09
1
Task 05
3
Task 07
5
Practice 1
Task 06
2
Task 01
3 3 0 Task 04
6
Task 03
3
Task 08
2
Task 02
4
Task 09
1
Task 05
3
Task 07
5
Practice 1
Task 06
2
Task 01
3 3 0 Task 04
6 3
Task 03
3
Task 08
2
Task 02
4 3
Task 09
1
Task 05
3
Task 07
5
3
Practice 1
Task 06
2
Task 01
3 3 0 Task 04
6 3 9
Task 03
3
Task 08
2
Task 02
4 3 7
Task 09
1
Task 05
3
Task 07
5
3 5
Practice 1
Task 06
2
Task 01
3 3 0 Task 04
6 3 9
Task 03
3 7
Task 08
2 5
Task 02
4 3 7
Task 09
1
Task 05
3 9 Task 07
5
3 5
Practice 1
Task 06
2
Task 01
3 3 0 Task 04
6 3 9
Task 03
3 10 7
Task 08
2 7 5
Task 02
4 3 7
Task 09
1
Task 05
3 9 12 Task 07
5
3 5
Practice 1
Task 06
2
Task 01
3 3 0 Task 04
6 3 9
Task 03
3 10 7
Task 08
2 7 5
Task 02
4 3 7
Task 09
1
Task 05
3 9 12 Task 07
5 12
3 5
Take the largest value
Practice 1
Task 06
2
Task 01
3 3 0 Task 04
6 3 9
Task 03
3 10 7
Task 08
2 7 5
Task 02
4 3 7
Task 09
1
Task 05
3 9 12 Task 07
5 12 17
3 5
Practice 1
Task 06
2
Task 01
3 3 0 Task 04
6 3 9
Task 03
3 10 7
Task 08
2 7 5
Task 02
4 3 7
Task 09
1
Task 05
3 9 12 Task 07
5 12 17
3 5
Take the largest value
Forward pass complete
Duration = 18
Task 06
2
Task 01
3 3 0
3
Task 04
6 3 9
Task 03
3 10 7
5
Task 08
2 7 5
Task 02
4 3 7
Task 09
1 18 17
Task 05
3 9 12
Task 07
5 12 17
Backward pass
Task 06
2
Task 01
3 3 0
3
Task 04
6 3 9
Task 03
3 10 7
5
Task 08
2 7 5
Task 02
4 3 7
Task 09
1 18 17
Task 05
3 9 12
Task 07
5 12 17
18
Task 06
2
Task 01
3 3 0
3
Task 04
6 3 9
Task 03
3 10 7
5
Task 08
2 7 5
Task 02
4 3 7
Task 09
1 18 17
Task 05
3 9 12
Task 07
5 12 17
18 17 0
Float
Task 06
2
Task 01
3 3 0
3
Task 04
6 3 9
Task 03
3 10 7
5
Task 08
2 7 5
Task 02
4 3 7
Task 09
1 18 17
Task 05
3 9 12
Task 07
5 12 17
18 17 0
17
17
Task 06
2
Task 01
3 3 0
3
Task 04
6 3 9
Task 03
3 10 7
5
Task 08
2 7 5
Task 02
4 3 7
Task 09
1 18 17
Task 05
3 9 12
Task 07
5 12 17
18 17 0
17
17
12
15
0
10
Task 06
2
Task 01
3 3 0
3
Task 04
6 3 9
Task 03
3 10 7
5
Task 08
2 7 5
Task 02
4 3 7
Task 09
1 18 17
Task 05
3 9 12
Task 07
5 12 17
18 17 0
17
17
12
15
0
10
12
12
9
9 0
2
15 13 10
9
9 3 0
5 2
Forward pass complete
Task 06
2
Task 01
3 3 0
3
Task 04
6 3 9
Task 03
3 10 7
5
Task 08
2 7 5
Task 02
4 3 7
Task 09
1 18 17
Task 05
3 9 12
Task 07
5 12 17
18 17 0
17
17
12
15
0
10
12
12
9
9 0
2
15 13 10
9
9 3 0
5 2
Take the smallest
Critical Path – float = 0
Task 06
2 3 5
13 15 10
Task 09
1 18 17
18 17 0
Task 07
5 12 17
17 12 0
Task 05
3 9 12
12 9 0
Task 04
6 3 9
9 3 0
Task 01
3 3 0
3 0 0
Task 08
2 7 5
17 15 10
Task 03
3 10 7
12 9 2
Task 02
4 3 7
9 5 2
Your turn
Task A
7
Task B
2
Task C
15
Task E
10
Task D
8
Task G
5
Task F
2
Task H
8
Task I
2
Task J
3
Finish
Example 1 – Forward pass
Task A
7 0
Task B
2 0
Task C
15 0
Task E
10
Task D
8
Task G
5
Task F
2
Task H
8
Task I
2
Task J
3
Finish
Example 1 – Forward pass
Task A
7 7 0
Task B
2 2 0
Task C
15 15 0
Task E
10
Task D
8
Task G
5
Task F
2
Task H
8
Task I
2
Task J
3
Finish
Example 1 – Take the largest value
Task A
7 7 0
Task B
2 2 0
Task C
15 15 0
Task E
10 7
Task D
8
Task G
5
Task F
2
Task H
8
Task I
2 ?
Task J
3
Finish
Example 1 – Take the largest value
Task A
7 7 0
Task B
2 2 0
Task C
15 15 0
Task E
10 17 7
Task D
8 17
Task G
5 17
Task F
2
Task H
8
Task I
2 ?
Task J
3
Finish
Example 1 – Take the largest value
Task A
7 7 0
Task B
2 2 0
Task C
15 15 0
Task E
10 17 7
Task D
8 25 17
Task G
5 22 17
Task F
2
Task H
8
Task I
2 ?
Task J
3
Finish
Example 1 – Take the largest value
Task A
7 7 0
Task B
2 2 0
Task C
15 15 0
Task E
10 17 7
Task D
8 25 17
Task G
5 22 17
Task F
2 25
Task H
8 22
Task I
2 ?
Task J
3
Finish
Example 1 – Minimum 32
Task A
7 7 0
Task B
2 2 0
Task C
15 15 0
Task E
10 17 7
Task D
8 25 17
Task G
5 22 17
Task F
2 27 25
Task H
8 30 22
Task I
2 29 27
Task J
3 32 29
Finish 32
Example 1 – Backward pass
Task A
7 7 0
Task B
2 2 0
Task C
15 15 0
Task E
10 17 7
Task D
8 25 17
Task G
5 22 17
Task F
2 27 25
Task H
8 30 22
Task I
2 29 27
Task J
3 32 29
Finish 32
32
Example 1 – Take lowest value
Task A
7 7 0
Task B
2 2 0
Task C
15 15 0
Task E
10 17 7
Task D
8 25 17
Task G
5 22 17
Task F
2 27 25
Task H
8 30 22
Task I
2 29 27
Task J
3 32 29
Finish 32
32
32
32
29
0
24 2
Example 1 – Take lowest value
Task A
7 7 0
Task B
2 2 0
Task C
15 15 0
Task E
10 17 7
Task D
8 25 17
Task G
5 22 17
Task F
2 27 25
Task H
8 30 22
Task I
2 29 27
Task J
3 32 29
Finish 32
32
32
32
29
0
24 2
29 27 0
Example 1 – Take lowest value
Task A
7 7 0
Task B
2 2 0
Task C
15 15 0
Task E
10 17 7
Task D
8 25 17
Task G
5 22 17
Task F
2 27 25
Task H
8 30 22
Task I
2 29 27
Task J
3 32 29
Finish 32
32
32
32
29
0
24 2
29 27 0
27 25 0
Example 1 – Take lowest value
Task A
7 7 0
Task B
2 2 0
Task C
15 15 0
Task E
10 17 7
Task D
8 25 17
Task G
5 22 17
Task F
2 27 25
Task H
8 30 22
Task I
2 29 27
Task J
3 32 29
Finish 32
32
32
32
29
0
24 2
29 27 0
27 25 0 25 17 0
24 19 2
Example 1 – Take lowest value
Task A
7 7 0
Task B
2 2 0
Task C
15 15 0
Task E
10 17 7
Task D
8 25 17
Task G
5 22 17
Task F
2 27 25
Task H
8 30 22
Task I
2 29 27
Task J
3 32 29
Finish 32
32
32
32
29
0
24 2
29 27 0
27 25 0 25 17 0
24 19 2
17 7 0
Example 1 – Take lowest value
Task A
7 7 0
Task B
2 2 0
Task C
15 15 0
Task E
10 17 7
Task D
8 25 17
Task G
5 22 17
Task F
2 27 25
Task H
8 30 22
Task I
2 29 27
Task J
3 32 29
Finish 32
32
32
32
29
0
24 2
29 27 0
27 25 0 25 17 0
24 19 2
17 7 0
27 12 12
7 0 0
7 5 5
Example 1 – Critical Path – zero float
Task A
7 7 0
Task B
2 2 0
Task C
15 15 0
Task E
10 17 7
Task D
8 25 17
Task G
5 22 17
Task F
2 27 25
Task H
8 30 22
Task I
2 29 27
Task J
3 32 29
Finish 32
32
32
32
29
0
24 2
29 27 0
27 25 0 25 17 0
24 19 2
17 7 0
27 12 12
7 0 0
7 5 5
Example 1 – Critical Path – A-E-D-F-I-J
Task A
7 7 0
Task B
2 2 0
Task C
15 15 0
Task E
10 17 7
Task D
8 25 17
Task G
5 22 17
Task F
2 27 25
Task H
8 30 22
Task I
2 29 27
Task J
3 32 29
Finish 32
32
32
32
29
0
24 2
29 27 0
27 25 0 25 17 0
24 19 2
17 7 0
27 12 12
7 0 0
7 5 5
Using the outputs
• Gantt Charts
• optimising the schedule
Gantt: Critical path in red
Gantt: Critical path in red
Scheduling: Move the critical path along the top
Now fit the other activities like a puzzle
Now fit the other activities like a puzzle
Schedule
Any delay on the critical path causes a delay in the entire project
There is a 2-day float on the non-critical path
Definitions
• Critical Path Those activities that can not over run without effecting the total length of the project, are those where the EST = LFT (Total float = 0).
• Total Float LFT of the activity- the duration- EST of the activity. This shows how much ´slack´ there is on a particular route of the network. If the total float is 0 then an activity lies on the critical path.
• Free Float EST of the next activity – Duration – EST of this activity. This shows the ´slack´ on an individual activity before it delays the start of the next activity.
• EES = Earliest early start time
• LLF = latest late finish time
Free float: The amount of time that a schedule activity can be delayed without delaying the early start date of any immediately following schedule activities.
Free Float = EESsuccessor – EF
• EES = Earliest early start time
• LLF = latest late finish time
Independent float is that portion of the total float within which an activity can be delayed for start without affecting the float of the preceding activities.
Independent Float = EESsuccessor-LLFpredecessor-duration