estimating projects (pmp)
TRANSCRIPT
-
8/9/2019 Estimating Projects (PMP)
1/112
Project Estimation and
scheduling Outline:
– Estimation overview
– Cocomo: concepts, process and tool.
– Detailed schedule/planning terminology and processes
– Planning ools !"# Project$
-
8/9/2019 Estimating Projects (PMP)
2/112
Estimation
%he single most important tas& o' a project: setting realistic e(pectations.
)nrealistic e(pectations *ased on
inaccurate estimates are the single largest
cause o' so'tware 'ailure.+utrell, #ha'er and #ha'er, %-uality #o'tware Project "anagement+
-
8/9/2019 Estimating Projects (PMP)
3/112
Why its important to you!
Program development o' large so'tware systems
normally e(perience 012
cost overruns and a 32 schedule slip
342 o' large projects deliver56O7869
;ey reasons5poor management and inaccurate
estimations o' development cost and schedule
8' not meeting schedules, developers o'ten pay
the price
-
8/9/2019 Estimating Projects (PMP)
4/112
he Pro*lems
Predicting so'tware cost
Predicting so'tware schedule
Controlling so'tware ris&
"anaging/trac&ing project as it progresses
-
8/9/2019 Estimating Projects (PMP)
5/112
undamental estimation
-
8/9/2019 Estimating Projects (PMP)
6/112
-
8/9/2019 Estimating Projects (PMP)
7/112
Costing and pricing
Estimates are made to discover the cost, to thedeveloper, o' producing a so'tware system.
here is not a simple relationship *etween the
development cost and the price charged to thecustomer.
@roader organisational, economic, political and
*usiness considerations in'luence the pricecharged.
-
8/9/2019 Estimating Projects (PMP)
8/112
#o'tware pricing 'actors
-
8/9/2019 Estimating Projects (PMP)
9/112
6ature o' Estimates
"an "onths !or Person "onths$, de'ined as 34man0hours o' direct0charged la*or
#chedule in months !reell0managed program
-
8/9/2019 Estimating Projects (PMP)
10/112
A Common !su*jective$
estimation models
E(pert Budgment nalogy
Par&insons law
Price to win
-
8/9/2019 Estimating Projects (PMP)
11/112
E(pert judgment
One or more e(perts in *oth so'twaredevelopment and the application domain use their
e(perience to predict so'tware costs. Processiterates until some consensus is reached.
dvantages: elatively cheap estimation method.Can *e accurate i' e(perts have direct e(perienceo' similar systems
Disadvantages: Fery inaccurate i' there are noe(perts
-
8/9/2019 Estimating Projects (PMP)
12/112
Estimation *y analogy
he cost o' a project is computed *y comparing
the project to a similar project in the same
application domain dvantages: "ay *e accurate i' project data
availa*le and people/tools the same
Disadvantages: 8mpossi*le i' no compara*le project has *een tac&led. 6eeds systematically
maintained cost data*ase
-
8/9/2019 Estimating Projects (PMP)
13/112
Par&insonGs Haw
he project costs whatever resources are
availa*le
dvantages: 6o overspend
Disadvantages: #ystem is usually un'inished
-
8/9/2019 Estimating Projects (PMP)
14/112
-
8/9/2019 Estimating Projects (PMP)
15/112
op0down and *ottom0up estimation
ny o' these approaches may *e used top0downor *ottom0up.
op0down
– #tart at the system level and assess the overallsystem 'unctionality and how this is deliveredthrough su*0systems.
@ottom0up
– #tart at the component level and estimate the e''ortre
-
8/9/2019 Estimating Projects (PMP)
16/112
op0down estimation
)sa*le without &nowledge o' the systemarchitecture and the components that might *e
part o' the system.
a&es into account costs such as integration,con'iguration management and documentation.
Can underestimate the cost o' solving di''icult
low0level technical pro*lems.
-
8/9/2019 Estimating Projects (PMP)
17/112
@ottom0up estimation
)sa*le when the architecture o' the system is&nown and components identi'ied.
his can *e an accurate method i' the system has
*een designed in detail. 8t may underestimate the costs o' system level
activities such as integration and documentation.
-
8/9/2019 Estimating Projects (PMP)
18/112
Estimation methods
Each method has strengths and wea&nesses. Estimation should *e *ased on several methods.
8' these do not return appro(imately the same
result, then you have insu''icient in'ormationavaila*le to ma&e an estimate.
#ome action should *e ta&en to 'ind out more in
order to ma&e more accurate estimates.
Pricing to win is sometimes the only applica*le
method.
-
8/9/2019 Estimating Projects (PMP)
19/112
Pricing to win
his approach may seem unethical and un0 *usinessli&e.
7owever, when detailed in'ormation is lac&ing it
may *e the only appropriate strategy. he project cost is agreed on the *asis o' an
outline proposal and the development isconstrained *y that cost.
detailed speci'ication may *e negotiated or anevolutionary approach used 'or systemdevelopment.
-
8/9/2019 Estimating Projects (PMP)
20/112
lgorithmic cost modeling
Cost is estimated as a mathematical 'unction o' product, project and process attri*utes whose
values are estimated *y project managers
he 'unction is derived 'rom a study o' historicalcosting data
"ost commonly used product attri*ute 'or cost
estimation is HOC !code siJe$ "ost models are *asically similar *ut with
di''erent attri*ute values
-
8/9/2019 Estimating Projects (PMP)
21/112
Criteria 'or a 9ood "odel
De'inedKclear what is estimated ccurate
O*jectiveKavoids su*jective 'actors
esults understanda*le Detailed
#ta*leKsecond order relationships
ight #cope
Easy to )se
CausalK'uture data not re
-
8/9/2019 Estimating Projects (PMP)
22/112
measure o' the rate at which individualengineers involved in so'tware development
produce so'tware and associated
documentation. 6ot
-
8/9/2019 Estimating Projects (PMP)
23/112
#iJe related measures *ased on some output 'romthe so'tware process. his may *e lines o'
delivered source code, o*ject code instructions,
etc. unction0related measures *ased on an estimate
o' the 'unctionality o' the delivered so'tware.
unction0points are the *est &nown o' this type o'measure.
Productivity measures
-
8/9/2019 Estimating Projects (PMP)
24/112
Estimating the siJe o' the measure !e.g. how many'unction points$.
Estimating the total num*er o' programmer
months that have elapsed. Estimating contractor productivity !e.g.
documentation team$ and incorporating this
estimate in overall estimate.
"easurement pro*lems
-
8/9/2019 Estimating Projects (PMP)
25/112
>hatGs a line o' code= – he measure was 'irst proposed when programs were typed
on cards with one line per card?
– 7ow does this correspond to statements as in Bava which can
span several lines or where there can *e several statementson one line.
>hat programs should *e counted as part o' the system=
his model assumes that there is a linear relationship
*etween system siJe and volume o' documentation. &ey thing to understand a*out early estimates is that
the uncertainty is more important than the initial line –dont see one estimate, see& justi'ia*le *ounds.
Hines o' code
-
8/9/2019 Estimating Projects (PMP)
26/112
he lower level the language, the more productive the programmer – he same 'unctionality ta&es more code to
implement in a lower0level language than in a high0level language.
he more ver*ose the programmer, the higherthe productivity
– "easures o' productivity *ased on lines o' codesuggest that programmers who write ver*ose codeare more productive than programmers who writecompact code.
Productivity comparisons
-
8/9/2019 Estimating Projects (PMP)
27/112
#ystem development times
-
8/9/2019 Estimating Projects (PMP)
28/112
Empirical Model (COCOMO)
Provide computational means 'or deriving #/> costestimates as 'unctions o' varia*les !major cost drivers$
unctions used contain constants derived 'rom
statistical analysis o' data 'rom past projects: – can only *e used i' data 'rom past projects is availa*le
– must *e calibrated to re'lect local environment
– relies on initial siJe and cost 'actor estimates which
themselves are
-
8/9/2019 Estimating Projects (PMP)
29/112
COCOMO
COCO"O !CO 6#)C8FE CO# "ODEH$
0irst pu*lished *y Dr. @arry @oehm, 3LM3
8nteractive cost estimation so'tware pac&age thatmodels the cost, e''ort and schedule 'or a new
so'tware development activity. – Can *e used on new systems or upgrades
Derived 'rom statistical regression o' data 'rom a
*ase o' N1 past projects ! 0 43, D#8s$
-
8/9/2019 Estimating Projects (PMP)
30/112
>here to ind CoCo"o
http://sunset.usc.ede Or do a 9oogle search on @arry @oehm.
-
8/9/2019 Estimating Projects (PMP)
31/112
Productivity Hevels
ends to *e constant 'or a given programmingshop developing a speci'ic product.
3 #HOC/"" 'or li'e0critical code
1 #HOC/"" 'or )# 9overnment
-
8/9/2019 Estimating Projects (PMP)
32/112
6ominal Project Pro'iles
#iJe #HOC
M#HOC
1#HOC
3M#HOC
"" 4 3 L3 1L
#chedule"onths
4 M 3A A
#ta'' 3.3 . N.4 3N
#HOC/""
A 1N 14 1
-
8/9/2019 Estimating Projects (PMP)
33/112
8nput Data
Delivered ; source lines o' code!;#HOC$ Farious scale 'actors:
– E(perience
– Process maturity
– e
-
8/9/2019 Estimating Projects (PMP)
34/112
COCOMO
)ses @asic E''ort E
-
8/9/2019 Estimating Projects (PMP)
35/112
COCOMO Mode & Model
hree development environments !modes$ – Organic "ode
– #emidetached "ode
– Em*edded "ode
hree increasingly comple( models
– @asic "odel – 8ntermediate "odel
– Detailed "odel
-
8/9/2019 Estimating Projects (PMP)
36/112
COCOMO Modes
Organic "ode – Developed in 'amiliar, sta*le environment
– Product similar to previously developed product
– T4, D#8s !e(: accounting system$
#emidetached "ode – somewhere *etween Organic and Em*edded
Em*edded "ode
– new product re
-
8/9/2019 Estimating Projects (PMP)
37/112
COCOMO Models
@asic "odel – )sed 'or early rough, estimates o' project cost, per'ormance,
and schedule
– ccuracy: within a 'actor o' o' actuals N2 o' time
8ntermediate "odel – )ses E''ort djustment actor !E$ 'm 34 cost drivers
– Doesnt account 'or 3 0 2 o' cost !trng, maint, D, etc$
– ccuracy: within 2 o' actuals NM2 o' time
Detailed "odel – )ses di''erent E''ort "ultipliers 'or each phase o' project
!every*ody uses intermediate model$
B i M d l
-
8/9/2019 Estimating Projects (PMP)
38/112
Basic Model
Effort Equation (COCOMO 8)
E''ortQ!siJe$e(ponent
– is a constant *ased on the developmental mode
S organic Q .A
S semi Q 1.
S em*edded Q 1.N
– #iJe Q 3s #ource Hines o' Code !;#HOC$
– E(ponent is constant given mode
S organic Q 3.4
S semi Q 3.3
S em*edded Q 3.
B i M d l
-
8/9/2019 Estimating Projects (PMP)
39/112
Basic Model
chedule Equation (COCOMO 8)
"DEF !"inimum time to develop$ Q.4R!E''ort$e(ponent
.4 is constant 'or all modes
E(ponent *ased on mode – organic Q .1M
– semi Q .14
– em*edded Q .1
6ote that "DEF does not depend on num*er o'
people assigned.
-
8/9/2019 Estimating Projects (PMP)
40/112
Counting;#HOC
-
8/9/2019 Estimating Projects (PMP)
41/112
#till how to estimate ;#HOC
9et %e(perts+ to provide estimates. – @etter i' estimates are *ased on so'tware re
-
8/9/2019 Estimating Projects (PMP)
42/112
#ome *eginners guidelines
S good estimate is de'enda*le i' the siJe o' the product is identi'ied inreasona*le terms that ma&e sense 'or the application. >ithout seriouse(perience, estimating Hines o' Code 'or a su*stantial application can *e meaningless, so stic& to what ma&es sense. @ottom up is *etter 'or *eginners.
S n estimate is de'enda*le i' it is clear how it was achieved. 8' the
estimate simply came 'rom #>9, or whatever sugar0coated term youwould li&e to give 'or an unde'enda*le num*er$, that in'ormation itsel'gives us an understanding o' the legitimacy we can apply to thenum*ers, and we should e(pect a large uncertainty.
S 8' it was achieved *y ta&ing the *usiness targets and simply suggestingwe can 'it all the wor& into the availa*le time, we can send the
estimator *ac& to the drawing *oard.S good estimate allows all the sta&eholders to understand what went
into the estimate, and agree on the uncertainty associated with thatestimate. >ith that, realistic decisions can *e made. 8' there is any *lac& magic along the way, or i' there is a suggestion that you canaccurately predict, you are in 'or trou*le.
-
8/9/2019 Estimating Projects (PMP)
43/112
@asic COCO"O assumptions
8mplicit productivity estimate Organic mode Q 3N HOC/day
Em*edded mode Q A HOC/day
ime re
-
8/9/2019 Estimating Projects (PMP)
44/112
8ntermediate COCO"O
a&es *asic COCO"O as starting point 8denti'ies personnel, product, computer and
project attri*utes which a''ect cost and
development time. "ultiplies *asic cost *y attri*ute multipliers
which may increase or decrease costs
-
8/9/2019 Estimating Projects (PMP)
45/112
ttri*utes
Personnel attri*utes nalyst capa*ility
Firtual machine e(perience
Programmer capa*ility
Programming language e(perience pplication e(perience
Product attri*utes elia*ility re
-
8/9/2019 Estimating Projects (PMP)
46/112
"ore ttri*utes
Computer attri*utes E(ecution time constraints
#torage constraints
Firtual machine volatility
Computer turnaround time
Project attri*utes
"odern programming practices
#o'tware tools
e
-
8/9/2019 Estimating Projects (PMP)
47/112
"ntermediate Model
Effort Equation !COCOMO 8)
E''ortQER!siJe$e(ponent
– E !e''ort adjustment 'actor$ is the product o' e''ortmultipliers corresponding to each cost driver rating
– is a constant *ased on the developmental modeS organic Q 1.
S semi Q 1.
Sem*edded Q .M
– #iJe Q 3s Delivered #ource 8nstruction !;D#8$
– E(ponent is constant given mode
-
8/9/2019 Estimating Projects (PMP)
48/112
COCOMO COST DRIVERSRatings range: VL, L, N, H, VH, XH
RELY Reliability PCAP Programmer Capability
DATA Database Size AEXP Applications Experience
CPLX Complexity PEXP Platform Experience
RUSE Required Reusability LTEX Language and Tool Experience
DOCU Documentation PCON Personnel ContinuityTIME Execution Time Constant TOOL se of Soft!are Tools
STOR "ain Storage Constraint SITE "ultisite De#elopment
PVOL Platform $olatility SCED Required Sc%edule
ACAP Analyst Capability
Gone:VIRT,TURN,MDDP,VEXP New: RUSE, DOCU, PVOL, PCON
E l COCOMO
-
8/9/2019 Estimating Projects (PMP)
49/112
E#ample COCOMO$%' and $OO d*ustments
COCO"O M3 ating H 6 7 F7
COCO"O "ultiplier:
CPHV 3. 3.34 3.1 3.1
COCO" "ultiplier:
OOH 3.A 3.3 3.
-
8/9/2019 Estimating Projects (PMP)
50/112
"ntermediate Model E#ample
+i,hly comple# intermediate or,anic pro*ect-ith hi,h tool use.
Estimate 1 D#8s
CPHV Q 3.1 !F7$OOH Q 3.3 !H$
E Q 3.1R3.3 Q 3.A1
E''ort Q 3.A1 R 1. R 13./4 Q 3A.4 man months"DEF Q .4 R 3A.4/.1M Q N.L months
#ta'' re
-
8/9/2019 Estimating Projects (PMP)
51/112
E(ample with %options+
Em*edded so'tware system on microcomputer hardware. @asic COCO"O predicts a A4 person0month e''ort
re
-
8/9/2019 Estimating Projects (PMP)
52/112
Option: 7ardware 8nvestment
Processor capacity and store dou*led 8"E and #O multipliers Q 3
E(tra investment o' W1, re
-
8/9/2019 Estimating Projects (PMP)
53/112
Cocomo in practice !ML projects$ Canned Hanguage "ultipliers were accurate – can
*e tuned/cali*rated 'or a company.
"odeling personnel 'actors, and creatingoptions/scenarios can *e a valua*le tool.
ssumptions and is&s should *e 'actored into the
model
ool Demonstration
-
8/9/2019 Estimating Projects (PMP)
54/112
ool Demonstration!we* *ased version$
http://sunset.usc.edu/research/COCO"O88/e(pertXcocomo/e(pertXcocomo.html
http://sunset.usc.edu/research/COCO"O88/e(pertXcocomo/e(pertXcocomo.html
8ts ree and easy to use. #o )se it
Iou can also get a standalone win1 version
-
8/9/2019 Estimating Projects (PMP)
55/112
ree CoCo"o ools
COCO"O 88 0 his program is an implementation o' the 3LM3 COCO"O 8ntermediate"odel. 8t predicts so'tware development e''ort, schedule and e''ort distri*ution. 8t is availa*le'or #unO# or "# >indows and can *e downloaded 'or 'ree. he COCO"O 88 model is anupdate o' COCO"O 3LM3 to address so'tware development practiceGs in the 3LLGs and Gs.
evised 8ntermediate COCO"O !EF8C$ is availa*le 'or downloading 'rom the )#ir orce Cost nalysis gency !C$.
") COCO"O is an on0line version o' COCO"O 'rom e(as Y" )niversity. gile COCO"O 0 he Center continues to do research on gile COCO"O 88 a cost
estimation tool that is *ased on COCO"O 88. 8t uses analogy *ased estimation to generateaccurate results while *eing very simple to use and easy to learn.
COCO# 0 he )#C Center is actively conducting research in the area o' o''0the0shel'so'tware integration cost modelling. Our new cost model COCO# !COnstructive CO#$,
'ocuses on estimating the cost, e''ort, and schedule associated with using commercial o''0the0shel' !CO#$ components in a so'tware development project. hough still e(perimental,COCO# is a model complementary to COCO"O 88, capturing costs that traditionally have *een outside the scope o' COCO"O. 8deally, once 'ully 'ormulated and validated, COCO#will *e used in concert with COCO"O to provide a complete so'tware development cost
estimation solution.
-
8/9/2019 Estimating Projects (PMP)
56/112
esources
#o'tware Cost Estimating >ith COCO"O 88 – @oehm,*ts, @rown, Chulani, Clar&, 7orowitJ, "adachy, ei'er, #teece 8#@6:0310NNL0
COCO"O 88 0 http://sunset.usc.edu/research/COCO"O88/
6# Cost Estimating >e* #ite 0 http://www3.jsc.nasa.gov/*u/COCO"O.html
Hongstreet Consulting 0 http://www.i'pug.com/'reemanual.htm
@arry @oehm @io 0 http://sunset.usc.edu/esearchX9roup/*arry.html
-
8/9/2019 Estimating Projects (PMP)
57/112
Conclusions
E(perience shows that seat0o'0the0pants estimates o' costand schedule are 420 42 o' the actual time/cost. hisamount o' error is enough to get a manager 'ired in manycompanies.
Hac& o' hands0on e(perience is associated with massivecost overruns.
echnical ris&s are associated with massive costoverruns.
Do your estimates care'ully ;eep them up0to0date
"anage to them
-
8/9/2019 Estimating Projects (PMP)
58/112
Project #cheduling/Planning
COCO"O his high0level resource estimation. oactually do project need more re'ined plan.
-
8/9/2019 Estimating Projects (PMP)
59/112
-
8/9/2019 Estimating Projects (PMP)
60/112
Estimation
7istory is your *est ally – Especially when using HOC, 'unction points, etc.
)se multiple methods i' possi*le
– his reduces your ris& – 8' using %e(perts+, use two
9et *uy0in
emem*er: its an iterative process
;now your %presentation+ techni
-
8/9/2019 Estimating Projects (PMP)
61/112
Estimation
@ottom0up
S "ore wor& to create *ut more accurate
S O'ten with E(pert Budgment at the tas& level
op0downS
)sed in the earliest phasesS )sually with/as nalogy or E(pert Budgment
nalogyS Comparison with previous project: 'ormal or in'ormal
E(pert BudgmentS Fia sta'' mem*ers who will do the wor& S "ost common techni
-
8/9/2019 Estimating Projects (PMP)
62/112
Estimation
Parametric "ethods – ;now the trade0o''s o': HOC Y unction Points
unction Points – @ene'it: relatively independent o' the technology used to
develop the system – >e will re0visit this *rie'ly later in semester !when discussing
%so'tware metrics+$
– Fariants: >E@"O !no need to &now this 'or e(am$
e0)se Estimation – #ee -#P" outline
) Calgary
-
8/9/2019 Estimating Projects (PMP)
63/112
Iour Early Phase Processes
8nitial Planning:
S >hy – #O>, Charter
S >hat/7ow !partial/3st pass$ – >@#
– Other planning documents[ #o'tware Development Plan, is& "gmt., C'g. "gmt.
EstimatingS #iJe !
-
8/9/2019 Estimating Projects (PMP)
64/112
i l
-
8/9/2019 Estimating Projects (PMP)
65/112
erminology
Precedence:S tas& that must occur *e'ore another is said to have
precedence o' the other
Concurrence:S Concurrent tas&s are those that can occur at the same time
!in parallel$
Heads Y Hag ime
S Delays *etween activitiesS ime re
-
8/9/2019 Estimating Projects (PMP)
66/112
erminology
"ilestones – 7ave a duration o' Jero
– 8denti'y critical points in your schedule
– #hown as inverted triangle or a diamond – O'ten used at %review+ or %delivery+ times
S Or at end or *eginning o' phases
S E(: #o'tware e
-
8/9/2019 Estimating Projects (PMP)
67/112
erminology
E(ample"ilestones
i l
-
8/9/2019 Estimating Projects (PMP)
68/112
erminology
#lac& Y loat – loat Y #lac&: synonymous terms
– ree #lac& – #lac& an activity has *e'ore it delays ne(t tas&
– otal #lac& – #lac& an activity has *e'ore delaying whole project
– #lac& ime # Q H – E
S E Q earliest time an event can ta&e place
S H Q latest date it can occur w/o e(tending projects
completion date
# h d li h i
-
8/9/2019 Estimating Projects (PMP)
69/112
#cheduling echni
-
8/9/2019 Estimating Projects (PMP)
70/112
6etwor& Diagrams
Developed in the 3L4s graphical representation o' the tas&s necessary
to complete a project
FisualiJes the 'low o' tas&s Y relationships
" th ti l l i
-
8/9/2019 Estimating Projects (PMP)
71/112
"athematical nalysis
PE – Program Evaluation and eview echni
-
8/9/2019 Estimating Projects (PMP)
72/112
"#0Project E(ample
6 t & Di
-
8/9/2019 Estimating Projects (PMP)
73/112
6etwor& Diagrams
wo classic 'ormats – O: ctivity on rrow
– O6: ctivity on 6ode
Each tas& la*eled withS 8denti'ier !usually a letter/code$
S Duration !in std. unit li&e days$
here are other variations o' la*eling here is 3 start Y 3 end event
ime goes 'rom le't to right
6 d t
-
8/9/2019 Estimating Projects (PMP)
74/112
6ode ormats
6 t & Di
-
8/9/2019 Estimating Projects (PMP)
75/112
6etwor& Diagrams
O consists o' S Circles representing Events
– #uch as Zstart or Zend o' a given tas&
S Hines representing as&s
– hing *eing done Z@uild )8S a.&.a. rrow Diagramming "ethod !D"$
O6S as&s on 6odes
– 6odes can *e circles or rectangles !usually latter$ – as& in'ormation written on node
S rrows are dependencies *etween tas&s
S a.&.a. Precedence Diagramming "ethod !PD"$
C iti l P th
http://sunset.usc.edu/research/COCOMOII/expert_cocomo/expert_cocomo2000.html
-
8/9/2019 Estimating Projects (PMP)
76/112
Critical Path
%he speci'ic set o' se
-
8/9/2019 Estimating Projects (PMP)
77/112
Critical Path E(ample
CP"
-
8/9/2019 Estimating Projects (PMP)
78/112
CP"
Critical Path "ethod – he process 'or determining and optimiJing the
critical path
6on0CP tas&s can start earlier or later w/oimpacting completion date
6ote: Critical Path may change to another as you
shorten the current #hould *e done in conjunction with the you Y the
'unctional manager
A as& Dependency ypes
-
8/9/2019 Estimating Projects (PMP)
79/112
A as& Dependency ypes
Mandatory Dependencies
S %7ard logic+ dependencies
S 6ature o' the wor& dictates an ordering
S E(: Coding has to precede testing
S E(: )8 design precedes )8 implementation
/iscretionary DependenciesS %#o't logic+ dependencies
S Determined *y the project management teamS Process0driven
S E(: Discretionary order o' creating certain modules
A as& Dependency ypes
-
8/9/2019 Estimating Projects (PMP)
80/112
A as& Dependency ypes
E#ternal Dependencies
S Outside o' the project itsel'
S E(: elease o' 1rd party product? contract signo''
S E(: sta&eholders, suppliers, I;, year end
esource DependenciesS wo tas& rely on the same resource
S E(: Iou have only one D@ *ut multiple D@ tas&s
as& Dependency elationships
-
8/9/2019 Estimating Projects (PMP)
81/112
as& Dependency elationships
inish0to0#tart !#$ – @ cannot start till 'inishes
– : Construct 'ence? @: Paint ence
#tart0to0#tart !##$ – @ cannot start till starts
– : Pour 'oundation? @: Hevel concrete
inish0to0inish !$ – @ cannot 'inish till 'inishes
– : dd wiring? @: 8nspect electrical
#tart0to0inish !#$ – @ cannot 'inish till starts !rare$
E(ample #tep 3
-
8/9/2019 Estimating Projects (PMP)
82/112
E(ample #tep 3
"ilestone Chart
-
8/9/2019 Estimating Projects (PMP)
83/112
"ilestone Chart
#ometimes called a %*ar charts+
#imple 9antt chart
– Either showing just highest summary *ars
– Or milestones only
@ar Chart
-
8/9/2019 Estimating Projects (PMP)
84/112
@ar Chart
9antt Chart
http://pages.cpsc.ucalgary.ca/~hongd/SENG/621/report2.htmlhttp://misc/QSPM/Chapter_10.ppt#COCOMO%2081%20%20II%20Converting%20Size%20Estimateshttp://www.stsc.hill.af.mil/crosstalk/2002/jun/reifer.asphttp://fpex.doc/
-
8/9/2019 Estimating Projects (PMP)
85/112
9antt Chart
9antt Chart
-
8/9/2019 Estimating Projects (PMP)
86/112
9antt Chart
Disadvantages – Does not show interdependencies well
– Does not uncertainty o' a given activity !as does PE$
dvantages
– Easily understood
– Easily created and maintained
6ote: #o'tware now shows dependencies among tas&s in
9antt charts – 8n the %old+ days 9antt charts did not show these dependencies,
*ar charts typically do not. "odern 9antt charts do show them.
educing Project Duration
-
8/9/2019 Estimating Projects (PMP)
87/112
educing Project Duration
7ow can you shorten the schedule=
Fia
– educing scope !or
-
8/9/2019 Estimating Projects (PMP)
88/112
Compression echni
-
8/9/2019 Estimating Projects (PMP)
89/112
"ythical "an "onth
-
8/9/2019 Estimating Projects (PMP)
90/112
"ythical "an0"onth
%Cost varies as product o' men and months, progress does not.+
%7ence the man0month as a unit 'or measuring the
siJe o' jo* is a dangerous and deceptive myth+ eliance on hunches and guesses
– >hat is Zgutless estimating=
he myth o' additional manpower – @roo&s Haw
– % Adding manpower to a late project makes it later +
"ythical "an0"onth
-
8/9/2019 Estimating Projects (PMP)
91/112
"ythical "an0"onth
Optimism – %ll programmers are optimists+
– 3st 'alse assumption: %all will go well+ or %each tas& ta&es only
as long as it Zought to ta&e+
– he i(: Consider the larger pro*a*ilities Cost !overhead$ o' communication !and training$
S 7is 'ormula: n!n03$/
– 7ow long does a 3 month project ta&e=
– 3 person: 3 month
– persons Q months ! man0months e(tra$
– 1 persons Q 4 months !e man0months e(tra$
– i(: dont assume adding people will solve the pro*lem
-
8/9/2019 Estimating Projects (PMP)
92/112
"ythical "an0"onth
-
8/9/2019 Estimating Projects (PMP)
93/112
"ythical "an0"onth
-: %7ow does a project get to *e a year late+= – : %One day at a time+
#tudies
– Each tas&: twice as long as estimated – Only 42 o' wor& wee& was programming
i(es
– 6o %'uJJy+ milestones !get the %true+ status$ – educe the role o' con'lict
– 8denti'y the %true status+
Planning and #cheduling ools
-
8/9/2019 Estimating Projects (PMP)
94/112
Planning and #cheduling ools
@ig variety o' products, 'rom simple/single project toenterprise resource management
#ee 'or instance: – http://www.colum*ia.edu/jm3/\Other#o'tware
– http://www.startwright.com/project3.htm #ome 'ree tools to play with:
– 9anttproject !java *ased$
– #ome tools on linu(
ree evaluation – 8ntellysis project des&top
– astrac& #chedule
"#0Project
-
8/9/2019 Estimating Projects (PMP)
95/112
"# Project
"id0mar&et leader 7as appro(. 42 overall mar&et share
0M2 "#0Project users never used automated project
trac&ing prior !a %'irst+ tool$
6ot a mid/high0end tool 'or EP" !Enterprise Project
"gmt.$
>hile in this class you can get a 'ree copy though "#
cademic lliance – email me i' interested.
Project Pros
-
8/9/2019 Estimating Projects (PMP)
96/112
Project Pros
Easy outlining o' tas&s including support 'or hierarchical>or& *rea&down structures !>@#$
esource management
ccuracy: *aseline vs. actual? various calculations
Easy charting and graphics
Cost management
Capture historical data
-
8/9/2019 Estimating Projects (PMP)
97/112
-
8/9/2019 Estimating Projects (PMP)
98/112
he "#0Project Process
-
8/9/2019 Estimating Projects (PMP)
99/112
he "# Project Process
"ove >@# into a Project outline !in as& #heet$
dd resources !team mem*ers or roles$
dd costs 'or resources
ssign resources to tas&s Esta*lish dependencies
e'ine and optimiJe
Create baseline
Track progress (enter actuals, etc.)
Create Iour Project
-
8/9/2019 Estimating Projects (PMP)
100/112
Create Iour Project
ile/6ew #etup start date
#etup calendar
– "enu: Project/Project 8n'ormation
– O'ten le't with de'ault settings
– 7ours, holidays
Enter >@#
-
8/9/2019 Estimating Projects (PMP)
101/112
Enter >@#
Outlining
#u*0tas&s and summary tas&s
Do not enter start/end dates 'or each
Bust start with as& 6ame and Duration 'or each )se 8ndent/Outdent *uttons to de'ine summary
tas&s and su*tas&s
Iou can enter speci'ic #tart/End dates *ut dontmost o' the time
Esta*lish Durations
-
8/9/2019 Estimating Projects (PMP)
102/112
Esta*lish Durations
;now the a**reviations – h/d/w/m
– D is de'ault
Can use partial
– .4d is a hal'0day tas&
Elapsed durations
Estimated durations
– Put a Z= a'ter duration
D)8O6 Q >O; !*ut initial de'ault is that it is$
dd esources
-
8/9/2019 Estimating Projects (PMP)
103/112
dd esources
>or& esources – People
S !can *e 2 o' a person. ll resources split e
-
8/9/2019 Estimating Projects (PMP)
104/112
esource #heet
Can add new resources here – Or directly in the tas& entry sheetS @eware o' mis0spellings !Project will create near0duplicates$
#etup costs
– #uch as annual salary !put Zyr a'ter Z#td. ate$
E''ort0Driven #cheduling
-
8/9/2019 Estimating Projects (PMP)
105/112
o t ve #c edu g
"#0Project de'ault Duration R )nits Q >or&
S Duration Q >or& / )nits !D Q >/)$
S >or& Q Duration R )nits !> Q DR)$
S )nits Q >or& / Duration !) Q >/D$ dding more resources to a tas& shortens duration
Can *e changed on a per0tas& *asisS 8n the advanced ta* o' as& 8n'ormation dialog *o(
S as& ype setting
@eware the "ythical "an0monthS 9ood 'or laying *ric&s, not always so 'or so'tware development
Hin& as&s
-
8/9/2019 Estimating Projects (PMP)
106/112
On tool*ar: Hin& Y )nlin& *uttons – 9ood 'or many at once
Or via 9antt chart
– Drag 'rom one tas& to another
"ilestones
-
8/9/2019 Estimating Projects (PMP)
107/112
_ero duration tas&s 8nsert tas& Znormally *ut put in duration
Common 'or reports, unctional module/test
completions, etc.
– 9ood #E practice says milestones ")# *e
measura*le and well spread through the project.
"a&e ssignments
-
8/9/2019 Estimating Projects (PMP)
108/112
g
pproach 3. )sing as& #heet – )sing esource 6ames column – Iou can create new ones *y just typing0in here
. )sing ssign esources dialog *o(
– 9ood 'or multiple resources – 7ighlight tas&, ools/esources or tool*ar *utton
1. )sing as& 8n'ormation dialog – esources ta*
A. as& Entry view – Fiew/"ore Fiews/as& Entry
– Or as& Entry view on esource "gmt. tool*ar
#ave @aseline
-
8/9/2019 Estimating Projects (PMP)
109/112
#aves all current in'ormation a*out your project – Dates, resource assignments, durations, costs
-
8/9/2019 Estimating Projects (PMP)
110/112
Project
-
8/9/2019 Estimating Projects (PMP)
111/112
j
1 Editions: #tandard, Pro'essional, #erver "# Project #erver
– !@s never used server or newer$ @ased on docs.
S )pgrade o' old %Project Central+
S 8ncludes %Project >e* ccess+, we*0*ased )8 !partial$S >or&group and resource noti'ication 'eatures
S e
-
8/9/2019 Estimating Projects (PMP)
112/112
j
"#0Project Pro'essional – %@uild eam+ 'eatureS #&ills0*ased resource matching
– esource Pools: with s&ill set trac&ing
– esource #u*stitution >iJard %Project 9uide+ 'eature
– CustomiJa*le %process component+