Software Project Management Task Sequencing
Download
Report
Transcript Software Project Management Task Sequencing
Software Project Management
Task Estimating and Scheduling
Sequencing to Estimating/Scheduling
Gantt Charts
Resource Management
Activity Duration Estimating
After defining activities and determining sequence,
the next steps are estimating and mapping to a
calendar
“Bottom-up” Estimating
Estimate each activity individually and sum as you go
• Some folks add an “overhead” fudge factor
Scheduling
Map tasks onto fixed points in time
Typically represented using Gantt Charts
Course Technology, 1999
Bottom-up Estimating
How do you construct per task estimates?
Weighted average formula:
optimistic time + 4X most likely time + pessimistic time
6
Example:
Suppose you had a task you estimate at 10 days, but have some
risk associated with it?
Weighted Calculation:
8 workdays + 4 X 10 workdays + 24 workdays = 12 days
6
where 8 = optimistic time, 10 = most likely time, 24 = pessimistic time
When constructing your schedule, consider the risk
factor associated with the worst case!
Course Technology, 1999
PERT Example Revisited
The dates as shown here are the result of some
probabilistic estimate
Requirements
Definition (Analysis)
1
8/1/95
9/11/95
Prepare for Analysis
2
8/1/95
8/7/95
Define System
Requirements (Business)
3
ITDE(0.3),ITI
8/8/95
8/14/95
Analyze the Current
System
4
8/8/95
8/14/95
Reaccess Application
Architecture
5
ITDBA(0.3)
8/8/95
8/14/95
Develop and Evaluate
Alternative Solutions
6
8/15/95
8/21/95
Plan the Next Stage
8
8/22/95
Outline Transaction,
Security and Training
7
ITDBA(0.3)
8/15/95
8/21/95
8/28/95
Prepare Material for
Business Management
9
8/29/95
9/4/95
Conduct the Business
Management Review
10
9/5/95
9/11/95
RD Approved by IS Dir,
DMA Dir, Cust Sponsor
11
9/11/95
9/11/95
For example, Task 4 with a 6 day estimate may
have had best, expected, worst estimates of 1, 7, 8
Approval to Proceed to
Next Stage
12
9/11/95
9/11/95
Gantt Charts
Gantt charts
Provide a standard format for displaying project
schedule information
Lists project activities and their corresponding start
and finish dates in a calendar format
Start with your WBS and refine
Symbols include:
A black diamond: milestones or significant events on
a project with zero duration
Thick black bars: summary tasks
Lighter horizontal bars: tasks
Arrows: dependencies between tasks
Course Technology, 1999
Sample Tracking Gantt Chart
white diamond: slipped milestone
two bars: planned and actual times
The actual color and pattern may vary by tool
Course Technology, 1999
Schedule “Slack”
Slack - flexibility in your schedule
Free slack or free float is the amount of time an activity
can be delayed without delaying the early start of any
immediately following activities
Total slack or total float is the amount of time an
activity may be delayed from its early start without
delaying the planned project finish date
Formula 1:
Slack time = available time - real time
• The buffer in your plan can be computed as the total calendar
time minus the critical path duration
Formula 2:
Slack = latest start time - earliest start time
• The buffer can be calculated as the latest date by which you
can start minus the earliest date on the calendar you can start
Example
Free and Total Float or Slack for Project X
Task
Start
Finish
Late Start
Late Finish
A
B
C
D
E
F
G
H
I
J
Mon 8/3/98
Mon 8/3/98
Mon 8/3/98
Tue 8/4/98
W ed 8/5/98
W ed 8/5/98
Thu 8/6/98
W ed 8/12/98
Fri 8/14/98
Thu 8/20/98
Mon 8/3/98
Tue 8/4/98
W ed 8/5/98
Fri 8/7/98
Tue 8/11/98
Mon 8/10/98
Thu 8/13/98
W ed 8/19/98
Mon 8/17/98
Mon 8/24/98
W ed 8/5/98
Mon 8/3/98
W ed 8/5/98
Thu 8/6/98
W ed 8/5/98
Fri 8/14/98
Mon 8/10/98
W ed 8/12/98
Tue 8/18/98
Thu 8/20/98
W ed 8/5/98
Tue 8/4/98
Fri 8/7/98
Tue 8/11/98
Tue 8/11/98
W ed 8/19/98
Mon 8/17/98
W ed 8/19/98
W ed 8/19/98
Mon 8/24/98
Free
Slack
0day s
0day s
0day s
2d
0d
7d
0d
0d
2d
0d
Total
Slack
2day s
0day s
2day s
2d
0d
7d
2d
0d
2d
0d
Course Technology, 1999
Computing Early and Late Times
Forward Pass: determine early start (ES) and early
finish (EF) times for each task
Work from left to right
Adding times in each path
Rule: when several tasks converge, the ES for the
next task is the largest of preceding EF times
Backward Pass: determine the last finish (LF) and
last start (LS) times
Start at the end node
Compute the bottom pair of numbers
Subtract duration from connecting node’s earliest
start time
Example: Compute ES, EF, LS, LF
Example: Solution
Scheduling
Make Schedule Trade-offs
Knowing the critical path helps you make trade-offs
Consider all inputs to your schedule
• Estimates - You cannot violate the constraints of the PERT
– Change dependencies (F-S, S-S, etc.)
– Change estimates once given
• Resourcing
• Outsourcing
• Other constrained resources
Time
Quality
Expectations
Cost
So what tradeoffs?
• Remember the diamond!!!
–
–
–
–
Scope
Scope - can you reduce what you have to deliver (& therefore do?)
Quality - skimping on quality implies you can work “faster”
Time - can you extend the due date and open up slack?
Cost - can you invest in more resources?
Project Schedule Shortfalls
If a project is falling behind, think of the “levers”
you can pull:
Add more time
Add more people - Beware the “Mythical Man Month”!
Revise expectations
Address the critical path!
Techniques:
Shortening durations of critical tasks for adding
more resources or changing their scope
Crashing tasks by obtaining the greatest amount of
schedule compression for the least incremental cost
Fast tracking tasks by doing them in parallel or
overlapping them - implies modifying dependencies
Course Technology, 1999
Shortening Project Schedules
Original
schedule
Shortened
duration
Overlapped
tasks
Course Technology, 1999
Project Resource Organization
Depends on backgrounds & work styles of team members
Extroverts: tell their thoughts
Introverts: ask for suggestions
Intuitives: base decisions on feelings
Rationals: base decisions on facts, options
Resource Staffing
Mapping skill types to functional needs and support
Sophisticated models understand skill level, experience
Responsibility Assignment Matrix (RAM) and/or Skills Matrix (SM)
RAM
SM
A resource planning tool
Another resource planning tool
Who does What
Can be for both planning and tracking
Identify authority, accountability, responsibility
Who: can be individual, team or department
Can have totals/summary at end of row/column
•Resources on one axis, skills on other
•Skills can high level or very specific
•Cells can be X’s or numeric
RAM Examples
Simple RAM
Skills Matrix (SM)
RAM with
stakeholder
Resource Plan – Staffing Levels
90
Resource Staffing Levels:
Plan
80
Actual
Looks kinda like your EVA eh?
Projected
70
GANTT Chart View:
per person, per task
Staff Per Week
60
50
Matrix View:
40
30
20
Proj1
Proj2
Proj3
Proj4
Proj5
Name
DEP
0%
50%
Joe
Eng
0%
50%
Sue
Eng
50%
0%
50%
Bob
Eng
?
75%
100%?
Bill
Eng
Row
Ops
0%
Julie
Ops
0%
Cindy
Eng
Tim
Eng
Barry
Ops
Miles
Eng
Paula
Ops
Peter
Eng
10
0
Dec -’95
4 /7
Fred
Feb - ‘96
Apr -’96
Jun -’96
Aug -’96
Oct -’96
Dec -’96
Jan -’96
Mar -’96
May -’96
Jul -’96
Sep -’96
Nov -’96
1 1 /7
18 /7
2 5 /7
1 /8
8 /8
15 /8
2 2 /8
2 9 /8
5 /9
T4
T8
T11
T12
Jan e
T1
T3
T9
Ann e
T2
T6
Jim
Mary
T10
1 2 /9
19 /9
50%
25%
100%
100%
33%
33%
100%
33%
100%
0%
100%
0%
33%
33%
0%
67%
0%
T7
T5
Total
33%
100%
200%
133%
83%?
83%
91%
133%
108%
700%
Issues and Summary
WBS - Project and Task Scope
Task Activity Networks, Precedence Charts, PERT
Task dependencies and duration estimates
Scheduling, Gantt - Map to “real-time”
Considers all constraints on the project
May have slack to reduce risk (but at what cost?)
Resource Planning
• Pick your model (RAM or SM), pick your view
• Track – living document throughout your project!
Issues
Granularity
Resilience to change
Too much work when it falls out of date anyway?