Scheduling)
Scheduling)
Homework
Distribution of project by type
In-house, contract/for-hire, startup
Distribution by industry
Fin. Svcs., Law, Retail
Homework
Most important elements
Why, who, what, what not A little bit of when
Homework
If for real youd want additional assumptions and scope constraint The justification or cost-benefit analysis materializes in some of the cases Dont shortchange downstream activities
Integration, testing, rollout, etc.
Homework
Risks
Business risks vs. Project risks
Ex: lack of market adoption vs. inexperienced team
Formalities
Spell check. Make sure your name is on first page or footer.
Functionality
Forgotten items: user registration, help, security
Homework
Good out of scope items
Internationalization Search system
Project Considerations
Is infrastructure setup part of your project? Assumptions
What are you counting on? These can be critical to identify Resources expected: equip/people, approvals Availability of partners, connections Outline key limits:
System load: expect an maximum of 100 users
8
Estimation
Predictions are hard, especially about the future, Yogi Berra 2 Types: Lucky or Lousy?
10
11
How To Schedule
1. Identify what needs to be done
Work Breakdown Structure (WBS)
12
Not an easy answer to give right? At least not if I were are real customer on a real project How can you manage that issue?
13
Project Elements
A Project: functions, activities, tasks
15
Includes
Development, Mgmt., and project support tasks
16
WBS
Contract WBS (CWBS)
First 2 or 3 levels High-level tracking
17
Upper 3 can be used by customer for reporting (if part of RFP/RFQ) Different level can be applied to different uses
Ex: Level 1: authorizations; 2: budgets; 3: schedules
18
19
WBS Types
Process WBS
a.k.a Activity-oriented Ex: Requirements, Analysis, Design, Testing Typically used by PM
Product WBS
a.k.a. Entity-oriented Ex: Financial engine, Interface system, DB Typically used by engineering manager
Product WBS
22
Process WBS
23
24
25
WBS Types
Less frequently used alternatives
Organizational WBS
Research, Product Design, Engineering, Operations Can be useful for highly cross-functional projects
Geographical WBS
Can be useful with distributed teams NYC team, San Jose team, Off-shore team
26
27
Work Packages
Generic term for discrete tasks with definable end results Typically the leaves on the tree The one-to-two rule
Often at: 1 or 2 persons for 1 or 2 weeks
WBS
List of Activities, not Things List of items can come from many sources
SOW, Proposal, brainstorming, stakeholders, team
All WBS paths do not have to go to the same level Do not plan more detail than you can manage
29
Operations and maintenance phases are not normally in plan (considered post-project) Some models are straightened for WBS
Spiral and other iterative models Linear sequence several times
WBS Techniques
Top-Down Bottom-Up Analogy Rolling Wave
1st pass: go 1-3 levels deep Gather more requirements or data Add more detail later
Post-its on a wall
31
WBS Techniques
Top-down
Start at highest level Systematically develop increasing level of detail Best if
The problem is well understood Technology and methodology are not new This is similar to an earlier project or problem
WBS Techniques
Bottom-up
Start at lowest level tasks Aggregate into summaries and higher levels Cons
Time consuming Needs more requirements complete
Pros
Detailed
33
WBS Techniques
Analogy
Base WBS upon that of a similar project Use a template Analogy also can be estimation basis Pros
Based on past actual experience
Cons
Needs comparable project
34
WBS Techniques
Brainstorming
Generate all activities you can think of that need to be done Group them into categories
Both Top-down and Brainstorming can be used on the same WBS Remember to get the people who will be doing the work involved (buy-in matters!)
35
36
What often hurts most is whats missing Break down until you can generate accurate time & cost estimates Ensure each element corresponds to a deliverable
37
Estimations
Very difficult to do, but needed often Created, used or refined during
Strategic planning Feasibility study and/or SOW Proposals Vendor and sub-contractor evaluation Project planning (iteratively) Estimate the size of the product Estimate the effort (man-months) Estimate the schedule NOTE: Not all of these steps are always explicitly performed
39
Basic process
1) 2) 3)
Estimations
Remember, an exact estimate is an oxymoron Estimate how long will it take you to get home from class tonight
On what basis did you do that? Experience right? Likely as an average probability For most software projects there is no such average
40
Estimation
Target vs. Committed Dates
Target: Proposed by business or marketing Do not commit to this too soon! Committed: Team agrees to this After youve developed a schedule
41
Cone of Uncertainty
42
Estimation
Size:
Small projects (10-99 FPs), variance of 7% from post-requirements estimates Medium (100-999 FPs), 22% variance Large (1000-9999 FPs) 38% variance Very large (> 10K FPs) 51% variance
43
Estimation Methodologies
Top-down Bottom-up Analogy Expert Judgment Priced to Win Parametric or Algorithmic Method
Using formulas and equations
44
Top-down Estimation
Based on overall characteristics of project
Some of the others can be types of top-down (Analogy, Expert Judgment, and Algorithmic methods)
Advantages
Easy to calculate Effective early on (like initial cost estimates)
Disadvantages
Some models are questionable or may not fit Less accurate because it doesnt look at details
45
Bottom-up Estimation
Create WBS Add from the bottom-up Advantages
Works well if activities well understood
Disadvantages
Specific activities not always known More time consuming
46
Expert Judgment
Use somebody who has recent experience on a similar project You get a guesstimate Accuracy depends on their real expertise Comparable application(s) must be accurately chosen
Systematic
Estimation by Analogy
Use past project
Must be sufficiently similar (technology, type, organization) Find comparable attributes (ex: # of inputs/outputs) Can create a function
Advantages
Based on actual historical data
Disadvantages
Difficulty matching project types Prior data may have been mis-measured How to measure differences no two exactly same
48
Priced to Win
Just follow other estimates Save on doing full estimate Needs information on other estimates (or prices) Purchaser must closely watch trade-offs Priced to lose?
49
Algorithmic Measures
Lines of Code (LOC) Function points Feature points or object points Other possible
Number of bubbles on a DFD Number of of ERD entities Number of processes on a structure chart
Code-based Estimates
LOC Advantages
Commonly understood metric Permits specific comparison Actuals easily measured
LOC Disadvantages
Difficult to estimate early in cycle Counts vary by language Many costs not considered (ex: requirements) Programmers may be rewarded based on this
Can use: # defects/# LOC
52
Function Points
Software size s/b measured by number & complexity of functions it performs More methodical than LOC counts House analogy
Houses Square Feet ~= Software LOC # Bedrooms & Baths ~= Function points Former is size only, latter is size & function
Wideband Delphi
Group consensus approach Rand corp. used orig. Delphi approach to predict future technologies Present experts with a problem and response form Conduct group discussion, collect anonymous opinions, then feedback Conduct another discussion & iterate until consensus Advantages Easy, inexpensive, utilizes expertise of several people Does not require historical data Disadvantages Difficult to repeat May fail to reach consensus, reach wrong one, or all may have same bias
55
Integration effort with reused code almost as expensive as with new code
57
Effort Estimation
Now that you know the size, determine the effort needed to build it Various models: empirical, mathematical, subjective Expressed in units of duration
Man-months (or staff-months now)
58
Effort Estimation
McConnell shows schedule tables for conversion of size to effort As with parametric size estimation, these techniques perform better with historical data Again, not seen in average projects Often the size and effort estimation steps are combined (not that this is recommended, but is what often is done) Commitment-Based Scheduling is what is often done
Ask developer to commit to an estimate (his or her own)
59
COCOMO
COnstructive COst MOdel Allows for the type of application, size, and Cost Drivers Outputs in Person Months Cost drivers using High/Med/Low & include
Motivation Ability of team Application experience
Biggest weakness?
Requires input of a product size estimate in LOC
60
Estimation Issues
Quality estimations needed early but information is limited Precise estimation data available at end but not needed
Or is it? What about the next project?
Parkinsons Law: Work expands to take the time allowed Danger of feature and scope creep Be aware of double-padding: team member + manager
Estimation Guidelines
Estimate iteratively!
Process of gradual refinement Make your best estimates at each planning stage Refine estimates and adjust plans iteratively Plans and decisions can be refined in response Balance: too many revisions vs. too few
63
Or Artificial Deadlines?
Set by arbitrary authority May have some flexibility (if pushed)
64
Estimation Presentation
How you present the estimation can have huge impact Techniques
Plus-or-minus qualifiers
6 months +/-1 month
Ranges
6-8 months
Risk Quantification
+/- with added information +1 month of new tools not working as expected -2 weeks for less delay in hiring new developers
Cases
Best / Planned / Current / Worst cases
Coarse Dates
Q3 02
Confidence Factors
April 1 10% probability, July 1 50%, etc.
65
66
67
68
69
NPV Example
71
The higher the ROI, the better Many organizations have a required rate of return or minimum acceptable rate of return on investment for projects
72
Payback Analysis
Another important financial consideration is payback analysis The payback period is the amount of time it will take to recoup, in the form of net cash inflows, the net dollars invested in a project Payback occurs when the cumulative discounted benefits and costs are greater than zero Many organizations want IT projects to have a fairly short payback period
73
74
75
77
Homework
McConnell: 9, Scheduling Schwalbe: 5, Project Time Management URLs: See class web site for URLs on PERT/CPM Create a WBS for your project
78
WBS Homework
The fine print
You only need to do this down to level 2 (or 3 if your so inclined or that helps clarify some higher-level activities). Going to level 2 means means start with level 0 (a single node the name of your project), level 1, the highest level breakdown (4-7 nodes), and one level below that. You can go deeper at your discretion. As we covered in class, you can use either a process, product or hybrid approach. For most of your projects I suspect the process approach would work best at the highest level. You can use either Excel, Word, or Project. Follow the standard hierarchical numbering scheme for WBS structures. Please think this through. Youre the PM now.
79
Questions?
80