Académique Documents
Professionnel Documents
Culture Documents
Roadmap
Project Scheduling requires A project schedule helps to have a better idea on:
Estimations for time and resources required to complete Feasibility assessment,
5 6
Source: IEEE PMBOK, 2004, pp. 123 7 Source: IEEE PMBOK, 2004, pp. 123 8
A list of all project activities with their dependencies. G System Deployment E,F
H User Documentation
I User Training H
9 10
11 12
13 14
Staff skills and responsibilities Activities, activity dependencies and risks calculated
15 16
17 18
19 20
Developed by Du Pont Chemical Company; first published in Capture the activities and their inter-relationships using a graph
1958 Arrows represent activities (this is the “activities on arrows” approach;
1 million US$ saving in first year after inception by Du Pont! there is also an “activities on nodes” approach, which is perhaps easier to
understand and use).
Primary objectives:
Nodes represent start and termination of activities
Schedule all project activities so that it can be completed as quickly as
possible, Calculate the earliest start time of each activity
Identifying those activities that, if delayed, are likely to affect the overall Calculate the latest start time of each activity
project completion time
Calculate the slack time of each node:
Critical Path: path joining the (time-)critical events
slack = latest start time – earliest start time
Critical events that are delayed may delay the completion of project.
Identify the critical path and the critical events
Critical event: an event that has zero slack
21 22
Free float: the time allowed without affecting the next activity Student planning with float:
Free float = earliest start time of next activity – latest end time of previous
activity Float Estimated Duration
Significance of slack: Deadline
The slack information provides a basis for negotiating project schedules
and is an essential tool in risk management!
23 24
F Data Migration C 3
I User Training H 4
25 26
Example: Identifying the Critical Path Example: Identifying the Critical Path
2 2
B=3 B=3
5 5
A=4 A=4
D=4 E=5 D=4 E=5
27 28
Example: Identifying the Critical Path Example: Identifying the Critical Path
Max of (4+3) {A,B} and
(5+4) {C,D}
2 2
4 B=3 4 B=3
5 5
A=4 A=4
E=5 9 E=5
D=4 D=4
1 C=5 3 6 G=2 7 1 C=5 3 6 G=2 7
0 5 0 5
F=3 F=3
29 30
Example: Identifying the Critical Path Example: Identifying the Critical Path
31 32
Example: Identifying the Critical Path Example: Identifying the Critical Path
Example: Identifying the Critical Path Example: Identifying the Critical Path
This event has to start no
later than (9-3) if event 5
This event has to start no is to start no later than 9.
2 later than (14-5) if event 6 2
4 B=3 is to start no later than
4 6 B=3
14.
5 5
A=4 A=4
9 9 E=5 9 9 E=5
D=4 D=4
1 C=5 3 6 G=2 7 1 C=5 3 6 G=2 7
0 5 14 14 16 16 0 5 14 14 16 16
F=3 F=3
35 36
Example: Identifying the Critical Path Example: Identifying the Critical Path
2 2
4 6 B=3 4 6 B=3
5 5
A=4 A=4
9 9 E=5 9 9 E=5
D=4 D=4
1 C=5 3 6 G=2 7 1 C=5 3 6 G=2 7
0 5 5 14 14 16 16 0 0 5 5 14 14 16 16
F=3 F=3
Example: Identifying the Critical Path Example: Identifying the Critical Path
2 2
4 6 B=3 4 6 B=3
2 5 2 5
A=4 A=4
9 9 E=5 9 9 E=5
D=4 0 D=4 0
1 C=5 3 6 G=2 7 1 C=5 3 6 G=2 7
0 0 5 5 14 14 16 16 0 0 5 5 14 14 16 16
F=3 F=3
0 0 0 0 0 0 0 0
Example: Identifying the Critical Path Example: Identifying the Critical Path
2 2
4 6 B=3 4 6 B=3
2 5 2 5
A=4 A=4
9 9 E=5 9 9 E=5
D=4 0 D=4 0
1 C=5 3 6 G=2 7 1 C=5 3 6 G=2 7
0 0 5 5 14 14 16 16 0 0 5 5 14 14 16 16
F=3 F=3
0 0 0 0 0 0 0 0
Example: Identifying the Critical Path Example - Activities and Dependencies (cont.)
Critical path indicates the shortest time for the completion of the project
2
B=3 Any activity falls in the critical path should not be delayed
6 6
0 5 During the project execution stage, project managers should pay more attention
A=6
9 9 to these activities
D=4 E=5
0 Any activity (whether it falls in the critical path or not) when delayed for a
1 C=4 3 6 G=2 7 period longer than the slack amount will affect the critical path
0 0 4 5 14 14 16 16 A recalculation of the Critical Path is needed
F=3
0 1 0 0
During the planning stage,
Shortening the critical path will reduce the overall project time
H=8 I=4
4 However, after the shortening of a critical path, some path that is not critical may
12 become a critical path and the original critical path may become non-critical.
8
4
45 46
It can be helpful to include 2 extra activities that take 0 time : Project Start and I 4
Project Conclusion. This helps to give a single start and end node for the
project, and helps to describe (and indeed implement) the algorithm.
47 48
ES : 0 0
G 2 G 2
0
D 4 D 4
S 0 C 5 S 0 C 5
5
F 3 J 0 F 3 J 0
0
EF : 0 0
H 8 H 8
Can always find such a
node!
I 4 8 I 4
Insert earliest start and earliest finish of start node Find unmarked nodes with arrows from, and only from, marked nodes.
and mark node as “done” Set their earliest start as the maximum of the latest finish of all the marked
preceding nodes. Set their earliest finish as the earliest start plus the task duration.
Mark nodes as done. Repeat until no unmarked nodes left.
49 50
0 0
H 8 H 8 LF : 16
8 8
12 12
LS : 16
8 I 4 8 I 4
Find unmarked nodes with arrows from, and only from, marked nodes. We now commence the “BACKWARDS PASS”. Start with the end node (Node J).
Set their earliest start as the maximum of the latest finish of all the marked Specify the Latest Finish (LF) to be the same as the Earliest Finish.
preceding nodes. Set their earliest finish as the earliest start plus the task duration. Set the Latest Start (LS) as the LF – task duration. For Node J this is equal to the LF.
Mark nodes as done. Repeat until no unmarked nodes left. Mark the node.
51 52
THIS COMPLETES THE “FORWARD PASS”
0 0 14
H 8 LF : 16 H 8 9 LF : 16
8 8
12 12
LS : 16 LS : 16
4
8 I 4 8 I 4
16 12 16
12 12
Find unmarked nodes with arrows to, and only to, marked nodes. Find unmarked nodes with arrows to, and only to, marked nodes.
Set their latest finish as the minimum of the earliest start of all the marked Set their latest finish as the minimum of the earliest start of all the marked
succeeding nodes. Set their earliest finish as the latest finish minus the task duration. succeeding nodes. Set their earliest finish as the latest finish minus the task duration.
Mark nodes as done. Repeat until no unmarked nodes left. Mark nodes as done. Repeat until no unmarked nodes left.
53 54
0 14 0 14
H 8 11 LF : 16 H 8 11 LF : 16
8 8
12 12
LS : 16 LS : 16
4 4
8 I 4 8 I 4
12 16 12 16
12 12
Find unmarked nodes with arrows to, and only to, marked nodes. The critical path contains the nodes where the ES = LS (and EF = LF) – marked in diagram.
Set their latest finish as the minimum of the earliest start of all the marked We can also work out the slack and float figures for each activity (LS – ES).
succeeding nodes. Set their earliest finish as the latest finish minus the task duration.
Mark nodes as done. Repeat until no unmarked nodes left.
55 56
B1 B2 Slack Andrew
B1 John Slack
Critical Chain Method - Example (III) Critical Chain Method - Example (IV)
Conflict resolution may lead to longer schedule! Rearranging tasks helps in identifying critical chain
61 62
65 66
Critical Chain Method It can also show the status of the activities during the execution of the project
PERT Simple and easy to use
Gantt Charts Derived once schedule has been set, following a CPM or PERT analysis
Difficult to update manually
Planning with Iterations
Not always applicable in the context of software projects!
67 68
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Act. A
Act. A
Act. B
Act. B
Act. C
Act. C
Act. D
Act. D
Act. E
Act. E
Act. F
Act. F
Act. G
Act. G
Act. H
Act. H
69 70
During execution of a project, managers may need to: What is Project Scheduling?
update the Gantt Chart to indicate the current status of the
Milestones and Deliverables
activities as the project progress
analyse any delay and determine whether the delay will
Scheduling Techniques
affect the completion of the project Critical Path Method
may need to reschedule the activities to meet the project Critical Chain Method
deadline PERT
Gantt Charts
71 72
Release planning
Prioritised feature list for each release as defined by the customer
Iteration planning
Detailed estimates and selection of features for each iteration
Once an iteration starts, requirements are frozen till end of iteration
Plan for current iteration based on feedback from previous iterations
http://en.wikipedia.org/wiki/Fair_use
73 74
75 76
77 78
79 80
83 84