project planning
DESCRIPTION
TRANSCRIPT
08/04/23 SO1 : Project Management 1
Introduction to Project Planning
Monica Farrow EM [email protected]
www.vision.hw.ac.uk
F29SO1 Software Engineering
08/04/23 SO1 : Project Management 2
Topics today
Work Breakdown Structure Gantt Charts Network Techniques Critical Path Spare time MS Project Resource planning Words of wisdom
08/04/23 SO1 : Project Management 3
Why Plan?
To predict the start or end point of the project To enable communication To highlight problems early To help manage risk
“If you don't plan to succeed, then plan to fail”
anon.
08/04/23 SO1 : Project Management 4
Work Breakdown Structure (WBS)
It is normal to get overwhelmed and confused when beginning to graps the details of even a modest sized project
WBS - A results-organised family tree, the work is split into manageable, logical packages
Make sure packages can be tested for completeness
Moving post-its around on white/black boards can be useful in early discussions.
08/04/23 SO1 : Project Management 5
Simplistic WBS
No concept of time here. WBS will often reflect the chosen SDLC/methodology Should show ALL tasks (including management ones) Tasks should not overlap
Stock Control System
Requirements Design Implement Integrate Maintain
... Build GUI Build Logic Build Database
......
08/04/23 SO1 : Project Management 6
Plans Need Tasks & Tasks Need Durations
Brainstorm tasks Subdivide tasks ‘til each is about 1 or 2 weeks
in duration If you can get down to days then great, but beware of
the need for contingencies (what’s a contingency?)
Tasks (Do not copy these! You are all different): Hand in deliverable 1 (0 days) - A MILESTONE! Develop GUI (10 days) Have ridiculously long Xmas holiday (1 day) …
08/04/23 SO1 : Project Management 7
Milestones
Periodic stages in the project where something measurable should have been achieved.
Highlight these in the plan. The achievement is usually a deliverable, such
as a report or prototype Too often -> they become millstones. Too seldom -> they become worthless. Temper both optimism and pessimism.
08/04/23 SO1 : Project Management 8
Gantt Charts
Named after Henry Gantt. Around since 1st World War
08/04/23 SO1 : Project Management 9
Gantt Charts
Each activity is an element in the WBS Can show critical path
Explained on later slides But not great at showing task precedence Easy for novices to construct and interpret
08/04/23 SO1 : Project Management 10
Dependency/Precedence Relationships
Describe what activities must be done before another activity can take place Boil kettle before adding water to cup Pick up hand set before dialling number Buy computer system before installing it.
08/04/23 SO1 : Project Management 11
Dependency/Precedence Relationships in Gantt chart
08/04/23 SO1 : Project Management 12
Critical Path
The chain of sequential activities that determines the minimum time required for the project.
Passes through activities with least float (spare time)
To examine critical paths and float, we’ll look at network techniques
08/04/23 SO1 : Project Management 13
Network Techniques
Easier to construct than Gantt charts. More difficult for novices to interpret. Often paper based during early planning
activities - easily follows from WBS. Does not rely on your knowledge about task
duration. Does rely on your logical understanding of the
order in which tasks are carried out.
08/04/23 SO1 : Project Management 14
Network Techniques
PERT - Project Evaluation and Review Technique Network based aid for planning and scheduling
related tasks in a large and complex project US Polaris 1958
Captures precedence (walls before roof) and parallel tasks (painting inside and outside – can be done together)
Activity-on-Arrow (AoA) Easier to construct on paper
Activity-on-Node (AoN) Used in many software packages (eg PERT diagrams in MS-
Project) Can be drawn manually in MS Visio
08/04/23 SO1 : Project Management 15
Network Techniques
Activity-on-Arrow (AoA)
1 3
2
4Find Pencil Make Drawing
Find Paper
1 mins 10 mins
2 mins
•Event 3 dependent on 1 & 2•Takes 1 minute to find pencil•Where is the slack here?
08/04/23 SO1 : Project Management 16
Activity-on-Node (AoN)
B depends on A A takes 21 days B starts 5 days after A is complete (-5 would indicate overlap)
Network Techniques
A21
B9
5
08/04/23 SO1 : Project Management 17
Example AoA- Build the network
T1
T3 T4
10
4
8T2
5T7 T8
2finish
F
T57
start
T65
15
C
D EA
T1 10
T2 T1 8
T3 T1 15
T4 T3 4
T5 T1 7
T6 T5 5
T7 T2,T4 5
T8 T7,T6 2
08/04/23 SO1 : Project Management 18
Calculate Critical Path – longest path
T1
T3 T4
10A
4
8T2
5T7 T8
2finish
F
T57
start
T65
For each possible path through the network, calculate the time Start – A – C – D – E – Finish = 10 + 15 + 4 + 5 2 = 36 Start – A – D – E – finish = 10 + 8 + 5 + 2 = 25 Start – A – F – E – finish = 10 + 7 + 5 + 2 = 24
Longest time required is 36 -> this path is the critical path
15
C
D E
08/04/23 SO1 : Project Management 19
T1
10 T3
15
T4
4
T7
5
T2
8
T5
7
T6
5T8
2
The equivalent AoN diagram
ACTIVITY
DURATION
08/04/23 SO1 : Project Management 20
Finding the slack (float)
The next slides show how this diagram can be useful in more complex networks to show clearly
Where the slack (free time) is Which is the critical path
First calculate the earliest possible start and finish times for each activity, by taking a Forwards Pass through each path, following the arrows:
The earliest start (top left) is previous ES plus current Duration The earliest finish (top right) is current ES + Duration The previous EF = the next ES, unless there is a junction At a junction, choose largest previous EF - the next activity
cannot start until all the pre-requisite activities have finished
08/04/23 SO1 : Project Management 21
Forward PassACTIVITY
DURATIONES EF
FLOAT
E = early L = lateS = start F = finish
T1
10 0 10 T3
1510 25
T4
425 29
T7
529 34
T2
810 18
T5
710 17
T6
517 22T8
234 36
08/04/23 SO1 : Project Management 22
Backward Pass
Next, calculate the latest start and finish times for each activity, by following each path backwards along the arrows At the final activity only, set the Latest Finish (LF)
= EF, then follow the arrows backwards The earliest start (ES) = current EF - Duration Other LFs = previous LS, unless there is a
division of paths At a division, choose smallest previous ES
08/04/23 SO1 : Project Management 23
Backward PassACTIVITY
DURATIONES EF
FLOATLS LF
E = early L = lateS = start F = finish
T1
0 10
10 0 10T3
10 25
1510 25
T4
25 29
425 29
T7
29 34
529 34
T2
21 29
810 18
T5
22 29
710 17
T6
29 34
517 22T8
34 36
234 36
08/04/23 SO1 : Project Management 24
Calculate the Slack (Float)
The slack or float is the spare time available for an activity
It is shown in the centre bottom panel It is the difference between the latest possible finish
and the earliest possible finish (LF – EF)
ACTIVITY
DURATIONES EF
FLOATLS LF
08/04/23 SO1 : Project Management 25
Calculate the Slack (Float)
E = early L = late S = start F = finish
ACTIVITY
DURATIONES EF
FLOATLS LF
T1
00 10
10 0 10T3
010 25
1510 25
T4
025 29
425 29
T7
029 34
529 34
T2
1121 29
810 18
T5
1222 29
710 17
T6
1229 34
517 22T8
034 36
234 36
08/04/23 SO1 : Project Management 26
Finding the critical path
The critical path is the one where
Float is always 0
ES = LS and EF = LF
ACTIVITY
DURATIONES EF
FLOATLS LFE = early L = late S = start F = finish
T1
00 10
10 0 10T3
010 25
1510 25
T4
025 29
425 29
T7
029 34
529 34
T2
1121 29
810 18
T5
1222 29
710 17
T6
1229 34
517 22T8
034 36
234 36
08/04/23 SO1 : Project Management 27
Finding the free floatACTIVITY
DURATIONES EF
FLOATLS LFE = early L = late S = start F = finish
T1
00 10
10 0 10
T3
010 25
1510 25
T4
025 29
425 29
T7
029 34
529 34
T2
1121 29
810 18
T5
1222 29
710 17
T6
1229 34
517 22T8
034 36
234 36
• Free float is the amount of time a task can be delayed before affecting the timing of the next task.
• It’s only applicable to those tasks immediately preceding a junction
08/04/23 SO1 : Project Management 28
Finding the total floatACTIVITY
DURATIONES EF
FLOATLS LFE = early L = late S = start F = finish
T1
00 10
10 0 10
T3
010 25
1510 25
T4
025 29
425 29
T7
029 34
529 34
T2
1121 29
810 18
T5
1222 29
710 17
T6
1229 34
517 22T8
034 36
234 36
• Total float is the spare time available when all preceding activities occur at the earliest possible times and all succeeding activities occur at the latest possible times.
• Same for all activities on an arc – could be split amongst them
08/04/23 SO1 : Project Management 29
Another example
start
C
30 3
A
10 1
B
20 2
E
52 7H
67 13
J
2
I
5
D
41 5
F
4
G
6
ACTIVITY
DURATIONES EF
FLOATLS LF
E = earlyL = lateS = startF = finish
? Critical Path? Float
08/04/23 SO1 : Project Management 30
MS-Project
A widely used tool from Microsoft to help plan projects.
Available in most XP labs. Far more functionality than you’ll need for
your project. Open a new, blank project
The column on the LHS provides excellent guidance
To see it, click on Tasks
08/04/23 SO1 : Project Management 31
MS Project – data entry
Youcreate thelinksAnd add resources
Enter startdate,tasks andduration – start andfinish times calculated
08/04/23 SO1 : Project Management 32
MS Project Gantt chart
Shows hierarchy, precedence, Resources,Milestones
08/04/23 SO1 : Project Management 33
MS Project Network chart
08/04/23 SO1 : Project Management 34
MS Project - schedule
Right click in this box and choose Schedule
Slack and late times are calculated automatically
08/04/23 SO1 : Project Management 35
Final thoughts on MS Project
All sorts of reports exist – experiment with them Use ZoomIn, ZoomOut buttons to change scale
of chart Use Gantt chart wizard to change appearance
When printing, think very hard about what is actually useful e.g. A one-page overview and then more detailed pages is
useful For Gantt charts going over 1 page, use Print
Preview : View tab and tick to print some columns on each page
08/04/23 SO1 : Project Management 36
Resource Management
Examples of resources: technicians designers computer time cash tradesmen vehicles machines
08/04/23 SO1 : Project Management 37
Problems with Resources
usually limited (finite) can’t work on everything at the same time are only available at certain times have other commitments have an associated cost can get sick, go on strike, break down, etc
08/04/23 SO1 : Project Management 38
Resource Management
The quotation here will also apply to other resources, such as hardware, software, etc.
In most cases, managers will have to settle for a less-than-ideal project team – due to budget, availability, and training issues. Sommerville, SE8
08/04/23 SO1 : Project Management 39
Scheduling & Resources
Previously we assumed that we had enough (infinite) resources to complete tasks.
Two extreme cases: Fixed project time scale and infinite resources (time
limited scheduling) Fixed resources, but project duration is flexible
(resource limited scheduling) Most projects are somewhere in-between.
08/04/23 SO1 : Project Management 40
Resource Limited Scheduling
Example Only 2 people available Each activity lasts 5 days A needs 2 staff, B & C need 1. No dependencies.
How best to organise this?
ABC
Staff[2]
Staff
Staff
M T W T F S S M T W T F S S M T W T F S S M T W T F S S M T W03 Apr '00 10 Apr '00 17 Apr '00 24 Apr '00 01 May '00
08/04/23 SO1 : Project Management 41
Time Limited Scheduling
Example The time for a Project can only last 10 days Each activity (A,B,C) lasts 5 days A needs 2 staff @ 5 days each , B & C need 1. C depends on A & B, B depends on A.
How best to organise this?
ABC
Staff[2]
Staff
Staff
M T W T F S S M T W T F S S M T W T F S S M T W T F S S M T W03 Apr '00 10 Apr '00 17 Apr '00 24 Apr '00 01 May '00
08/04/23 SO1 : Project Management 42
Time & Resource Limited Scheduling
Example A needs 2 staff, B & C need 1. Only 2 people available. Project can only last 10 days. Each activity lasts 5 days C depends on A.
How best to organise this?
08/04/23 SO1 : Project Management 43
Pragmatic Realities
All projects are unique None will run exactly to plan All involve people Project Management involves change and
decision making - people like neither! Dilbert said “Change is good. You go first!”
A structured approach & tools make things easier
Do not be a slave to your plans They should be living artefacts Change them as necessary
08/04/23 SO1 : Project Management 44
Group Project Scheduling
You are time and resource limited. Resource effort is diluted. Difficult to predict task durations in software
development – estimating needed. Therefore:
Make reasonable guesses and refine these constantly as project progresses.
Build in contingencies. Be prepared for late night heroics!
08/04/23 SO1 : Project Management 45
Answers
Time limited scheduling Project will take 15 days, can improve by adding in
more staff if available / will make a difference Resource limited scheduling
do B & C together before or after A. Shortest possible time is 10 days
• T & R limited• Do A first, then 1 each on B & C simultaneously