software estimaton techniques
TRANSCRIPT
-
8/17/2019 Software estimaton techniques
1/17
Estimation for Software Projects
-
8/17/2019 Software estimaton techniques
2/17
Software Project Planning
• Estimation
• Scheduling
• Risk Analysis
• Quality Management Planning
• Change Management Planning
2
-
8/17/2019 Software estimaton techniques
3/17
3
Estimation
• Estimation determines how much money effort resources and time itwill take to !uild a s"ecific system or "roduct
• #he software team first estimates
– #he work to !e done
– #he resources re$uired – #he time that will ela"se from start to finish
• #hen they esta!lish a "roject schedule that
– %efines tasks and milestones
– &dentifies who is res"onsi!le for conducting each task
– S"ecifies the inter'task de"endencies
-
8/17/2019 Software estimaton techniques
4/17
(
Categories of Resources
Human Resources- )um!er re$uired- Skills re$uired- *eogra"hical location
Development Environment- Software tools- Com"uter hardware- )etwork resources
Reusable Software Components- +ff'the'shelf com"onents- ,ull'e-"erience com"onents- Partial'e-"erience com"onents- )ew com"onents
#he
Project
-
8/17/2019 Software estimaton techniques
5/17
Estimation of Project Cost and Effort
-
8/17/2019 Software estimaton techniques
6/17
.
Project Estimation +"tions
• +"tions for achie/ing relia!le cost and effort estimates
01 %elay estimation until late in the "roject we should !e a!le toachie/e 04 accurate estimates after the "roject is com"lete1
21 5ase estimates on similar "rojects that ha/e already !eencom"leted
31 6se relati/ely sim"le decom"osition techni$ues to generate "roject cost and effort estimates
(1 6se one or more em"irical estimation models for software costand effort estimation
• +"tion 70 is not "ractical !ut results in good num!ers
• +"tion 72 can work reasona!ly well !ut it also relies on other "roject influences !eing roughly e$ui/alent
• +"tions 73 and 7( can !e done in tandem to cross check each other
-
8/17/2019 Software estimaton techniques
7/17
8
Project Estimation A""roaches
• %ecom"osition techni$ues
– #hese take a 9di/ide and con$uer9 a""roach
– Cost and effort estimation are "erformed in a ste"wise fashion
!y !reaking down a "roject into major functions and relatedsoftware engineering acti/ities
• Em"irical estimation models
– +ffer a "otentially /alua!le estimation a""roach if the historical
data used to seed the estimate is good
-
8/17/2019 Software estimaton techniques
8/17
:
%ecom"osition #echni$ues
• 5efore an estimate can !e made and decom"osition techni$uesa""lied the "lanner must
– 6nderstand the sco"e of the software to !e !uilt
–
*enerate an estimate of the software;s si
-
8/17/2019 Software estimaton techniques
9/17
=
A""roaches to Software Si
-
8/17/2019 Software estimaton techniques
10/17
0
Pro!lem'5ased Estimation
01 Start with a !ounded statement of sco"e
21 %ecom"ose the software into "ro!lem functions that can each !eestimated indi/idually
31 Com"ute an >+C or ,P /alue for each function
(1 %eri/e cost or effort estimates !y a""lying the >+C or ,P /alues toyour !aseline "roducti/ity metrics e?g? >+C@"erson'month or,P@"erson'month1
1 Com!ine function estimates to "roduce an o/erall estimate for theentire "roject
.1 #hen the e-"ected si
-
8/17/2019 Software estimaton techniques
11/17
00
Process'5ased Estimation
01 &dentify the set of functions that the software needs to "erform aso!tained from the "roject sco"e
21 &dentify the series of framework acti/ities that need to !e "erformed
for each function31 Estimate the effort in "erson months1 that will !e re$uired toaccom"lish each software "rocess acti/ity for each function
(1 A""ly a/erage la!or rates i?e? cost@unit effort1 to the effortestimated for each "rocess acti/ity
1 Com"ute the total cost and effort for each function and each
framework acti/ity.1 Com"are the resulting /alues to those o!tained !y way of the >+Cand ,P estimates
#his is the most commonly used of the two estimation techni$ues "ro!lem and "rocess1
-
8/17/2019 Software estimaton techniques
12/17
02
Reconciling Estimates
• #he results gathered from the /arious estimation techni$ues must !ereconciled to "roduce a single estimate of effort "roject duration andcost
• &f widely di/ergent estimates occur further in/estigation is needed – #he sco"e of the "roject is not ade$uately understood or has !een
misinter"reted !y the "lanner
– Producti/ity data used for "ro!lem'!ased estimation techni$ues isina""ro"riate for the a""lication o!solete i?e? outdated for the currentorgani
-
8/17/2019 Software estimaton techniques
13/17
03
Em"irical Estimation Models
• Estimation models for com"uter software use em"irically deri/ed
formulas to "redict effort as a function of >+C or ,P
• Resultant /alues com"uted for >+C or ,P are entered into an
estimation model• #he em"irical data for these models are deri/ed from a limited sam"le
of "rojects
-
8/17/2019 Software estimaton techniques
14/17
0(
C+C+M+•
Stands for C+nstructi/e C+st M+del• &ntroduced !y 5arry 5oehm in 0=:0 in his !ook Software
Engineering EconomicsD
• 5ecame one of the well'known and widely'used estimation models inthe industry
•
&t has e/ol/ed into a more com"rehensi/e estimation model calledC+C+M+ &&
• C+C+M+ && is actually a hierarchy of three estimation models
• As with all estimation models it re$uires si
-
8/17/2019 Software estimaton techniques
15/17
0
C+C+M+ Model
• Application composition model ' 6sed during the early stages ofsoftware engineering when the following are im"ortant – Prototy"ing of user interfaces
– Consideration of software and system interaction
– Assessment of "erformance
–
E/aluation of technology maturity• Early design stage model 6sed once re$uirements ha/e !een
sta!ili
-
8/17/2019 Software estimaton techniques
16/17
0.
Make@5uy %ecision
• &t is often more cost effecti/e to ac$uire rather than de/elo" software
• Managers ha/e many ac$uisition o"tions – Software may !e "urchased or licensed1 off the shelf
– ,ull'e-"erienceD or "artial'e-"erienceD software com"onents may !e
ac$uired and integrated to meet s"ecific needs – Software may !e custom !uilt !y an outside contractor to meet the
"urchaser;s s"ecifications
• #he make@!uy decision can !e made !ased on the following conditions – Fill the software "roduct !e a/aila!le sooner than internally de/elo"ed
softwareG
–Fill the cost of ac$uisition "lus the cost of customi
-
8/17/2019 Software estimaton techniques
17/17
#HA)I J+6
08