2. Credits 2
This slides are largely based on CEFRIEL’s slides for
PMI Certification and Prof. John Musser class notes on
“Principles f S ft
“P i i l of Software Project Management”
P j tM t”
Original slides are available at
http://www.projectreference.com/
htt // j t f /
Reuse and republish permission was granted
Planning and Managing Software Projects – Emanuele Della Valle
3. Today agenda 3
Session 5 Review
Microsoft Project Fundamentals
Activities Organization
Resources D fi iti
R Definition and Allocation
d All ti
Resource Leveling
Project Control
• Covered in Lesson 9 – Project Control
Planning and Managing Software Projects – Emanuele Della Valle
4. Session 5 Review 4
Scheduling Fundamentals
Scheduling Techniques
• Network Diagrams
• Bar Charts
Schedule Optimization Techniques
Mythical Man-Month
Man Month
Planning and Managing Software Projects – Emanuele Della Valle
5. Today agenda 5
Session 5 Review
Microsoft Project Fundamentals
Activities Organization
Resources D fi iti
R Definition and Allocation
d All ti
Resource Leveling
Project Progress Update
Planning and Managing Software Projects – Emanuele Della Valle
6. Introduction to Microsoft Project 6
Current version: Microsoft Project 2007
• Very similar to 2003 version
• 2010 version is expected by summer 2010
Similar characteristics to other Microsoft Office
Programs
• Word, Excel, Powerpoint
It’s a project management tool
• It is not useful if Project Manager doesn’t have a
sufficient Project Management knowledge!
60-days Trial version
http://us20.trymicrosoftoffice.com/product.aspx?sku=3745553
htt // 20 t i ft ffi / d t ? k 3745553
A Quick Reference
http://www.customguide.com/pdf/project-quick-reference-2007.pdf
Planning and Managing Software Projects – Emanuele Della Valle
7. Creating a new project 7
1. File (from menu)
2. New
Planning and Managing Software Projects – Emanuele Della Valle
8. Saving a project 8
1. File (from menu)
2. Save
• The current project will be
saved as a .mpp file
Planning and Managing Software Projects – Emanuele Della Valle
9. New Project left-side Menu 9
Planning and Managing Software Projects – Emanuele Della Valle
10. Project Templates 10
1. File
2. New
3.
3 On My Computer
4. Project Templates
5. Select a template
Planning and Managing Software Projects – Emanuele Della Valle
11. Gantt Chart View 11
1. View -> Gantt Chart (if Gantt chart is not shown)
2. Drag right the vertical slide to show all the columns
Note: by default, the tables show only some columns To add
default columns.
more columns: Right-click on a column and select insert column
Planning and Managing Software Projects – Emanuele Della Valle
12. Task Information form 12
1.
1 From the Gantt view (or the Network Diagram view)
2. Double click on a task
Planning and Managing Software Projects – Emanuele Della Valle
13. Network Diagram View 13
1. View
2. Network Diagram
Planning and Managing Software Projects – Emanuele Della Valle
14. Resource Sheet View 14
1. View
2. Resource Sheet
Planning and Managing Software Projects – Emanuele Della Valle
15. Resource Usage View 15
1.
1 View
Vi
2. Resource Usage
Planning and Managing Software Projects – Emanuele Della Valle
16. Resources Graph View 16
1. View
2. More Views
3. Resources Graph
4. Apply
Planning and Managing Software Projects – Emanuele Della Valle
17. Project Information form 17
1. Project (from menu)
2. Project Information
Il you open an old project (e.g. a template),
pay attention t the current time: you may
tt ti to th t ti
not see anything in some views
Planning and Managing Software Projects – Emanuele Della Valle
18. Microsoft Project Options 18
1. Tools (from menu)
2. Options
Planning and Managing Software Projects – Emanuele Della Valle
19. Today agenda 19
Session 5 Review
Microsoft Project Fundamentals
Activities Organization
Resources D fi iti
R Definition and Allocation
d All ti
Resource Leveling
Project Progress Update
Planning and Managing Software Projects – Emanuele Della Valle
20. Create an Empty Project 20
Planning and Managing Software Projects – Emanuele Della Valle
21. Insert Activities/Tasks 21
1. Insert the names of activities/tasks of the WBS in the Task
Name column
• “Activity” vs. “Task”: Microsoft Project adopts “Task”
Planning and Managing Software Projects – Emanuele Della Valle
22. Group Tasks in Phases 22
1. Select tasks to be grouped under the same phase (Summary Tasks)
2. Click on the right green arrow
• Multiple grouping level support
• Left green arrow means “ungroup” to previous level
Planning and Managing Software Projects – Emanuele Della Valle
23. Insert Task Durations 23
• Insert task duration in the duration column
• Finish date will be automatically updated
Alternatively
• Insert finish date
• The duration will be automatically
Th d ti ill b t ti ll
updated
Planning and Managing Software Projects – Emanuele Della Valle
24. Insert Task Dependency Relationships 24
1. Double click on a task
2. Go to the Predecessor tab
3. Click on the first empty cell in Task Name column
4. Select the dependent task from the list
5. Click on the respective cell in the Type column
6. Select the type from the list
Dependency
p y
Relationships
ID Task Name Duration Start Finish Predecess
April 2010
28 31 03 06 09 12
1 Phase 1 8 days Wed 31/03/10 Mon 12/04/10
2 Activity 1.1 5 days Wed 31/03/10 Wed 07/04/10
3 Activity 1.2 3 days Wed 07/04/10 Mon 12/04/102
4 Activity 1.3 7 days Wed 31/03/10 Fri 09/04/10
5 Phase 2 9 days Wed 31/03/10 Tue 13/04/10
6 Activity 2.1 3 days Wed 31/03/10 Mon 05/04/10
7 Activity 2.2 4 days Wed 31/03/10 Tue 06/04/10
8 Activity 2.3 9 days Wed 31/03/10 Tue 13/04/10
Planning and Managing Software Projects – Emanuele Della Valle
25. Lag & Lead Time 25
A FS + lag
B
time
A FS - lead
B
time
Planning and Managing Software Projects – Emanuele Della Valle
26. Lag & Lead Time 26
1. Double click on a task
2. Go to the Predecessor tab
3.
3 Insert the task predecessor ID
4. Select the type from the list
5. Enter the value in the Lag column
Lags (positive)
Lead (negative)
Planning and Managing Software Projects – Emanuele Della Valle
27. Lag & Lead Time 27
Predecessors and lag times can be set
directly in the Predecessor column 2 days Lag
y g
3 days Lag
Planning and Managing Software Projects – Emanuele Della Valle
28. Milestones 28
They are useful to measure if the project respect the
schedule
Milestones have duration equal to ZERO and so they
don’t influence scheduling of other tasks
When define a Milestone
• Meaningful Releases or Deliverables
• Important Events
– Example: a payment
• External Inputs
Planning and Managing Software Projects – Emanuele Della Valle
29. Milestones 29
1. Insert a new task
2. Insert the task name
3.
3 Insert a duration = 0
I d i
Planning and Managing Software Projects – Emanuele Della Valle
30. Additional Task Contraints 30
1. Double click on a task
2. Go to the “Advanced” tab
Planning and Managing Software Projects – Emanuele Della Valle
31. Critical Path 31
The specific set of sequential tasks upon which the
project completion date depends
• The sequence of tasks that determines the duration of
the project
If the Total Slack time of task is 0 then it is on the
critical path
• A delay in the ending date negatively affect the
downstream activity and the end of the total project
Planning and Managing Software Projects – Emanuele Della Valle
32. Critical Path and Slack Times 32
• To show Critical Path
1. Right Click on the white background of the Gantt chart
2. Gantt Chart Wizard
3. Click Next, Select Critical Path and Click Finish
• To show Free and Total Slack
1. Right Click on a column
g
2. Select Insert Column
3. Choose Free Slack
4. (Repeat 1-2 and then choose Total Slack)
1 2
Critical Path
ID Task Name Duration Start Finish Predeces Free Slack Total Slack
29 Mar '10 05 Apr '10 12 Apr '10 19 Apr '10
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
1 Phase 1 15 days Wed 31/03/10 Wed 21/04/10 0 days 0 days
2 Activity 1.1 5 days Wed 31/03/10 Wed 07/04/10 0 days 0 days
3 Activity 1.2 3 days Wed 07/04/10 Mon 12/04/102 0 days 0 days
4 Activity 1.3 7 days Mon 12/04/10 Wed 21/04/103 0 days 0 days
5 Phase 2 13 days Wed 31/03/10 Mon 19/04/10 2 days 2 days
6 Activity 2.1 3 days Wed 07/04/10 Mon 12/04/102 1 day 3 days
7 Activity 2.2 4 days Tue 13/04/10 Mon 19/04/106;8 2 days 2 days
8 Activity 2.3 9 days Wed 31/03/10 Tue 13/04/10 0 days 2 days
Slack Times
Planning and Managing Software Projects – Emanuele Della Valle
33. Do it yourself (1) 33
Open a template and try the different views
Start from scratch a new project
• Define tasks (about 20)
• Organize tasks
• Define durations
• Define relationships (precedences, concorrences and
lag/lead times)
• Add milestones and constraints
• Analyze the critical path and the slack times
y p
Look at a realistic example (similar to the maximum
we can expect from your homework)
http://emanueledellavalle.org/slides/P&MSP2010_06_SoftwareDevelop
mentTemplate.mpp
Planning and Managing Software Projects – Emanuele Della Valle
34. Today agenda 34
Session 5 Review
Microsoft Project Fundamentals
Activities Organization
Resources D fi iti
R Definition and Allocation
d All ti
Resource Leveling
Project Progress Update
Planning and Managing Software Projects – Emanuele Della Valle
35. Resources Definition and Allocation 35
Resources allocation involves determining which type
of resources (persons, equipment, or materiel), how
many resources will be used and when each
ill b d d h h
resources will be available to perform project activities
This
Thi process i closely coordinated with th Costs
is l l di t d ith the C t
Estimating process
The objective is optimizing resources in order to have
a continuous and consistent use of the minimum
number of resources
Three Resource Types:
• Limited availability: Work
y
• Unlimited availability: Material
• Financial: Cost
Planning and Managing Software Projects – Emanuele Della Valle
36. Resource Type
Limited availability resources: Work 36
Resources whose availability is limited
• E.g. Humans (team, partners, customers, …), pay-per-
use SW l
licenses or HW equipment
They are described by two main factors:
• Standard Cost (e.g. 50€/hour)
• Max daily allocation level (e.g. 50%)
– 100%: full availability
– between 0 and 100%: partial availability
– > 100%: there are more than one resource but they
cannot be distinguished
• (optionally) Overrate cost (e.g. 80€/hour)
(e g
Needs to be leveled to avoid over-allocation
Planning and Managing Software Projects – Emanuele Della Valle
37. Resource Type
Unlimited availability resources: Material 37
Resources that can be allocated on a task without limit
• More consume of the resource implies more cost
• E.g. CDs or DVDs necessary to distributed a SW releases
are assumed to be unlimited, as more are consumed as
more is the total cost
They are described by one main factor:
• Standard cost per unit (e.g. 1€/CD)
Does not need to be leveled
Planning and Managing Software Projects – Emanuele Della Valle
38. Resource Type
Financial Resources: Costs 38
Quantified costs associated to a specific task
• E.g.: travel costs, HW/SW purchase costs
They are described by the cost defined when the
resource is assigned to a task
Planning and Managing Software Projects – Emanuele Della Valle
39. Resources Definition 39
1.
1 View->Resource sheet
Vi R h
2. Per each row:
1. Insert Resource Name
2.
2 Select the type of resource (Work, Material, Cost)
(Work Material
3. Insert detailed data (Max units, Std. Rate, Ovt. Rate, Calendar)
4. Double click the corresponding row to open the resource information form
ID Resource Name Type Material Label Initials Max. Units Std. Rate Ovt. Rate Cost/Use Accrue At Base Calendar
1 Bob Marley Work B 100% € 300,00/hr € 350,00/hr € 0,00 Prorated Standard
2 Eros Ramazzotti Work E 100% € 100,00/hr € 200,00/hr € 0,00 Prorated Standard
3 Super Server Material S € 50,00 € 0,00 Prorated
4 Travel Cost Cost T Prorated
Planning and Managing Software Projects – Emanuele Della Valle
40. Allocation Techniques 40
Unit
• Allocation is expressed by the time of the resource
dedicated to the specific task
d d d h f k
• i.e.: Mark is allocated the 30% of his time on Task1
Work
W k
• Allocation is expressed by total time that the resources
will dedicate to a task
• i.e.: Mark will work 40 hours on Task2
Planning and Managing Software Projects – Emanuele Della Valle
41. Assign Resources to tasks (Unit %) 41
1. From the Gantt view
2. Double click on a task
3. Go to the Resources tab
4. Select resource
5. Define units
6. OK
Costs
C t are calculated automatically
l l t d t ti ll
based on the std cost defined
ID Task Name Duration Start Finish Predeces Resource Names
29 M '10
Mar 05 A '10
Apr 12 A '10
Apr 19 A '10
Apr 26 A '10
Apr
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 W T F
1 Phase 1 15 days Wed 31/03/10 Wed 21/04/10
2 Activity 1.1 5 days Wed 31/03/10 Wed 07/04/10 Bob Marley[50%] Bob Marley[50%]
3 Activity 1.2 3 days Wed 07/04/10 Mon 12/04/102 Eros Ramazzotti Eros Ram azzotti
4 Activity 1.3 7 days Mon 12/04/10 Wed 21/04/103 Super Server[2] Super Server[2]
5 Phase 2 13 days Wed 31/03/10 Mon 19/04/10
6 Activity 2.1 3 days Wed 07/04/10 Mon 12/04/102 Eros Ramazzotti Eros Ram azzotti
7 Activity 2.2 4 days Tue 13/04/10 Mon 19/04/106;8 Eros Ramazzotti[80% ];Bob Marley[30% ] Eros Ram azzotti[80%];Bob Marley[30%]
8 Activity 2.3 9 days Wed 31/03/10 Tue 13/04/10 Bob Marley[70%];Travel Cost[€ 10.000,00] Bob Marley[70%];Travel Cost[€ 10.000,00]
Planning and Managing Software Projects – Emanuele Della Valle
42. Assign Resources to tasks (Work)
Task Details in double view 42
1. Windows -> Split
2. Select second window
3. View -> More Views
>
4. Select Task Details Form and Apply
Both Units and
Work can be
specified
Planning and Managing Software Projects – Emanuele Della Valle
43. Task Types
Duration, Units and Work 43
1. Double Click on a task
2. Go to the Advanced tab
3.
3 Select Task Type
Work [t]
Work[t ]
Units[%] = *100
Duration[t ]
Units [%] Duration [t]
Planning and Managing Software Projects – Emanuele Della Valle
44. Task Types
Fixed Duration, Fixed Units, Fixed Work 44
If you revise If you revise If you revise
In a
Duration Units Work
Fixed Duration Work is Work is Units are
task recalculated recalculated recalculated
Fixed Units Work is Duration is Duration is
task recalculated recalculated recalculated
Fixed Work
Fi d W k Units
U i are Duration i
D i is Duration i
D i is
task recalculated recalculated recalculated
Cases on the diagonal are not trivial:
• Mi
Microsoft P j t recalculates Duration
ft Project l l t D ti
• If duration is fixed, Microsoft Project recalculates Work
Planning and Managing Software Projects – Emanuele Della Valle
45. Task Types
Effort Driven 45
1. Double Click on a task
2. Go to the Advanced tab
3.
3 Check or uncheck Effort
Driven
• If Effort Driven is selected (default)
• Adding or removing resources to the task does not affect the total work
associated to the task (duration and units change depending of the task
type)
• If Effort Driven is not selected
• Adding or removing resources to the task affects the total work
Planning and Managing Software Projects – Emanuele Della Valle
46. How much does each task cost? 46
1.
1 From Gantt Chart view
2. Right click on any column
3. Insert Column
4.
4 Cost
C t
1. View
2. Table
3.
3 Costs
Planning and Managing Software Projects – Emanuele Della Valle
47. How much does each resource cost? 47
1. From Resource Usage view, Right click on any column, Insert
Column and Select Cost
2. Right Click on the right panel and Select Cost
h l k h h l d l
Planning and Managing Software Projects – Emanuele Della Valle
48. Task Types
Customizing the Gantt view 48
1. Right click on the Start Column
2. Insert Column
3.
3 Select Type
4. Right click on the Start Column
5. Insert Column
6.
6 Select Effort D i
S l t Eff t Driven
Planning and Managing Software Projects – Emanuele Della Valle
49. Do it yourself (2) 49
Define resources (about 5)
• Humans, materials and costs
Allocate resources to tasks
Inspect costs
Refine the project changing duration, work, units and
effort driven
Planning and Managing Software Projects – Emanuele Della Valle
50. Today agenda 50
Session 5 Review
Microsoft Project Fundamentals
Activities Organization
Resources D fi iti
R Definition and Allocation
d All ti
Resource Leveling
Project Progress Update
Planning and Managing Software Projects – Emanuele Della Valle
51. Leveling Methods 51
What to do when resource are unrealistically over-allocated
Resource Leveling
Basically there are 2 set of not-exclusive solutions:
1. Add resources
2.
2 Delay tasks
Planning and Managing Software Projects – Emanuele Della Valle
52. Leveling Methods
1) Add resources 52
Two options:
1. Optimizing available resources
– Make under-allocated resources working to a task to
support over-allocated resources
– Pay attention to increased communication costs within that
y
task
2.
2 Adding a new resource to the project
– Pay greater attention to increased communication costs!
Planning and Managing Software Projects – Emanuele Della Valle
53. Leveling Methods
2) Delay tasks 53
Two main options:
1. Take advantages of Slacks (Free and Total)
2. Delay tasks with lesser priority
Three sub-options for each main options
1. Move a task ahead/aback to avoid overlapping
2.
2 Split a task to avoid overlapping
3. Increase a task duration to reduce unit[%]
Planning and Managing Software Projects – Emanuele Della Valle
54. Leveling Methods
2) Delay tasks: Increase duration using Slack 54
Planning and Managing Software Projects – Emanuele Della Valle
55. Leveling Methods
2) Delay tasks: Split a task to avoid overlapping 55
Activity A is divided into 2 sub-activities to avoid
overlapping
Total duration of A is increased causing a delay
Activity A Activity A
Delay
Activity B Activity B
To split a task
1. Select the blue task in the Gantt view
2. Right Click -> Split Task
3. Drag and Drop to split the task
3
Planning and Managing Software Projects – Emanuele Della Valle
56. Leveling in Microsoft Project 56
1. Tools Level Resources By default, Microsoft Project
doesn’t do automatic levelling while
you work on the project
We can explicitly ask Microsoft
Project t d l
P j t to do levelling b
lli based on
d
various options
Planning and Managing Software Projects – Emanuele Della Valle
57. Leveling in Microsoft Project 57
1. Tools Level Resources
Automatic leveling acts in
background meanwhile we add
resources to tasks
This may make you don’t
understand why tasks are re-
scheduled or split!
Planning and Managing Software Projects – Emanuele Della Valle
58. Questions? 58
Planning and Managing Software Projects – Emanuele Della Valle