software project management task estimating and scheduling sequencing to estimating/scheduling gantt...
TRANSCRIPT
Software Project Management Task Estimating and Scheduling
Sequencing to Estimating/Scheduling
Gantt Charts
Resource Management
Activity Duration EstimatingAfter 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 EstimatingHow 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 RevisitedThe dates as shown here are the result of some
probabilistic estimate
Prepare Material forBusiness Management
98/29/95 9/4/95
Conduct the BusinessManagement Review
109/5/95 9/11/95
RD Approved by IS Dir,DMA Dir, Cust Sponsor
119/11/95 9/11/95
Approval to Proceed toNext Stage
129/11/95 9/11/95
RequirementsDefinition (Analysis)
18/1/95 9/11/95
Prepare for Analysis
28/1/95 8/7/95
Analyze the CurrentSystem
48/8/95 8/14/95
Develop and EvaluateAlternative Solutions
68/15/95 8/21/95
Plan the Next Stage
88/22/95 8/28/95
Reaccess ApplicationArchitecture
58/8/95 8/14/95
Outline Transaction,Security and Training
78/15/95 8/21/95
Define SystemRequirements (Business)
38/8/95 8/14/95
ITDE(0.3),ITI
ITDBA(0.3) ITDBA(0.3)
For example, Task 4 with a 6 day estimate mayhave had best, expected, worst estimates of 1, 7, 8
Gantt ChartsGantt 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 milestonetwo 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:• The buffer in your plan can be computed as the total calendar
time minus the critical path duration
Formula 2:• The buffer can be calculated as the latest date by which you
can start minus the earliest date on the calendar you can start
Slack time = available time - real time
Slack = latest start time - earliest start time
Example
Free and Total Float or Slack for Project XTask Start Finish Late Start Late Finish Free
Slack Total Slack
A Mon 8/3/98 Mon 8/3/98 Wed 8/5/98 Wed 8/5/98 0days 2days B Mon 8/3/98 Tue 8/4/98 Mon 8/3/98 Tue 8/4/98 0days 0days C Mon 8/3/98 Wed 8/5/98 Wed 8/5/98 Fri 8/7/98 0days 2days D Tue 8/4/98 Fri 8/7/98 Thu 8/6/98 Tue 8/11/98 2d 2d E Wed 8/5/98 Tue 8/11/98 Wed 8/5/98 Tue 8/11/98 0d 0d F Wed 8/5/98 Mon 8/10/98 Fri 8/14/98 Wed 8/19/98 7d 7d G Thu 8/6/98 Thu 8/13/98 Mon 8/10/98 Mon 8/17/98 0d 2d H Wed 8/12/98 Wed 8/19/98 Wed 8/12/98 Wed 8/19/98 0d 0d I Fri 8/14/98 Mon 8/17/98 Tue 8/18/98 Wed 8/19/98 2d 2d J Thu 8/20/98 Mon 8/24/98 Thu 8/20/98 Mon 8/24/98 0d 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
So what tradeoffs?• Remember the diamond!!!
– 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?
Time
Quality
Scope
CostExpectations
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 dependenciesCourse Technology, 1999
Shortening Project Schedules
Overlappedtasks
Shortenedduration
Original schedule
Course Technology, 1999
Project Resource OrganizationDepends 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)
RAMA 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
SMAnother resource planning tool
•Resources on one axis, skills on other•Skills can high level or very specific•Cells can be X’s or numeric
RAM Examples
RAM withstakeholder
Simple RAM
Skills Matrix (SM)
Resource Plan – Staffing Levels Resource Staffing Levels:Looks kinda like your EVA eh?
GANTT Chart View:per person, per task
Matrix View:
4/7 11/7 18/7 25/7 1/8 8/8 15/8 22/8 29/8 5/9 12/9 19/9
T4
T8 T11
T12
T1
T3
T9
T2
T6 T10
T7
T5
Fred
Jane
Anne
Mary
Jim
Name DEP Proj1 Proj2 Proj3 Proj4 Proj5 0% 50%
Joe Eng 50% 0% 50%
Sue Eng 50% 0% 50%
Bob Eng ? 25% 75% 100%?
Bill Eng 100% 100%
Row Ops 0%
Julie Ops 0%
Cindy Eng 33% 33% 33% 100%
Tim Eng 100% 0% 100%
Barry Ops 0%
Miles Eng 33% 33% 0% 67%
Paula Ops 0%
Peter Eng 100% 33% 133%
Total 200% 133% 83%? 83% 91% 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?